]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinviewcontainer.h
Make sure that KItemListSizeHintResolver is always consistent
[dolphin.git] / src / dolphinviewcontainer.h
index bc58531a2700d6e50a1c32a4afccb77472255eff..e5597ccc6196e78613ccb01de1bd376bc5eef295 100644 (file)
@@ -261,9 +261,21 @@ private slots:
     /**
      * Is connected with the URL navigator and drops the URLs
      * above the destination \a destination.
+     *
+     * Creates a copy of \a event and invokes \a dropUrlsDelayed with a
+     * queued connection.
      */
     void dropUrls(const KUrl& destination, QDropEvent* event);
 
+    /**
+     * Is invoked with a queued connection by \a dropUrls to prevent that the
+     * drop actions are executed in the URL navigator menu's nested event loop,
+     * which might cause a crash. Simply using a queued connection from the URL
+     * navigator to \a dropUrls would not work because the \a event pointer
+     * would be dangling then.
+     */
+    void dropUrlsDelayed();
+
     /**
      * Is invoked when a redirection is done and changes the
      * URL of the URL navigator to \a newUrl without triggering
@@ -330,6 +342,9 @@ private:
     QElapsedTimer m_statusBarTimestamp;  // Time in ms since last update
     bool m_autoGrabFocus;
 
+    KUrl m_dropDestination;
+    QScopedPointer<QDropEvent> m_dropEvent;
+
 #ifdef KActivities_FOUND
 private:
     KActivities::ResourceInstance * m_activityResourceInstance;