- Q_ASSERT(popup != 0);
- const KActionCollection* collection = m_mainWindow->actionCollection();
-
- // insert 'Cut', 'Copy' and 'Paste'
- QAction* cutAction = collection->action(KStandardAction::name(KStandardAction::Cut));
- QAction* copyAction = collection->action(KStandardAction::name(KStandardAction::Copy));
- QAction* pasteAction = createPasteAction();
-
- popup->addAction(cutAction);
- popup->addAction(copyAction);
- popup->addAction(pasteAction);
- popup->addSeparator();
-
- // insert 'Rename'
- QAction* renameAction = collection->action("rename");
- popup->addAction(renameAction);
-
- // insert 'Move to Trash' and (optionally) 'Delete'
- KSharedConfig::Ptr globalConfig = KSharedConfig::openConfig("kdeglobals", KConfig::IncludeGlobals);
- KConfigGroup configGroup(globalConfig, "KDE");
- bool showDeleteCommand = configGroup.readEntry("ShowDeleteCommand", false);
-
- const KUrl& url = m_mainWindow->activeViewContainer()->url();
- if (url.isLocalFile()) {
- QAction* moveToTrashAction = collection->action("move_to_trash");
- popup->addAction(moveToTrashAction);
- } else {
- showDeleteCommand = true;
+ const KActionCollection *collection = m_mainWindow->actionCollection();
+
+ // Insert 'Cut', 'Copy', 'Copy Location' and 'Paste'
+ addAction(collection->action(KStandardAction::name(KStandardAction::Cut)));
+ addAction(collection->action(KStandardAction::name(KStandardAction::Copy)));
+ 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);