┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/views/tooltips/tooltipmanager.cpp20
-rw-r--r--src/views/tooltips/tooltipmanager.h2
2 files changed, 10 insertions, 12 deletions
diff --git a/src/views/tooltips/tooltipmanager.cpp b/src/views/tooltips/tooltipmanager.cpp
index 54af9c94c..e80d45e61 100644
--- a/src/views/tooltips/tooltipmanager.cpp
+++ b/src/views/tooltips/tooltipmanager.cpp
@@ -61,6 +61,13 @@ ToolTipManager::ToolTipManager(QWidget* parent) :
connect(m_contentRetrievalTimer, &QTimer::timeout, this, &ToolTipManager::startContentRetrieval);
Q_ASSERT(m_contentRetrievalTimer->interval() < m_showToolTipTimer->interval());
+
+ // Only start the retrieving of the content, when the mouse has been over this
+ // item for 200 milliseconds. This prevents a lot of useless preview jobs and
+ // meta data retrieval, when passing rapidly over a lot of items.
+ m_fileMetaDataWidget = new DolphinFileMetaDataWidget(parent);
+ connect(m_fileMetaDataWidget, &DolphinFileMetaDataWidget::metaDataRequestFinished, this, &ToolTipManager::slotMetaDataRequestFinished);
+ connect(m_fileMetaDataWidget, &DolphinFileMetaDataWidget::urlActivated, this, &ToolTipManager::urlActivated);
}
ToolTipManager::~ToolTipManager()
@@ -69,7 +76,7 @@ ToolTipManager::~ToolTipManager()
void ToolTipManager::showToolTip(const KFileItem& item, const QRectF& itemRect, QWindow *transientParent)
{
- hideToolTip();
+ hideToolTip(HideBehavior::Instantly);
m_itemRect = itemRect.toRect();
@@ -78,15 +85,6 @@ void ToolTipManager::showToolTip(const KFileItem& item, const QRectF& itemRect,
m_transientParent = transientParent;
- // Only start the retrieving of the content, when the mouse has been over this
- // item for 200 milliseconds. This prevents a lot of useless preview jobs and
- // meta data retrieval, when passing rapidly over a lot of items.
- m_fileMetaDataWidget.reset(new DolphinFileMetaDataWidget());
- connect(m_fileMetaDataWidget.data(), &DolphinFileMetaDataWidget::metaDataRequestFinished,
- this, &ToolTipManager::slotMetaDataRequestFinished);
- connect(m_fileMetaDataWidget.data(), &DolphinFileMetaDataWidget::urlActivated,
- this, &ToolTipManager::urlActivated);
-
m_contentRetrievalTimer->start();
m_showToolTipTimer->start();
m_toolTipRequested = true;
@@ -220,7 +218,7 @@ void ToolTipManager::showToolTip()
if (!m_tooltipWidget) {
m_tooltipWidget.reset(new KToolTipWidget());
}
- m_tooltipWidget->showBelow(m_itemRect, m_fileMetaDataWidget.data(), m_transientParent);
+ m_tooltipWidget->showBelow(m_itemRect, m_fileMetaDataWidget, m_transientParent);
m_toolTipRequested = false;
}
diff --git a/src/views/tooltips/tooltipmanager.h b/src/views/tooltips/tooltipmanager.h
index 3688e815c..066393344 100644
--- a/src/views/tooltips/tooltipmanager.h
+++ b/src/views/tooltips/tooltipmanager.h
@@ -77,7 +77,7 @@ private:
QWindow* m_transientParent;
QScopedPointer<KToolTipWidget> m_tooltipWidget;
- QScopedPointer<DolphinFileMetaDataWidget> m_fileMetaDataWidget;
+ DolphinFileMetaDataWidget *m_fileMetaDataWidget;
bool m_toolTipRequested;
bool m_metaDataRequested;