X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/e847f4fec300b8a80679909c5d6a47ae21452732..6861a876830e301878b65cb4e4574bfda4c73340:/src/tooltipmanager.cpp diff --git a/src/tooltipmanager.cpp b/src/tooltipmanager.cpp index c13398016..5bb1e1a32 100644 --- a/src/tooltipmanager.cpp +++ b/src/tooltipmanager.cpp @@ -21,11 +21,15 @@ #include "dolphinmodel.h" #include "dolphinsortfilterproxymodel.h" -#include "ktooltip.h" -#include "kicon.h" + +#include +#include +#include #include +K_GLOBAL_STATIC(KFormattedBalloonTipDelegate, g_delegate) + ToolTipManager::ToolTipManager(QAbstractItemView* parent, DolphinSortFilterProxyModel* model) : QObject(parent), @@ -34,10 +38,9 @@ ToolTipManager::ToolTipManager(QAbstractItemView* parent, m_proxyModel(model), m_timer(0), m_item(), - m_pos(), - m_delegate() + m_pos() { - KToolTip::setToolTipDelegate(&m_delegate); + KToolTip::setToolTipDelegate(g_delegate); m_dolphinModel = static_cast(m_proxyModel->sourceModel()); connect(parent, SIGNAL(entered(const QModelIndex&)), @@ -73,15 +76,19 @@ bool ToolTipManager::eventFilter(QObject* watched, QEvent* event) void ToolTipManager::requestToolTip(const QModelIndex& index) { - KToolTip::hideTip(); + if (index.column() == DolphinModel::Name) { + KToolTip::hideTip(); - const QRect rect = m_view->visualRect(index); - m_pos = m_view->viewport()->mapToGlobal(rect.bottomRight()); + const QRect rect = m_view->visualRect(index); + m_pos = m_view->viewport()->mapToGlobal(rect.bottomRight()); - const QModelIndex dirIndex = m_proxyModel->mapToSource(index); - m_item = m_dolphinModel->itemForIndex(dirIndex); + const QModelIndex dirIndex = m_proxyModel->mapToSource(index); + m_item = m_dolphinModel->itemForIndex(dirIndex); - m_timer->start(500); + m_timer->start(500); + } else { + hideToolTip(); + } } void ToolTipManager::hideToolTip()