#include <QDir>
DolphinContextMenu::DolphinContextMenu(DolphinView* parent,
- KFileItem* fileInfo,
- const QPoint& pos) :
+ KFileItem* fileInfo) :
m_dolphinView(parent),
- m_fileInfo(fileInfo),
- m_pos(pos)
+ m_fileInfo(fileInfo)
{
}
popup->addMenu(viewModeMenu);
popup->addSeparator();
- QAction* bookmarkAction = popup->addAction(i18n("Bookmark this folder"));
+ QAction* bookmarkAction = popup->addAction(KIcon("bookmark-folder"), i18n("Bookmark this folder"));
popup->addSeparator();
QAction* propertiesAction = popup->addAction(i18n("Properties..."));
- QAction* activatedAction = popup->exec(m_pos);
+ QAction* activatedAction = popup->exec(QCursor::pos());
if (activatedAction == propertiesAction) {
new KPropertiesDialog(dolphin->activeView()->url());
}
QAction* renameAction = dolphin->actionCollection()->action("rename");
popup->addAction(renameAction);
- // insert 'Move to Trash' for local Urls, otherwise insert 'Delete'
+ // insert 'Move to Trash' and (optionally) 'Delete'
+ const KSharedConfig::Ptr globalConfig = KSharedConfig::openConfig("kdeglobals", KConfig::NoGlobals);
+ const KConfigGroup kdeConfig(globalConfig, "KDE");
+ bool showDeleteCommand = kdeConfig.readEntry("ShowDeleteCommand", false);
const KUrl& url = dolphin->activeView()->url();
if (url.isLocalFile()) {
QAction* moveToTrashAction = dolphin->actionCollection()->action("move_to_trash");
popup->addAction(moveToTrashAction);
}
else {
+ showDeleteCommand = true;
+ }
+
+ if (showDeleteCommand) {
QAction* deleteAction = dolphin->actionCollection()->action("delete");
popup->addAction(deleteAction);
}
// urls contains only one item, i.e. no multiple selection made
QAction* bookmarkAction = 0;
if (m_fileInfo->isDir() && (urls.count() == 1)) {
- bookmarkAction = popup->addAction(i18n("Bookmark this folder"));
+ bookmarkAction = popup->addAction(KIcon("bookmark-folder"), i18n("Bookmark this folder"));
}
// Insert 'Open With...' sub menu
QAction* propertiesAction = dolphin->actionCollection()->action("properties");
popup->addAction(propertiesAction);
- QAction* activatedAction = popup->exec(m_pos);
+ QAction* activatedAction = popup->exec(QCursor::pos());
if ((bookmarkAction!= 0) && (activatedAction == bookmarkAction)) {
const KUrl selectedUrl(m_fileInfo->url());
QStringList entries = dir.entryList(QDir::Files);
for (QStringList::ConstIterator entryIt = entries.begin(); entryIt != entries.end(); ++entryIt) {
- KSimpleConfig cfg(*dirIt + *entryIt, true);
- cfg.setDesktopGroup();
+ KConfigGroup cfg(KSharedConfig::openConfig( *dirIt + *entryIt, KConfig::OnlyLocal), "Desktop Entry" );
if ((cfg.hasKey("Actions") || cfg.hasKey("X-KDE-GetActionMenu")) && cfg.hasKey("ServiceTypes")) {
//const QStringList types = cfg.readListEntry("ServiceTypes");
QStringList types;