]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/views/tooltips/tooltipmanager.cpp
Dolphin: Make Nepomuk Support Optional
[dolphin.git] / src / views / tooltips / tooltipmanager.cpp
index 8b2e98dae3c59c03f65d2216a4af52dc334dcbb5..bd6948363e58c94ce68afacc4ffb94d25b5b809e 100644 (file)
@@ -21,6 +21,7 @@
 
 #include "filemetadatatooltip.h"
 #include <KIcon>
+#include <KIO/JobUiDelegate>
 #include <KIO/PreviewJob>
 
 #include <QApplication>
@@ -103,7 +104,9 @@ void ToolTipManager::hideToolTip()
 
     if (m_fileMetaDataToolTip) {
         m_fileMetaDataToolTip->hide();
-        delete m_fileMetaDataToolTip;
+        // Do not delete the tool tip immediately to prevent crashes when
+        // QCoreApplication tries to deliver an 'Enter' event to it, see bug 310579.
+        m_fileMetaDataToolTip->deleteLater();
         m_fileMetaDataToolTip = 0;
     }
 }
@@ -128,6 +131,9 @@ void ToolTipManager::startContentRetrieval()
 
     KIO::PreviewJob* job = new KIO::PreviewJob(KFileItemList() << m_item, QSize(256, 256));
     job->setIgnoreMaximumSize(m_item.isLocalFile());
+    if (job->ui()) {
+        job->ui()->setWindow(qApp->activeWindow());
+    }
 
     connect(job, SIGNAL(gotPreview(KFileItem,QPixmap)),
             this, SLOT(setPreviewPix(KFileItem,QPixmap)));