]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Add options to hide some context menu entries
authorDuong Do Minh Chau <duongdominhchau@gmail.com>
Thu, 12 Nov 2020 09:38:44 +0000 (16:38 +0700)
committerElvis Angelaccio <elvis.angelaccio@kde.org>
Mon, 28 Dec 2020 20:18:31 +0000 (20:18 +0000)
This commit add options to hide the following context menu entries:
- Add to Places
- Copy Location
- Duplicate Here
- Open in New Tab and Open in New Tabs
- Open in New Window
- Sort By
- View Mode

The Services settings page is renamed to Context Menu

ShowCopyMoveMenu option is moved from GeneralSettings to ContextMenuSettings

BUG: 314594

23 files changed:
src/CMakeLists.txt
src/dolphincontextmenu.cpp
src/settings/contextmenu/contextmenusettingspage.cpp [moved from src/settings/services/servicessettingspage.cpp with 71% similarity]
src/settings/contextmenu/contextmenusettingspage.h [moved from src/settings/services/servicessettingspage.h with 81% similarity]
src/settings/contextmenu/servicemenu.knsrc [moved from src/settings/services/servicemenu.knsrc with 100% similarity]
src/settings/contextmenu/servicemenuinstaller/CMakeLists.txt [moved from src/settings/services/servicemenuinstaller/CMakeLists.txt with 100% similarity]
src/settings/contextmenu/servicemenuinstaller/Messages.sh [moved from src/settings/services/servicemenuinstaller/Messages.sh with 100% similarity]
src/settings/contextmenu/servicemenuinstaller/servicemenuinstaller.cpp [moved from src/settings/services/servicemenuinstaller/servicemenuinstaller.cpp with 100% similarity]
src/settings/contextmenu/test/service_menu_deinstallation_test.rb [moved from src/settings/services/test/service_menu_deinstallation_test.rb with 100% similarity]
src/settings/contextmenu/test/service_menu_installation_test.rb [moved from src/settings/services/test/service_menu_installation_test.rb with 100% similarity]
src/settings/contextmenu/test/test_helper.rb [moved from src/settings/services/test/test_helper.rb with 100% similarity]
src/settings/contextmenu/test/test_run.rb [moved from src/settings/services/test/test_run.rb with 100% similarity]
src/settings/dolphin_contextmenusettings.kcfg [new file with mode: 0644]
src/settings/dolphin_contextmenusettings.kcfgc [new file with mode: 0644]
src/settings/dolphin_generalsettings.kcfg
src/settings/dolphinsettingsdialog.cpp
src/settings/kcm/kcmdolphincontextmenu.cpp [new file with mode: 0644]
src/settings/kcm/kcmdolphincontextmenu.desktop [new file with mode: 0644]
src/settings/kcm/kcmdolphincontextmenu.h [new file with mode: 0644]
src/settings/kcm/kcmdolphinservices.cpp [deleted file]
src/settings/kcm/kcmdolphinservices.desktop [deleted file]
src/settings/kcm/kcmdolphinservices.h [deleted file]
src/tests/CMakeLists.txt

index 87bc2d3c25b62d9bb5ad5f08f1072dc574cc8d5e..1d70848548196b6aa319bc2c07f2074522a27850 100644 (file)
@@ -134,6 +134,7 @@ kconfig_add_kcfg_files(dolphinprivate_LIB_SRCS GENERATE_MOC
     settings/dolphin_detailsmodesettings.kcfgc
     settings/dolphin_iconsmodesettings.kcfgc
     settings/dolphin_generalsettings.kcfgc
+    settings/dolphin_contextmenusettings.kcfgc
     settings/dolphin_versioncontrolsettings.kcfgc
 )
 
@@ -238,7 +239,7 @@ set(dolphinstatic_SRCS
     settings/general/statusbarsettingspage.cpp
     settings/dolphinsettingsdialog.cpp
     settings/navigation/navigationsettingspage.cpp
-    settings/services/servicessettingspage.cpp
+    settings/contextmenu/contextmenusettingspage.cpp
     settings/settingspagebase.cpp
     settings/serviceitemdelegate.cpp
     settings/servicemodel.cpp
@@ -285,6 +286,7 @@ kconfig_add_kcfg_files(dolphinstatic_SRCS GENERATE_MOC
     settings/dolphin_compactmodesettings.kcfgc
     settings/dolphin_detailsmodesettings.kcfgc
     settings/dolphin_generalsettings.kcfgc
+    settings/dolphin_contextmenusettings.kcfgc
     settings/dolphin_iconsmodesettings.kcfgc
     search/dolphin_searchsettings.kcfgc
     settings/dolphin_versioncontrolsettings.kcfgc
@@ -369,9 +371,9 @@ set(kcm_dolphinnavigation_PART_SRCS
     settings/navigation/navigationsettingspage.cpp
     settings/settingspagebase.cpp)
 
-set(kcm_dolphinservices_PART_SRCS
-    settings/kcm/kcmdolphinservices.cpp
-    settings/services/servicessettingspage.cpp
+set(kcm_dolphincontextmenu_PART_SRCS
+    settings/kcm/kcmdolphincontextmenu.cpp
+    settings/contextmenu/contextmenusettingspage.cpp
     settings/settingspagebase.cpp
     settings/serviceitemdelegate.cpp
     settings/servicemodel.cpp)
@@ -398,8 +400,9 @@ kconfig_add_kcfg_files(kcm_dolphinviewmodes_PART_SRCS
 kconfig_add_kcfg_files(kcm_dolphinnavigation_PART_SRCS
     settings/dolphin_generalsettings.kcfgc)
 
-kconfig_add_kcfg_files(kcm_dolphinservices_PART_SRCS
+kconfig_add_kcfg_files(kcm_dolphincontextmenu_PART_SRCS
     settings/dolphin_generalsettings.kcfgc
+    settings/dolphin_contextmenusettings.kcfgc
     settings/dolphin_versioncontrolsettings.kcfgc)
 
 kconfig_add_kcfg_files(kcm_dolphingeneral_PART_SRCS
@@ -410,29 +413,29 @@ if(NOT WIN32)
     # The settings are still accessible from the hamburger menu
     add_library(kcm_dolphinviewmodes MODULE ${kcm_dolphinviewmodes_PART_SRCS})
     add_library(kcm_dolphinnavigation MODULE ${kcm_dolphinnavigation_PART_SRCS})
-    add_library(kcm_dolphinservices MODULE ${kcm_dolphinservices_PART_SRCS})
+    add_library(kcm_dolphincontextmenu MODULE ${kcm_dolphincontextmenu_PART_SRCS})
     add_library(kcm_dolphingeneral MODULE ${kcm_dolphingeneral_PART_SRCS})
 
     target_link_libraries(kcm_dolphinviewmodes dolphinprivate)
     target_link_libraries(kcm_dolphinnavigation dolphinprivate)
-    target_link_libraries(kcm_dolphinservices dolphinprivate)
+    target_link_libraries(kcm_dolphincontextmenu dolphinprivate)
     target_link_libraries(kcm_dolphingeneral dolphinprivate)
 
     install( FILES org.kde.dolphin.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} )
     install( FILES settings/kcm/kcmdolphinviewmodes.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} )
     install( FILES settings/kcm/kcmdolphinnavigation.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} )
-    install( FILES settings/kcm/kcmdolphinservices.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} )
+    install( FILES settings/kcm/kcmdolphincontextmenu.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} )
     install( FILES settings/kcm/kcmdolphingeneral.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} )
 
     install(TARGETS kcm_dolphinviewmodes DESTINATION ${KDE_INSTALL_PLUGINDIR} )
     install(TARGETS kcm_dolphinnavigation DESTINATION ${KDE_INSTALL_PLUGINDIR} )
