X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/2e6450da1cc62c0c8ad6f868becf0fa4a1f32022..f16fbcba4e9ed3cd48cb2c1a40c01daf1d511f4b:/src/dolphincontextmenu.cpp diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index af3878e1f..c4a66c19a 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -20,43 +20,41 @@ #include "dolphincontextmenu.h" +#include "dolphin_generalsettings.h" #include "dolphinmainwindow.h" #include "dolphinnewfilemenu.h" -#include "dolphinviewcontainer.h" -#include "dolphin_generalsettings.h" #include "dolphinremoveaction.h" +#include "dolphinviewcontainer.h" +#include "panels/places/placesitem.h" +#include "panels/places/placesitemmodel.h" +#include "trash/dolphintrash.h" +#include "views/dolphinview.h" +#include "views/viewmodecontroller.h" -#include #include +#include #include #include -#include #include #include #include +#include #include +#include #include #include #include #include -#include #include #include #include #include #include -#include #include +#include #include -#include -#include - - -#include "views/dolphinview.h" -#include "views/viewmodecontroller.h" - DolphinContextMenu::DolphinContextMenu(DolphinMainWindow* parent, const QPoint& pos, const KFileItem& fileInfo, @@ -142,8 +140,7 @@ void DolphinContextMenu::openTrashContextMenu() Q_ASSERT(m_context & TrashContext); QAction* emptyTrashAction = new QAction(QIcon::fromTheme(QStringLiteral("trash-empty")), i18nc("@action:inmenu", "Empty Trash"), this); - KConfig trashConfig(QStringLiteral("trashrc"), KConfig::SimpleConfig); - emptyTrashAction->setEnabled(!trashConfig.group("Status").readEntry("Empty", true)); + emptyTrashAction->setEnabled(!Trash::isEmpty()); addAction(emptyTrashAction); addCustomActions(); @@ -154,13 +151,7 @@ void DolphinContextMenu::openTrashContextMenu() addShowMenuBarAction(); if (exec(m_pos) == emptyTrashAction) { - KIO::JobUiDelegate uiDelegate; - uiDelegate.setWindow(m_mainWindow); - if (uiDelegate.askDeleteConfirmation(QList(), KIO::JobUiDelegate::EmptyTrash, KIO::JobUiDelegate::DefaultConfirmation)) { - KIO::Job* job = KIO::emptyTrash(); - KJobWidgets::setWindow(job, m_mainWindow); - job->uiDelegate()->setAutoErrorHandlingEnabled(true); - } + Trash::empty(m_mainWindow); } } @@ -306,9 +297,7 @@ void DolphinContextMenu::openItemContextMenu() if (selectedUrl.isValid()) { PlacesItemModel model; const QString text = selectedUrl.fileName(); - PlacesItem* item = model.createPlacesItem(text, selectedUrl, KIO::iconNameForUrl(selectedUrl)); - model.appendItemToGroup(item); - model.saveBookmarks(); + model.createPlacesItem(text, selectedUrl, KIO::iconNameForUrl(selectedUrl)); } } else if (activatedAction == openParentAction) { m_command = OpenParentFolder; @@ -378,9 +367,7 @@ void DolphinContextMenu::openViewportContextMenu() } else { icon = KIO::iconNameForUrl(url); } - PlacesItem* item = model.createPlacesItem(container->placesText(), url, icon); - model.appendItemToGroup(item); - model.saveBookmarks(); + model.createPlacesItem(container->placesText(), url, icon); } } } @@ -435,6 +422,7 @@ void DolphinContextMenu::addShowMenuBarAction() bool DolphinContextMenu::placeExists(const QUrl& url) const { + Q_UNUSED(url) // 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.