X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/da795d20e2f2fa57ac9cafdffcfac4d092d8eaea..6b42e7ba3b87af93d17f714d05ff2ddb09d13519:/src/dolphincontextmenu.cpp diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index 468b7d69d..f60d59298 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -23,6 +23,7 @@ #include "dolphinmainwindow.h" #include "dolphinsettings.h" #include "dolphinview.h" +#include "dolphinviewcontainer.h" #include #include @@ -57,13 +58,14 @@ DolphinContextMenu::DolphinContextMenu(DolphinMainWindow* parent, { // The context menu either accesses the URLs of the selected items // or the items itself. To increase the performance both lists are cached. - DolphinView* view = m_mainWindow->activeView(); + DolphinView* view = m_mainWindow->activeViewContainer()->view(); m_selectedUrls = view->selectedUrls(); m_selectedItems = view->selectedItems(); } DolphinContextMenu::~DolphinContextMenu() -{} +{ +} void DolphinContextMenu::open() { @@ -110,9 +112,9 @@ void DolphinContextMenu::openTrashContextMenu() if (popup->exec(QCursor::pos()) == emptyTrashAction) { const QString text(i18n("Do you really want to empty the Trash? All items will get deleted.")); const bool del = KMessageBox::warningContinueCancel(m_mainWindow, - text, - QString(), - KGuiItem(i18n("Empty Trash"), KIcon("user-trash")) + text, + QString(), + KGuiItem(i18n("Empty Trash"), KIcon("user-trash")) ) == KMessageBox::Continue; if (del) { KonqOperations::emptyTrash(m_mainWindow); @@ -179,7 +181,7 @@ void DolphinContextMenu::openItemContextMenu() const KUrl selectedUrl(m_fileInfo->url()); if (selectedUrl.isValid()) { DolphinSettings::instance().placesModel()->addPlace(selectedUrl.fileName(), - selectedUrl); + selectedUrl); } } else if (serviceActions.contains(activatedAction)) { // one of the 'Actions' items has been selected @@ -233,6 +235,12 @@ void DolphinContextMenu::openViewportContextMenu() viewModeMenu->addAction(previewsMode); popup->addMenu(viewModeMenu); + + QAction* toggleViewsAction = 0; + if (m_mainWindow->isSplit()) { + toggleViewsAction = popup->addAction(i18n("Toggle Views")); + } + popup->addSeparator(); QAction* bookmarkAction = popup->addAction(KIcon("bookmark-folder"), i18n("Bookmark This Folder...")); @@ -240,16 +248,18 @@ void DolphinContextMenu::openViewportContextMenu() QAction* propertiesAction = popup->addAction(i18n("Properties")); - QAction* activatedAction = popup->exec(QCursor::pos()); - if (activatedAction == propertiesAction) { - const KUrl& url = m_mainWindow->activeView()->url(); + QAction* action = popup->exec(QCursor::pos()); + if (action == propertiesAction) { + const KUrl& url = m_mainWindow->activeViewContainer()->url(); KPropertiesDialog dialog(url); dialog.exec(); - } else if (activatedAction == bookmarkAction) { - const KUrl& url = m_mainWindow->activeView()->url(); + } else if (action == bookmarkAction) { + const KUrl& url = m_mainWindow->activeViewContainer()->url(); if (url.isValid()) { DolphinSettings::instance().placesModel()->addPlace(url.fileName(), url); } + } else if ((toggleViewsAction != 0) && (action == toggleViewsAction)) { + m_mainWindow->toggleViews(); } popup->deleteLater(); @@ -278,7 +288,7 @@ void DolphinContextMenu::insertDefaultItemActions(KMenu* popup) const KSharedConfig::Ptr globalConfig = KSharedConfig::openConfig("kdeglobals", KConfig::NoGlobals); const KConfigGroup kdeConfig(globalConfig, "KDE"); bool showDeleteCommand = kdeConfig.readEntry("ShowDeleteCommand", false); - const KUrl& url = m_mainWindow->activeView()->url(); + const KUrl& url = m_mainWindow->activeViewContainer()->url(); if (url.isLocalFile()) { QAction* moveToTrashAction = collection->action("move_to_trash"); popup->addAction(moveToTrashAction); @@ -360,7 +370,7 @@ QList DolphinContextMenu::insertOpenWithItems(KMenu* popup, } QList DolphinContextMenu::insertActionItems(KMenu* popup, - QVector& actionsVector) + QVector& actionsVector) { // Parts of the following code have been taken // from the class KonqOperations located in