-    install(TARGETS kcm_dolphinservices DESTINATION ${KDE_INSTALL_PLUGINDIR} )
+    install(TARGETS kcm_dolphincontextmenu DESTINATION ${KDE_INSTALL_PLUGINDIR} )
     install(TARGETS kcm_dolphingeneral DESTINATION ${KDE_INSTALL_PLUGINDIR} )
 endif()
 
 if(NOT WIN32)
-    add_subdirectory(settings/services/servicemenuinstaller)
-    install( FILES settings/services/servicemenu.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR} )
+    add_subdirectory(settings/contextmenu/servicemenuinstaller)
+    install( FILES settings/contextmenu/servicemenu.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR} )
 endif()
 
 ########### install files ###############
@@ -447,6 +450,7 @@ install(
 
 install( FILES settings/dolphin_directoryviewpropertysettings.kcfg
                settings/dolphin_generalsettings.kcfg
+               settings/dolphin_contextmenusettings.kcfg
                settings/dolphin_compactmodesettings.kcfg
                settings/dolphin_iconsmodesettings.kcfg
                settings/dolphin_detailsmodesettings.kcfg
index eabd81e225080999c57e7328f9e0a9fc717c8aff..2d06449e719cc7de22402c46cc34bb9ba47e9207 100644 (file)
@@ -7,6 +7,7 @@
 #include "dolphincontextmenu.h"
 
 #include "dolphin_generalsettings.h"
+#include "dolphin_contextmenusettings.h"
 #include "dolphinmainwindow.h"
 #include "dolphinnewfilemenu.h"
 #include "dolphinplacesmodelsingleton.h"
@@ -185,32 +186,33 @@ void DolphinContextMenu::openTrashItemContextMenu()
 void DolphinContextMenu::addDirectoryItemContextMenu(KFileItemActions &fileItemActions)
 {
     // insert 'Open in new window' and 'Open in new tab' entries
-
     const KFileItemListProperties& selectedItemsProps = selectedItemsProperties();
-
-    addAction(m_mainWindow->actionCollection()->action(QStringLiteral("open_in_new_tab")));
-    addAction(m_mainWindow->actionCollection()->action(QStringLiteral("open_in_new_window")));
+    if (ContextMenuSettings::showOpenInNewTab()) {
+        addAction(m_mainWindow->actionCollection()->action(QStringLiteral("open_in_new_tab")));
+    }
+    if (ContextMenuSettings::showOpenInNewWindow()) {
+        addAction(m_mainWindow->actionCollection()->action(QStringLiteral("open_in_new_window")));
+    }
 
     // Insert 'Open With' entries
     addOpenWithActions(fileItemActions);
 
     // set up 'Create New' menu
-     DolphinNewFileMenu* newFileMenu = new DolphinNewFileMenu(m_mainWindow->actionCollection(), m_mainWindow);
-     const DolphinView* view = m_mainWindow->activeViewContainer()->view();
-     newFileMenu->setViewShowsHiddenFiles(view->hiddenFilesShown());
-     newFileMenu->checkUpToDate();
-     newFileMenu->setPopupFiles(QList<QUrl>() << m_fileInfo.url());
-     newFileMenu->setEnabled(selectedItemsProps.supportsWriting());
-     connect(newFileMenu, &DolphinNewFileMenu::fileCreated, newFileMenu, &DolphinNewFileMenu::deleteLater);
-     connect(newFileMenu, &DolphinNewFileMenu::directoryCreated, newFileMenu, &DolphinNewFileMenu::deleteLater);
-
-     QMenu* menu = newFileMenu->menu();
-     menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
-     menu->setIcon(QIcon::fromTheme(QStringLiteral("document-new")));
-     menu->setParent(this, Qt::Popup);
-     addMenu(menu);
-
-     addSeparator();
+    DolphinNewFileMenu* newFileMenu = new DolphinNewFileMenu(m_mainWindow->actionCollection(), m_mainWindow);
+    const DolphinView* view = m_mainWindow->activeViewContainer()->view();
+    newFileMenu->setViewShowsHiddenFiles(view->hiddenFilesShown());
+    newFileMenu->checkUpToDate();
+    newFileMenu->setPopupFiles(QList<QUrl>() << m_fileInfo.url());
+    newFileMenu->setEnabled(selectedItemsProps.supportsWriting());
+    connect(newFileMenu, &DolphinNewFileMenu::fileCreated, newFileMenu, &DolphinNewFileMenu::deleteLater);
+    connect(newFileMenu, &DolphinNewFileMenu::directoryCreated, newFileMenu, &DolphinNewFileMenu::deleteLater);
+
+    QMenu* menu = newFileMenu->menu();
+    menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
+    menu->setIcon(QIcon::fromTheme(QStringLiteral("document-new")));
+    addMenu(menu);
+
+    addSeparator();
 }
 
 void DolphinContextMenu::openItemContextMenu()
@@ -271,7 +273,7 @@ void DolphinContextMenu::openItemContextMenu()
             }
         }
 
