From 2a338f2679530493e2f1c255075a09eeac4310a6 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Mon, 12 Jul 2010 14:42:48 +0000 Subject: Based on the recent size hint fixes in KFileMetaDataWidget, the handling of the tooltip size can be simplified. This fixes a possible wrong initial size of the tooltip and a flickering because of a relayout. svn path=/trunk/KDE/kdebase/apps/; revision=1149076 --- src/tooltips/tooltipmanager.h | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'src/tooltips/tooltipmanager.h') diff --git a/src/tooltips/tooltipmanager.h b/src/tooltips/tooltipmanager.h index 9de602269..24e72f28b 100644 --- a/src/tooltips/tooltipmanager.h +++ b/src/tooltips/tooltipmanager.h @@ -66,18 +66,33 @@ private slots: void startPreviewJob(); void setPreviewPix(const KFileItem& item, const QPixmap& pix); void previewFailed(); - + void showToolTip(); + private: - void showToolTip(const QPixmap& pixmap); + void showToolTipDelayed(const QPixmap& pixmap); private: QAbstractItemView* m_view; DolphinModel* m_dolphinModel; DolphinSortFilterProxyModel* m_proxyModel; - QTimer* m_timer; - QTimer* m_previewTimer; + /// Timeout from requesting a tooltip until the tooltip is shown + QTimer* m_prepareToolTipTimer; + + /// Timeout from requesting a tooltip until starting a job to + /// create a preview pixmap. The preview job is started before + /// m_prepareToolTipTimer has been exceeded, to have the preview + /// pixmap ideally before the tooltip will be shown. + QTimer* m_startPreviewJobTimer; + + /// Don't show the tooltip, before the preview has been received. The + /// time indicates the interval, when the check for a received + /// is done. QTimer* m_waitOnPreviewTimer; + + /// The tooltip is shown slightly delayed to prevent a flickering + /// because of layouting the content. + QTimer* m_showToolTipDelayedTimer; FileMetaDataToolTip* m_fileMetaDataToolTip; -- cgit v1.3