┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/views/tooltips
diff options
context:
space:
mode:
Diffstat (limited to 'src/views/tooltips')
-rw-r--r--src/views/tooltips/tooltipmanager.cpp13
-rw-r--r--src/views/tooltips/tooltipmanager.h1
2 files changed, 12 insertions, 2 deletions
diff --git a/src/views/tooltips/tooltipmanager.cpp b/src/views/tooltips/tooltipmanager.cpp
index a2b717b91..09e97861a 100644
--- a/src/views/tooltips/tooltipmanager.cpp
+++ b/src/views/tooltips/tooltipmanager.cpp
@@ -43,6 +43,7 @@ ToolTipManager::ToolTipManager(QAbstractItemView* parent,
m_fileMetaDataToolTip(0),
m_toolTipRequested(false),
m_metaDataRequested(false),
+ m_appliedWaitCursor(false),
m_item(),
m_itemRect()
{
@@ -94,7 +95,10 @@ ToolTipManager::~ToolTipManager()
void ToolTipManager::hideToolTip()
{
- QApplication::restoreOverrideCursor();
+ if (m_appliedWaitCursor) {
+ QApplication::restoreOverrideCursor();
+ m_appliedWaitCursor = false;
+ }
m_toolTipRequested = false;
m_metaDataRequested = false;
@@ -219,14 +223,19 @@ void ToolTipManager::slotMetaDataRequestFinished()
void ToolTipManager::showToolTip()
{
Q_ASSERT(m_toolTipRequested);
- QApplication::restoreOverrideCursor();
+ if (m_appliedWaitCursor) {
+ QApplication::restoreOverrideCursor();
+ m_appliedWaitCursor = false;
+ }
if (QApplication::mouseButtons() & Qt::LeftButton) {
return;
}
if (m_fileMetaDataToolTip->preview().isNull() || m_metaDataRequested) {
+ Q_ASSERT(!m_appliedWaitCursor);
QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
+ m_appliedWaitCursor = true;
return;
}
diff --git a/src/views/tooltips/tooltipmanager.h b/src/views/tooltips/tooltipmanager.h
index dffd18868..f8bcd3dfd 100644
--- a/src/views/tooltips/tooltipmanager.h
+++ b/src/views/tooltips/tooltipmanager.h
@@ -84,6 +84,7 @@ private:
bool m_toolTipRequested;
bool m_metaDataRequested;
+ bool m_appliedWaitCursor;
KFileItem m_item;
QRect m_itemRect;
};