From d094c8ffe64d226d5afef50693a3bb04b360ed7b Mon Sep 17 00:00:00 2001 From: Frank Reininghaus Date: Wed, 27 Jan 2016 06:56:14 +0100 Subject: [PATCH] DolphinContextMenu: Do not check if the clicked folder is in the Places This prevents that the setup of the PlacesItemModel queries Solid for the available devices, which can take some time. Places can be added multiple times now using the context menu, but this has always been possible with drag and drop anyway. See https://forum.kde.org/viewtopic.php?f=223&t=130617 for a dicsussion on this topic. REVIEW: 126904 --- src/dolphincontextmenu.cpp | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index af283cf00..0830d4b8b 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -427,16 +427,11 @@ void DolphinContextMenu::addShowMenuBarAction() bool DolphinContextMenu::placeExists(const QUrl& url) const { - PlacesItemModel model; - - const int count = model.count(); - for (int i = 0; i < count; ++i) { - const QUrl placeUrl = model.placesItem(i)->url(); - if (placeUrl.matches(url, QUrl::StripTrailingSlash)) { - return true; - } - } - + // Creating up a PlacesItemModel to find out if 'url' is one of the Places + // can be expensive because the model asks Solid for the devices which are + // available, which can take some time. + // TODO: Consider restoring this check if the handling of Places and devices + // will be decoupled in the future. return false; }