]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Update the "Paste" action only if it is necessary
authorFrank Reininghaus <frank78ac@googlemail.com>
Wed, 30 Apr 2014 07:34:32 +0000 (09:34 +0200)
committerFrank Reininghaus <frank78ac@googlemail.com>
Wed, 30 Apr 2014 07:34:32 +0000 (09:34 +0200)
Updating this action is only required if the clipboard contents change,
or if the "is writable" state of the current location changes. In all
other cases, an update of this action should be prevented because it
can be very expensive if many files are in the clipboard.

In particular, the update when the selection changes could make
changing the current item in the view very slow.

BUG: 333903
REVIEW: 117782
FIXED-IN: 4.13.1

src/dolphinmainwindow.cpp

index 28169cfb595a64bbe1dcd9630dac49447f95120c..7117c09bad724fc3de0bc43999e45dd5a80ae36e 100644 (file)
@@ -217,6 +217,7 @@ DolphinMainWindow::DolphinMainWindow() :
         toggleSplitView();
     }
     updateEditActions();
+    updatePasteAction();
     updateViewActions();
     updateGoActions();
 
@@ -356,6 +357,7 @@ void DolphinMainWindow::changeUrl(const KUrl& url)
     if (view) {
         view->setUrl(url);
         updateEditActions();
+        updatePasteAction();
         updateViewActions();
         updateGoActions();
         setUrlAsCaption(url);
@@ -1455,6 +1457,7 @@ void DolphinMainWindow::setActiveViewContainer(DolphinViewContainer* viewContain
 
     updateHistory();
     updateEditActions();
+    updatePasteAction();
     updateViewActions();
     updateGoActions();
 
@@ -1817,7 +1820,6 @@ void DolphinMainWindow::updateEditActions()
         deleteWithTrashShortcut->setEnabled(capabilities.supportsDeleting() && !enableMoveToTrash);
         cutAction->setEnabled(capabilities.supportsMoving());
     }
-    updatePasteAction();
 }
 
 void DolphinMainWindow::updateViewActions()