-        if (selectionHasOnlyDirs) {
+        if (selectionHasOnlyDirs && ContextMenuSettings::showOpenInNewTab()) {
             // insert 'Open in new tab' entry
             addAction(m_mainWindow->actionCollection()->action(QStringLiteral("open_in_new_tabs")));
         }
@@ -284,7 +286,7 @@ void DolphinContextMenu::openItemContextMenu()
     addAdditionalActions(fileItemActions, selectedItemsProps);
 
     // insert 'Copy To' and 'Move To' sub menus
-    if (GeneralSettings::showCopyMoveMenu()) {
+    if (ContextMenuSettings::showCopyMoveMenu()) {
         m_copyToMenu.setUrls(m_selectedItems.urlList());
         m_copyToMenu.setReadOnly(!selectedItemsProps.supportsWriting());
         m_copyToMenu.setAutoErrorHandlingEnabled(true);
@@ -334,14 +336,22 @@ void DolphinContextMenu::openViewportContextMenu()
     }
 
     // Insert 'Add to Places' entry if it's not already in the places panel
-    if (!placeExists(m_mainWindow->activeViewContainer()->url())) {
+    if (ContextMenuSettings::showAddToPlaces() &&
+            !placeExists(m_mainWindow->activeViewContainer()->url())) {
         addAction(m_mainWindow->actionCollection()->action(QStringLiteral("add_to_places")));
     }
     addSeparator();
 
     // Insert 'Sort By' and 'View Mode'
-    addAction(m_mainWindow->actionCollection()->action(QStringLiteral("sort")));
-    addAction(m_mainWindow->actionCollection()->action(QStringLiteral("view_mode")));
+    if (ContextMenuSettings::showSortBy()) {
+        addAction(m_mainWindow->actionCollection()->action(QStringLiteral("sort")));
+    }
+    if (ContextMenuSettings::showViewMode()) {
+        addAction(m_mainWindow->actionCollection()->action(QStringLiteral("view_mode")));
+    }
+    if (ContextMenuSettings::showSortBy() || ContextMenuSettings::showViewMode()) {
+        addSeparator();
+    }
 
     addAdditionalActions(fileItemActions, baseUrlProperties);
     addCustomActions();
@@ -363,25 +373,30 @@ void DolphinContextMenu::insertDefaultItemActions(const KFileItemListProperties&
     // Insert 'Cut', 'Copy', 'Copy Location' and 'Paste'
     addAction(collection->action(KStandardAction::name(KStandardAction::Cut)));
     addAction(collection->action(KStandardAction::name(KStandardAction::Copy)));
-    QAction* copyPathAction = collection->action(QString("copy_location"));
-    copyPathAction->setEnabled(m_selectedItems.size() == 1);
-    addAction(copyPathAction);
+    if (ContextMenuSettings::showCopyLocation()) {
+        QAction* copyPathAction = collection->action(QString("copy_location"));
+        copyPathAction->setEnabled(m_selectedItems.size() == 1);
+        addAction(copyPathAction);
+    }
     QAction* pasteAction = createPasteAction();
     if (pasteAction) {
         addAction(pasteAction);
     }
-    addAction(m_mainWindow->actionCollection()->action(QStringLiteral("duplicate")));
+
+    // Insert 'Duplicate Here'
+    if (ContextMenuSettings::showDuplicateHere()) {
+        addAction(m_mainWindow->actionCollection()->action(QStringLiteral("duplicate")));
+    }
 
     // Insert 'Rename'
     addAction(collection->action(KStandardAction::name(KStandardAction::RenameFile)));
 
-    // insert 'Add to Places' entry if appropriate
-    if (m_selectedItems.count() == 1) {
-        if (m_fileInfo.isDir()) {
-            if (!placeExists(m_fileInfo.url())) {
-                addAction(m_mainWindow->actionCollection()->action(QStringLiteral("add_to_places")));
-            }
-        }
+    // Insert 'Add to Places' entry if appropriate
+    if (ContextMenuSettings::showAddToPlaces() &&
+            m_selectedItems.count() == 1 &&
+            m_fileInfo.isDir() &&
+            !placeExists(m_fileInfo.url())) {
+        addAction(m_mainWindow->actionCollection()->action(QStringLiteral("add_to_places")));
     }
 
     addSeparator();
similarity index 71%
rename from src/settings/services/servicessettingspage.cpp
rename to src/settings/contextmenu/contextmenusettingspage.cpp
index fa064d8a13bf78fcb3126175157da2b30c6ced02..4f126d3e2a29f7725a707d8f4f6fc8e193ce79d1 100644 (file)
@@ -4,10 +4,11 @@
  * SPDX-License-Identifier: GPL-2.0-or-later
  */
 
-#include "servicessettingspage.h"
+#include "contextmenusettingspage.h"
 
 #include "dolphin_generalsettings.h"
 #include "dolphin_versioncontrolsettings.h"
+#include "dolphin_contextmenusettings.h"
 #include "settings/serviceitemdelegate.h"
 #include "settings/servicemodel.h"
 
@@ -34,9 +35,16 @@ namespace
     const char VersionControlServicePrefix[] = "_version_control_";
     const char DeleteService[] = "_delete";
     const char CopyToMoveToService[] ="_copy_to_move_to";
+    const char AddToPlacesService[] = "_add_to_places";
+    const char SortByService[] = "_sort_by";
+    const char ViewModeService[] = "_view_mode";
+    const char OpenInNewTabService[] = "_open_in_new_tab";
+    const char OpenInNewWindowService[] = "_open_in_new_window";
+    const char CopyLocationService[] = "_copy_location";
+    const char DuplicateHereService[] = "_duplicate_here";
 }
 
-ServicesSettingsPage::ServicesSettingsPage(QWidget* parent) :
+ContextMenuSettingsPage::ContextMenuSettingsPage(QWidget* parent) :
     SettingsPageBase(parent),
     m_initialized(false),
     m_serviceModel(nullptr),
@@ -70,7 +78,7 @@ ServicesSettingsPage::ServicesSettingsPage(QWidget* parent) :
     m_listView->setModel(m_sortModel);
     m_listView->setItemDelegate(delegate);
     m_listView->setVerticalScrollMode(QListView::ScrollPerPixel);
-    connect(m_listView, &QListView::clicked, this, &ServicesSettingsPage::changed);
+    connect(m_listView, &QListView::clicked, this, &ContextMenuSettingsPage::changed);
 
 #ifndef Q_OS_WIN
     auto *downloadButton = new KNS3::Button(i18nc("@action:button", "Download New Services..."),
@@ -96,9 +104,10 @@ ServicesSettingsPage::ServicesSettingsPage(QWidget* parent) :
     std::sort(m_enabledVcsPlugins.begin(), m_enabledVcsPlugins.end());
 }
 
-ServicesSettingsPage::~ServicesSettingsPage() = default;
+ContextMenuSettingsPage::~ContextMenuSettingsPage() {
+}
 
-void ServicesSettingsPage::applySettings()
+void ContextMenuSettingsPage::applySettings()
 {
     if (!m_initialized) {
         return;
@@ -125,8 +134,29 @@ void ServicesSettingsPage::applySettings()
             configGroup.writeEntry("ShowDeleteCommand", checked);
             configGroup.sync();
         } else if (service == QLatin1String(CopyToMoveToService)) {
-            GeneralSettings::setShowCopyMoveMenu(checked);
-            GeneralSettings::self()->save();
+            ContextMenuSettings::setShowCopyMoveMenu(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(AddToPlacesService)) {
+            ContextMenuSettings::setShowAddToPlaces(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(SortByService)) {
+            ContextMenuSettings::setShowSortBy(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(ViewModeService)) {
+            ContextMenuSettings::setShowViewMode(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(OpenInNewTabService)) {
+            ContextMenuSettings::setShowOpenInNewTab(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(OpenInNewWindowService)) {
+            ContextMenuSettings::setShowOpenInNewWindow(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(CopyLocationService)) {
+            ContextMenuSettings::setShowCopyLocation(checked);
+            ContextMenuSettings::self()->save();
+        } else if (service == QLatin1String(DuplicateHereService)) {
+            ContextMenuSettings::setShowDuplicateHere(checked);
+            ContextMenuSettings::self()->save();
         } else {
             showGroup.writeEntry(service, checked);
         }
@@ -146,7 +176,7 @@ void ServicesSettingsPage::applySettings()
     }
 }
 
-void ServicesSettingsPage::restoreDefaults()
+void ContextMenuSettingsPage::restoreDefaults()
 {
     QAbstractItemModel* model = m_listView->model();
     for (int i = 0; i < model->rowCount(); ++i) {
@@ -160,7 +190,7 @@ void ServicesSettingsPage::restoreDefaults()
     }
 }
 
-void ServicesSettingsPage::showEvent(QShowEvent* event)
+void ContextMenuSettingsPage::showEvent(QShowEvent* event)
 {
     if (!event->spontaneous() && !m_initialized) {
         loadServices();
@@ -179,7 +209,37 @@ void ServicesSettingsPage::showEvent(QShowEvent* event)
         addRow(QStringLiteral("edit-copy"),
                i18nc("@option:check", "'Copy To' and 'Move To' commands"),
                CopyToMoveToService,
-               GeneralSettings::showCopyMoveMenu());
+               ContextMenuSettings::showCopyMoveMenu());
+
+        // Add other built-in actions
+        addRow(QStringLiteral("bookmark-new"),
+               i18nc("@option:check", "Add to Places"),
+               AddToPlacesService,
+               ContextMenuSettings::showAddToPlaces());
+        addRow(QStringLiteral("view-sort"),
+               i18nc("@option:check", "Sort By"),
+               SortByService,
+               ContextMenuSettings::showSortBy());
+        addRow(QStringLiteral("view-list-icons"),
+               i18nc("@option:check", "View Mode"),
+               ViewModeService,
+               ContextMenuSettings::showViewMode());
+        addRow(QStringLiteral("folder-new"),
+               i18nc("@option:check", "'Open in New Tab' and 'Open in New Tabs'"),
+               OpenInNewTabService,
+               ContextMenuSettings::showOpenInNewTab());
+        addRow(QStringLiteral("window-new"),
+               i18nc("@option:check", "Open in New Window"),
+               OpenInNewWindowService,
+               ContextMenuSettings::showOpenInNewWindow());
+        addRow(QStringLiteral("edit-copy"),
+               i18nc("@option:check", "Copy Location"),
+               CopyLocationService,
+               ContextMenuSettings::showCopyLocation());
+        addRow(QStringLiteral("edit-copy"),
+               i18nc("@option:check", "Duplicate Here"),
+               DuplicateHereService,
+               ContextMenuSettings::showDuplicateHere());
 
         m_sortModel->sort(Qt::DisplayRole);
 
@@ -188,7 +248,7 @@ void ServicesSettingsPage::showEvent(QShowEvent* event)
     SettingsPageBase::showEvent(event);
 }
 
-void ServicesSettingsPage::loadServices()
+void ContextMenuSettingsPage::loadServices()
 {
     const KConfig config(QStringLiteral("kservicemenurc"), KConfig::NoGlobals);
     const KConfigGroup showGroup = config.group("Show");
@@ -243,7 +303,7 @@ void ServicesSettingsPage::loadServices()
     m_searchLineEdit->setFocus(Qt::OtherFocusReason);
 }
 
-void ServicesSettingsPage::loadVersionControlSystems()
+void ContextMenuSettingsPage::loadVersionControlSystems()
 {
     const QStringList enabledPlugins = VersionControlSettings::enabledPlugins();
 
@@ -260,7 +320,7 @@ void ServicesSettingsPage::loadVersionControlSystems()
     m_sortModel->sort(Qt::DisplayRole);
 }
 
-bool ServicesSettingsPage::isInServicesList(const QString &service) const
+bool ContextMenuSettingsPage::isInServicesList(const QString &service) const
 {
     for (int i = 0; i < m_serviceModel->rowCount(); ++i) {
         const QModelIndex index = m_serviceModel->index(i, 0);
@@ -271,10 +331,10 @@ bool ServicesSettingsPage::isInServicesList(const QString &service) const
     return false;
 }
 
-void ServicesSettingsPage::addRow(const QString &icon,
-                                  const QString &text,
-                                  const QString &value,
-                                  bool checked)
+void ContextMenuSettingsPage::addRow(const QString &icon,
+                                     const QString &text,
+                                     const QString &value,
+                                     bool checked)
 {
     m_serviceModel->insertRow(0);
 
@@ -284,4 +344,3 @@ void ServicesSettingsPage::addRow(const QString &icon,
     m_serviceModel->setData(index, value, ServiceModel::DesktopEntryNameRole);
     m_serviceModel->setData(index, checked, Qt::CheckStateRole);
 }
-
similarity index 81%
rename from src/settings/services/servicessettingspage.h
rename to src/settings/contextmenu/contextmenusettingspage.h
index b569852ae9e71065b2489ec17d0b78265fb48d9b..3825e6f867d56e242d5d7e5d65ee4dd59a15155a 100644 (file)
@@ -3,8 +3,8 @@
  *
  * SPDX-License-Identifier: GPL-2.0-or-later
  */
-#ifndef SERVICESSETTINGSPAGE_H
-#define SERVICESSETTINGSPAGE_H
+#ifndef CONTEXTMENUSETTINGSPAGE_H
+#define CONTEXTMENUSETTINGSPAGE_H
 
 #include "settings/settingspagebase.h"
 
@@ -16,15 +16,15 @@ class ServiceModel;
 class QLineEdit;
 
 /**
- * @brief Page for the 'Services' settings of the Dolphin settings dialog.
+ * @brief Configurations for services in the context menu.
  */
-class ServicesSettingsPage : public SettingsPageBase
+class ContextMenuSettingsPage : public SettingsPageBase
 {
     Q_OBJECT
 
 public:
-    explicit ServicesSettingsPage(QWidget* parent);
-    ~ServicesSettingsPage() override;
+    explicit ContextMenuSettingsPage(QWidget* parent);
+    ~ContextMenuSettingsPage() override;
 
     /** @see SettingsPageBase::applySettings() */
     void applySettings() override;
diff --git a/src/settings/dolphin_contextmenusettings.kcfg b/src/settings/dolphin_contextmenusettings.kcfg
new file mode 100644 (file)
index 0000000..9e70565
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE kcfg SYSTEM "http://www.kde.org/standards/kcfg/1.0/kcfg.dtd">
+<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
+      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+      xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
+      http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
+    <kcfgfile name="dolphinrc"/>
+    <group name="ContextMenu">
+        <entry name="ShowCopyMoveMenu" type="Bool">
+            <label>Show 'Copy To' and 'Move To' commands in context menu</label>
+            <default>false</default>
+        </entry>
+        <entry name="ShowAddToPlaces" type="Bool">
+            <label>Show 'Add to Places' in context menu.</label>
+            <default>true</default>
+        </entry>
+        <entry name="ShowSortBy" type="Bool">
+            <label>Show 'Sort By' in context menu.</label>
+            <default>true</default>
+        </entry>
+        <entry name="ShowViewMode" type="Bool">
+            <label>Show 'View Mode' in context menu.</label>
+            <default>true</default>
+        </entry>
+        <entry name="ShowOpenInNewTab" type="Bool">
+            <label>Show 'Open in New Tab' and 'Open in New Tabs' in context menu.</label>
+            <default>true</default>
+        </entry>
+        <entry name="ShowOpenInNewWindow" type="Bool">
+            <label>Show 'Open in New Window' in context menu.</label>
+            <default>true</default>
+        </entry>
+        <entry name="ShowCopyLocation" type="Bool">
+            <label>Show 'Copy Location' in context menu.</label>
+            <default>true</default>
+        </entry>
+        <entry name="ShowDuplicateHere" type="Bool">
+            <label>Show 'Duplicate Here' in context menu.</label>
+            <default>true</default>
+        </entry>
+    </group>
+</kcfg>
diff --git a/src/settings/dolphin_contextmenusettings.kcfgc b/src/settings/dolphin_contextmenusettings.kcfgc
new file mode 100644 (file)
index 0000000..b50e98f
--- /dev/null
@@ -0,0 +1,4 @@
+File=dolphin_contextmenusettings.kcfg
+ClassName=ContextMenuSettings
+Singleton=yes
+Mutators=true
index c397b2945124a49ab4867ff608337842c8d75e3d..0ec5f282bce73dd8cf298fd12a38565c92f3b25f 100644 (file)
             <label>Show tooltips</label>
             <default>false</default>
         </entry>
-        <entry name="ShowCopyMoveMenu" type="Bool">
-            <label>Show 'Copy To' and 'Move To' commands in context menu</label>
-            <default>false</default>
-        </entry>
         <entry name="ViewPropsTimestamp" type="DateTime" >
             <label>Timestamp since when the view properties are valid</label>
         </entry>
index 9d8fb032a705d6a956db7bbb39a13fa4f555659e..01d0ad0307d4b76c45d269faffa544f78f411c6e 100644 (file)
@@ -10,7 +10,7 @@
 #include "dolphinmainwindow.h"
 #include "general/generalsettingspage.h"
 #include "navigation/navigationsettingspage.h"
-#include "services/servicessettingspage.h"
+#include "contextmenu/contextmenusettingspage.h"
 #include "startup/startupsettingspage.h"
 #include "trash/trashsettingspage.h"
 #include "viewmodes/viewsettingspage.h"
@@ -77,12 +77,12 @@ DolphinSettingsDialog::DolphinSettingsDialog(const QUrl& url, QWidget* parent) :
     navigationSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("preferences-desktop-navigation")));
     connect(navigationSettingsPage, &NavigationSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
 
-    // Services
-    ServicesSettingsPage* servicesSettingsPage = new ServicesSettingsPage(this);
-    KPageWidgetItem* servicesSettingsFrame = addPage(servicesSettingsPage,
-                                                       i18nc("@title:group", "Services"));
-    servicesSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("preferences-system-services")));
-    connect(servicesSettingsPage, &ServicesSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
+    // Context Menu
+    auto contextMenuSettingsPage = new ContextMenuSettingsPage(this);
+    KPageWidgetItem* contextMenuSettingsFrame = addPage(contextMenuSettingsPage,
+                                                        i18nc("@title:group", "Context Menu"));
+    contextMenuSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("application-menu")));
+    connect(contextMenuSettingsPage, &ContextMenuSettingsPage::changed, this, &DolphinSettingsDialog::enableApply);
 
     // Trash
     SettingsPageBase* trashSettingsPage = nullptr;
@@ -111,7 +111,7 @@ DolphinSettingsDialog::DolphinSettingsDialog(const QUrl& url, QWidget* parent) :
     m_pages.append(startupSettingsPage);
     m_pages.append(viewSettingsPage);
     m_pages.append(navigationSettingsPage);
-    m_pages.append(servicesSettingsPage);
+    m_pages.append(contextMenuSettingsPage);
     if (trashSettingsPage) {
         m_pages.append(trashSettingsPage);
     }
diff --git a/src/settings/kcm/kcmdolphincontextmenu.cpp b/src/settings/kcm/kcmdolphincontextmenu.cpp
new file mode 100644 (file)
index 0000000..a730dfc
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+ * SPDX-FileCopyrightText: 2009 Peter Penz <peter.penz19@gmail.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#include "kcmdolphincontextmenu.h"
+
+#include "settings/contextmenu/contextmenusettingspage.h"
+
+#include <kconfigwidgets_version.h>
+#include <KPluginFactory>
+#include <KPluginLoader>
+
+#include <QVBoxLayout>
+
+K_PLUGIN_FACTORY(KCMDolphinContextMenuConfigFactory, registerPlugin<DolphinContextMenuConfigModule>(QStringLiteral("dolphincontextmenu"));)
+
+DolphinContextMenuConfigModule::DolphinContextMenuConfigModule(QWidget* parent, const QVariantList& args) :
+    KCModule(parent, args),
+    m_contextMenu(nullptr)
+{
+    setButtons(KCModule::Default | KCModule::Help);
+
+    QVBoxLayout* topLayout = new QVBoxLayout(this);
+    topLayout->setContentsMargins(0, 0, 0, 0);
+
+    m_contextMenu = new ContextMenuSettingsPage(this);
+    connect(m_contextMenu, &ContextMenuSettingsPage::changed, this, &DolphinContextMenuConfigModule::markAsChanged);
+    topLayout->addWidget(m_contextMenu, 0, {});
+}
+
+DolphinContextMenuConfigModule::~DolphinContextMenuConfigModule()
+{
+}
+
+void DolphinContextMenuConfigModule::save()
+{
+    m_contextMenu->applySettings();
+}
+
+void DolphinContextMenuConfigModule::defaults()
+{
+    m_contextMenu->restoreDefaults();
+}
+
+#include "kcmdolphincontextmenu.moc"
diff --git a/src/settings/kcm/kcmdolphincontextmenu.desktop b/src/settings/kcm/kcmdolphincontextmenu.desktop
new file mode 100644 (file)
index 0000000..17f16cd
--- /dev/null
@@ -0,0 +1,62 @@
+Name=Dolphin Context Menu
+
+[Desktop Entry]
+Icon=application-menu
+Type=Service
+X-KDE-ServiceTypes=KCModule
+
+X-KDE-Library=kcm_dolphincontextmenu
+X-KDE-PluginKeyword=dolphincontextmenu
+X-DocPath=dolphin/index.html#preferences-dialog-services
+Name=Dolphin Context Menu
+
+
+X-KDE-Keywords=file manager
+X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات
+X-KDE-Keywords[ast]=xestor de ficheros
+X-KDE-Keywords[az]=fayl meneceri
+X-KDE-Keywords[ca]=gestor de fitxers
+X-KDE-Keywords[ca@valencia]=gestor de fitxers
+X-KDE-Keywords[cs]=správce souborů
+X-KDE-Keywords[da]=filhåndtering
+X-KDE-Keywords[de]=Dateiverwaltung
+X-KDE-Keywords[el]=διαχειριστής αρχείων
+X-KDE-Keywords[en_GB]=file manager
+X-KDE-Keywords[es]=gestor de archivos
+X-KDE-Keywords[et]=failihaldur
+X-KDE-Keywords[eu]=Fitxategi-kudeatzailea
+X-KDE-Keywords[fi]=tiedostonhallinta
+X-KDE-Keywords[fr]=gestionnaire de fichiers
+X-KDE-Keywords[gl]=xestor de ficheiros
+X-KDE-Keywords[he]=מנהל קבצים
+X-KDE-Keywords[hu]=fájlkezelő
+X-KDE-Keywords[ia]=gerente de file
+X-KDE-Keywords[id]=pengelola file
+X-KDE-Keywords[it]=gestore dei file
+X-KDE-Keywords[ja]=ファイルマネージャ
+X-KDE-Keywords[ko]=파일 관리자
+X-KDE-Keywords[lt]=failų tvarkytuvė
+X-KDE-Keywords[lv]=datņu pārvaldnieks
+X-KDE-Keywords[ml]=ഫയൽ മാനേജർ
+X-KDE-Keywords[nb]=filbehandler
+X-KDE-Keywords[nl]=bestandsbeheerder
+X-KDE-Keywords[nn]=filhandsamar
+X-KDE-Keywords[pa]=ਫਾਇਲ ਮੈਨੇਜਰ
+X-KDE-Keywords[pl]=zarządzanie plikami
+X-KDE-Keywords[pt]=gestor de ficheiros
+X-KDE-Keywords[pt_BR]=gerenciador de arquivos
+X-KDE-Keywords[ro]=gestionar de fișiere
+X-KDE-Keywords[ru]=диспетчер файлов
+X-KDE-Keywords[sk]=správca súborov
+X-KDE-Keywords[sl]=upravljalnik datotek
+X-KDE-Keywords[sr]=file manager,менаџер фајлова
+X-KDE-Keywords[sr@ijekavian]=file manager,менаџер фајлова
+X-KDE-Keywords[sr@ijekavianlatin]=file manager,menadžer fajlova
+X-KDE-Keywords[sr@latin]=file manager,menadžer fajlova
+X-KDE-Keywords[sv]=filhanterare
+X-KDE-Keywords[tr]=dosya yöneticisi
+X-KDE-Keywords[uk]=менеджер,керування,файл,файли
+X-KDE-Keywords[vi]=file manager,trình quản lí tệp
+X-KDE-Keywords[x-test]=xxfile managerxx
+X-KDE-Keywords[zh_CN]=文件管理器
+X-KDE-Keywords[zh_TW]=檔案管理員
diff --git a/src/settings/kcm/kcmdolphincontextmenu.h b/src/settings/kcm/kcmdolphincontextmenu.h
new file mode 100644 (file)
index 0000000..bfe55d2
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+ * SPDX-FileCopyrightText: 2009 Peter Penz <peter.penz19@gmail.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#ifndef KCMDOLPHINCONTEXTMENU_H
+#define KCMDOLPHINCONTEXTMENU_H
+
+#include <KCModule>
+
+class ContextMenuSettingsPage;
+
+/**
+ * @brief Allow to configure the Dolphin context menu.
+ */
+class DolphinContextMenuConfigModule : public KCModule
+{
+    Q_OBJECT
+
+public:
+    DolphinContextMenuConfigModule(QWidget* parent, const QVariantList& args);
+    ~DolphinContextMenuConfigModule() override;
+
+    void save() override;
+    void defaults() override;
+
+private:
+    ContextMenuSettingsPage *m_contextMenu;
+};
+
+#endif
diff --git a/src/settings/kcm/kcmdolphinservices.cpp b/src/settings/kcm/kcmdolphinservices.cpp
deleted file mode 100644 (file)
index 583440d..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * SPDX-FileCopyrightText: 2009 Peter Penz <peter.penz19@gmail.com>
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-#include "kcmdolphinservices.h"
-
-#include "settings/services/servicessettingspage.h"
-
-#include <kconfigwidgets_version.h>
-#include <KPluginFactory>
-
-#include <QVBoxLayout>
-
-K_PLUGIN_FACTORY(KCMDolphinServicesConfigFactory, registerPlugin<DolphinServicesConfigModule>(QStringLiteral("dolphinservices"));)
-
-DolphinServicesConfigModule::DolphinServicesConfigModule(QWidget* parent, const QVariantList& args) :
-    KCModule(parent, args),
-    m_services(nullptr)
-{
-    setButtons(KCModule::Default | KCModule::Help);
-
-    QVBoxLayout* topLayout = new QVBoxLayout(this);
-    topLayout->setContentsMargins(0, 0, 0, 0);
-
-    m_services = new ServicesSettingsPage(this);
-    connect(m_services, &ServicesSettingsPage::changed, this, &DolphinServicesConfigModule::markAsChanged);
-    topLayout->addWidget(m_services, 0, {});
-}
-
-DolphinServicesConfigModule::~DolphinServicesConfigModule()
-{
-}
-
-void DolphinServicesConfigModule::save()
-{
-    m_services->applySettings();
-}
-
-void DolphinServicesConfigModule::defaults()
-{
-    m_services->restoreDefaults();
-}
-
-#include "kcmdolphinservices.moc"
diff --git a/src/settings/kcm/kcmdolphinservices.desktop b/src/settings/kcm/kcmdolphinservices.desktop
deleted file mode 100644 (file)
index 2e188f3..0000000
+++ /dev/null
@@ -1,204 +0,0 @@
-Name=Dolphin Services
-Name[ar]=خدمات دولفين
-Name[ast]=Servicios de Dolphin
-Name[az]=Dolphin xidmətləri
-Name[ca]=Serveis del Dolphin
-Name[ca@valencia]=Serveis del Dolphin
-Name[cs]=Služby Dolphinu
-Name[da]=Dolphin-tjenester
-Name[de]=Dolphin-Dienste
-Name[el]=Dolphin Υπηρεσίες
-Name[en_GB]=Dolphin Services
-Name[es]=Servicios de Dolphin
-Name[et]=Dolphini teenused
-Name[eu]=Dolphin zerbitzuak
-Name[fi]=Dolphin – palvelut
-Name[fr]=Services de Dolphin
-Name[gl]=Servizos de Dolphin
-Name[he]=שרותי Dolphin
-Name[hu]=Dolphin szolgáltatások
-Name[ia]=Servicios de Dolphin
-Name[id]=Layanan Dolphin
-Name[it]=Servizi di Dolphin
-Name[ja]=Dolphin サービス
-Name[ko]=Dolphin 서비스
-Name[lt]=Dolphin paslaugos
-Name[lv]=Dolphin servisi
-Name[ml]=ഡോള്‍ഫിന്‍ സേവനങ്ങള്‍
-Name[nb]=Dolphin-tjenester
-Name[nl]=Dolphin-services
-Name[nn]=Dolphin-tenester
-Name[pa]=ਡਾਲਫਿਨ ਸੇਵਾਵਾਂ
-Name[pl]=Usługi Dolphina
-Name[pt]=Serviços do Dolphin
-Name[pt_BR]=Serviços do Dolphin
-Name[ro]=Dolphin – Servicii
-Name[ru]=Действия Dolphin
-Name[sk]=Služby Dolphinu
-Name[sl]=Dolphin - storitve
-Name[sr]=Делфинови сервиси
-Name[sr@ijekavian]=Делфинови сервиси
-Name[sr@ijekavianlatin]=Dolphinovi servisi
-Name[sr@latin]=Dolphinovi servisi
-Name[sv]=Dolphin tjänster
-Name[tr]=Dolphin Servisleri
-Name[uk]=Служби Dolphin
-Name[vi]=Các dịch vụ Dolphin
-Name[x-test]=xxDolphin Servicesxx
-Name[zh_CN]=Dolphin 服务
-Name[zh_TW]=Dolphin 服務
-
-[Desktop Entry]
-Icon=preferences-system-services
-Type=Service
-X-KDE-ServiceTypes=KCModule
-
-X-KDE-Library=kcm_dolphinservices
-X-KDE-PluginKeyword=dolphinservices
-X-DocPath=dolphin/index.html#preferences-dialog-services
-Name=Services
-Name[ar]=الخدمات
-Name[ast]=Servicios
-Name[az]=Xidmətlər
-Name[ca]=Serveis
-Name[ca@valencia]=Serveis
-Name[cs]=Služby
-Name[da]=Tjenester
-Name[de]=KDE-Dienste
-Name[el]=Υπηρεσίες
-Name[en_GB]=Services
-Name[es]=Servicios
-Name[et]=Teenused
-Name[eu]=Zerbitzuak
-Name[fi]=Palvelut
-Name[fr]=Services
-Name[gl]=Servizos
-Name[he]=שירותים
-Name[hu]=Szolgáltatások
-Name[ia]=Servicios
-Name[id]=Layanan
-Name[it]=Servizi
-Name[ja]=サービス
-Name[ko]=서비스
-Name[lt]=Paslaugos
-Name[lv]=Servisi
-Name[ml]=സേവനങ്ങള്‍
-Name[nb]=Tjenester
-Name[nl]=Services
-Name[nn]=Tenester
-Name[pa]=ਸੇਵਾਵਾਂ
-Name[pl]=Usługi
-Name[pt]=Serviços
-Name[pt_BR]=Serviços
-Name[ro]=Servicii
-Name[ru]=Действия
-Name[sk]=Služby
-Name[sl]=Storitve
-Name[sr]=Сервиси
-Name[sr@ijekavian]=Сервиси
-Name[sr@ijekavianlatin]=Servisi
-Name[sr@latin]=Servisi
-Name[sv]=Tjänster
-Name[tr]=Servisler
-Name[uk]=Служби
-Name[vi]=Các dịch vụ
-Name[x-test]=xxServicesxx
-Name[zh_CN]=服务
-Name[zh_TW]=服務
-Comment=Configure file manager services
-Comment[ar]=اضبط خدمات مدير الملفّات
-Comment[ast]=Configura los servicios del xestor de ficheros
-Comment[az]=Fayl meneceri xidmətlərini tənzimləmək
-Comment[ca]=Configura els serveis del gestor de fitxers
-Comment[ca@valencia]=Configura els serveis del gestor de fitxers
-Comment[cs]=Nastavení služeb správce souborů
-Comment[da]=Indstil filhåndteringstjenester
-Comment[de]=Dateiverwaltungs-Dienste einrichten
-Comment[el]=Διαμόρφωση υπηρεσιών του διαχειριστή αρχείων
-Comment[en_GB]=Configure file manager services
-Comment[es]=Configurar los servicios del gestor de archivos
-Comment[et]=Failihalduri teenuste seadistamine
-Comment[eu]=Konfiguratu fitxategi-kudeatzailearen zerbitzuak
-Comment[fi]=Tiedostonhallinnan palveluasetukset
-Comment[fr]=Configuration des services du gestionnaire de fichiers
-Comment[gl]=Configurar servizos de xestores de ficheiros.
-Comment[hu]=A fájlkezelő szolgáltatásainak beállítása
-Comment[ia]=Configura servicios del gerente de file
-Comment[id]=Konfigurasikan layanan pengelola file
-Comment[it]=Configura i servizi del gestore dei file
-Comment[ja]=ファイルマネージャのサービスを設定します
-Comment[ko]=파일 관리자 서비스 구성
-Comment[lt]=Konfigūruoti failų tvarkytuvės paslaugas
-Comment[lv]=Konfigurēt datņu pārvaldnieka servisus
-Comment[ml]=ഫയല്‍ മാനേജർ സേവനങ്ങള്‍ ക്രമീകരിയ്ക്കുക
-Comment[nb]=Sett opp tjenester i filbehandleren
-Comment[nl]=Bestandsbeheerderservices configureren
-Comment[nn]=Set opp tenester i filhandsamaren
-Comment[pa]=ਫਾਇਲ ਮੈਨੇਜਰ ਦੀਆਂ ਸਰਵਿਸਾਂ ਦੀ ਸੰਰਚਨਾ
-Comment[pl]=Ustawienia usług zarządzania plikami
-Comment[pt]=Configurar os serviços do gestor de ficheiros
-Comment[pt_BR]=Configura os serviços do gerenciador de arquivos
-Comment[ro]=Configurează serviciile gestionarului de fișiere
-Comment[ru]=Настройка действий в диспетчере файлов
-Comment[sk]=Nastavenie služieb správcu súborov
-Comment[sl]=Nastavitve storitev upravljalnika datotek
-Comment[sr]=Подешавање сервиса менаџера фајлова
-Comment[sr@ijekavian]=Подешавање сервиса менаџера фајлова
-Comment[sr@ijekavianlatin]=Podešavanje servisa menadžera fajlova
-Comment[sr@latin]=Podešavanje servisa menadžera fajlova
-Comment[sv]=Anpassa filhanterarens tjänster
-Comment[tr]=Dosya yöneticisi servislerini yapılandır
-Comment[uk]=Налаштувати служби менеджера файлів
-Comment[vi]=Cấu hình các dịch vụ trình quản lí tệp
-Comment[x-test]=xxConfigure file manager servicesxx
-Comment[zh_CN]=配置文件管理器服务
-Comment[zh_TW]=設定檔案管理員服務
-X-KDE-Keywords=file manager
-X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات
-X-KDE-Keywords[ast]=xestor de ficheros
-X-KDE-Keywords[az]=fayl meneceri
-X-KDE-Keywords[ca]=gestor de fitxers
-X-KDE-Keywords[ca@valencia]=gestor de fitxers
-X-KDE-Keywords[cs]=správce souborů
-X-KDE-Keywords[da]=filhåndtering
-X-KDE-Keywords[de]=Dateiverwaltung
-X-KDE-Keywords[el]=διαχειριστής αρχείων
-X-KDE-Keywords[en_GB]=file manager
-X-KDE-Keywords[es]=gestor de archivos
-X-KDE-Keywords[et]=failihaldur
-X-KDE-Keywords[eu]=Fitxategi-kudeatzailea
-X-KDE-Keywords[fi]=tiedostonhallinta
-X-KDE-Keywords[fr]=gestionnaire de fichiers
-X-KDE-Keywords[gl]=xestor de ficheiros
-X-KDE-Keywords[he]=מנהל קבצים
-X-KDE-Keywords[hu]=fájlkezelő
-X-KDE-Keywords[ia]=gerente de file
-X-KDE-Keywords[id]=pengelola file
-X-KDE-Keywords[it]=gestore dei file
-X-KDE-Keywords[ja]=ファイルマネージャ
-X-KDE-Keywords[ko]=파일 관리자
-X-KDE-Keywords[lt]=failų tvarkytuvė
-X-KDE-Keywords[lv]=datņu pārvaldnieks
-X-KDE-Keywords[ml]=ഫയൽ മാനേജർ
-X-KDE-Keywords[nb]=filbehandler
-X-KDE-Keywords[nl]=bestandsbeheerder
-X-KDE-Keywords[nn]=filhandsamar
-X-KDE-Keywords[pa]=ਫਾਇਲ ਮੈਨੇਜਰ
-X-KDE-Keywords[pl]=zarządzanie plikami
-X-KDE-Keywords[pt]=gestor de ficheiros
-X-KDE-Keywords[pt_BR]=gerenciador de arquivos
-X-KDE-Keywords[ro]=gestionar de fișiere
-X-KDE-Keywords[ru]=диспетчер файлов
-X-KDE-Keywords[sk]=správca súborov
-X-KDE-Keywords[sl]=upravljalnik datotek
-X-KDE-Keywords[sr]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavian]=file manager,менаџер фајлова
-X-KDE-Keywords[sr@ijekavianlatin]=file manager,menadžer fajlova
-X-KDE-Keywords[sr@latin]=file manager,menadžer fajlova
-X-KDE-Keywords[sv]=filhanterare
-X-KDE-Keywords[tr]=dosya yöneticisi
-X-KDE-Keywords[uk]=менеджер,керування,файл,файли
-X-KDE-Keywords[vi]=file manager,trình quản lí tệp
-X-KDE-Keywords[x-test]=xxfile managerxx
-X-KDE-Keywords[zh_CN]=文件管理器
-X-KDE-Keywords[zh_TW]=檔案管理員
diff --git a/src/settings/kcm/kcmdolphinservices.h b/src/settings/kcm/kcmdolphinservices.h
deleted file mode 100644 (file)
index ea94a98..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * SPDX-FileCopyrightText: 2009 Peter Penz <peter.penz19@gmail.com>
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-#ifndef KCMDOLPHINSERVICES_H
-#define KCMDOLPHINSERVICES_H
-
-#include <KCModule>
-
-class ServicesSettingsPage;
-
-/**
- * @brief Allow to configure the Dolphin services.
- */
-class DolphinServicesConfigModule : public KCModule
-{
-    Q_OBJECT
-
-public:
-    DolphinServicesConfigModule(QWidget* parent, const QVariantList& args);
-    ~DolphinServicesConfigModule() override;
-
-    void save() override;
-    void defaults() override;
-
-private:
-    ServicesSettingsPage *m_services;
-};
-
-#endif
index ee0a1f3fdf3a4b92619913ff9f305096f1a26582..82db749b5c3ab4d5d9c5bf451f7b2421b230d3f4 100644 (file)
@@ -84,5 +84,5 @@ set_package_properties(Gem:test-unit PROPERTIES
     DESCRIPTION "Ruby gem 'test-unit' required for testing of servicemenu helpers.")
 if (Gem:test-unit_FOUND)
     add_test(NAME servicemenutest
-    COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/../settings/services/test/test_run.rb)
+    COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/../settings/contextmenu/test/test_run.rb)
 endif()