diff options
| author | Piotr Henryk Dabrowski <[email protected]> | 2019-08-03 15:28:35 +0200 |
|---|---|---|
| committer | Elvis Angelaccio <[email protected]> | 2019-08-03 15:29:26 +0200 |
| commit | ba92917ac2f32e6fa7c8e5c3ecbd6a36b2e79eb0 (patch) | |
| tree | 98a6fb06ef7222b89843721fea686922de22d906 /src/views/tooltips | |
| parent | 89239912d842d8b295360994b2c27c305cced30e (diff) | |
[Dolphin] Hide tooltip instantly on key press
Summary:
Instantly hide tooltip shown over an element when a key is pressed.
Currently, when pressing an alphanum key to select a different file,
the tooltip continues to cover much of the window - often hiding that newly selected file from view.
Reviewers: #dolphin, ngraham, elvisangelaccio
Reviewed By: #dolphin, elvisangelaccio
Subscribers: broulik, elvisangelaccio, kfm-devel, pdabrowski
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D22512
Diffstat (limited to 'src/views/tooltips')
| -rw-r--r-- | src/views/tooltips/tooltipmanager.cpp | 11 | ||||
| -rw-r--r-- | src/views/tooltips/tooltipmanager.h | 7 |
2 files changed, 15 insertions, 3 deletions
diff --git a/src/views/tooltips/tooltipmanager.cpp b/src/views/tooltips/tooltipmanager.cpp index aae97458c..eaa785987 100644 --- a/src/views/tooltips/tooltipmanager.cpp +++ b/src/views/tooltips/tooltipmanager.cpp @@ -104,7 +104,7 @@ void ToolTipManager::showToolTip(const KFileItem& item, const QRectF& itemRect, Q_ASSERT(!m_metaDataRequested); } -void ToolTipManager::hideToolTip() +void ToolTipManager::hideToolTip(const HideBehavior behavior) { if (m_appliedWaitCursor) { QApplication::restoreOverrideCursor(); @@ -116,7 +116,14 @@ void ToolTipManager::hideToolTip() m_showToolTipTimer->stop(); m_contentRetrievalTimer->stop(); if (m_tooltipWidget) { - m_tooltipWidget->hideLater(); + switch (behavior) { + case HideBehavior::Instantly: + m_tooltipWidget->hide(); + break; + case HideBehavior::Later: + m_tooltipWidget->hideLater(); + break; + } } } diff --git a/src/views/tooltips/tooltipmanager.h b/src/views/tooltips/tooltipmanager.h index 10f88ad76..c09a40d31 100644 --- a/src/views/tooltips/tooltipmanager.h +++ b/src/views/tooltips/tooltipmanager.h @@ -42,6 +42,11 @@ class ToolTipManager : public QObject Q_OBJECT public: + enum class HideBehavior { + Instantly, + Later + }; + explicit ToolTipManager(QWidget* parent); ~ToolTipManager() override; @@ -56,7 +61,7 @@ public: /** * Hides the currently shown tooltip. */ - void hideToolTip(); + void hideToolTip(const HideBehavior behavior = HideBehavior::Later); signals: /** |
