diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index 22272fb74b..e74adca558 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -200,6 +200,7 @@ void DolphinContextMenu::openItemContextMenu() { Q_ASSERT(!m_fileInfo.isNull()); + QAction* openParentAction = 0; QAction* openParentInNewWindowAction = 0; QAction* openParentInNewTabAction = 0; QAction* addToPlacesAction = 0; @@ -235,7 +236,13 @@ void DolphinContextMenu::openItemContextMenu() } addSeparator(); - } else if (m_baseUrl.protocol().contains("search")) { + } else if (m_baseUrl.protocol().contains("search") || m_baseUrl.protocol().contains("timeline")) { + openParentAction = new QAction(QIcon::fromTheme("document-open-folder"), + i18nc("@action:inmenu", + "Open Path"), + this); + addAction(openParentAction); + openParentInNewWindowAction = new QAction(QIcon::fromTheme("window-new"), i18nc("@action:inmenu", "Open Path in New Window"), @@ -306,6 +313,8 @@ void DolphinContextMenu::openItemContextMenu() PlacesItem* item = model.createPlacesItem(text, selectedUrl); model.appendItemToGroup(item); } + } else if (activatedAction == openParentAction) { + m_command = OpenParentFolder; } else if (activatedAction == openParentInNewWindowAction) { m_command = OpenParentFolderInNewWindow; } else if (activatedAction == openParentInNewTabAction) { diff --git a/src/dolphincontextmenu.h b/src/dolphincontextmenu.h index 180f91787c..3646ebcb51 100644 --- a/src/dolphincontextmenu.h +++ b/src/dolphincontextmenu.h @@ -58,6 +58,7 @@ public: enum Command { None, + OpenParentFolder, OpenParentFolderInNewWindow, OpenParentFolderInNewTab }; diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 21d1320201..f9ebe33ac5 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -773,6 +773,10 @@ void DolphinMainWindow::openContextMenu(const QPoint& pos, const DolphinContextMenu::Command command = contextMenu.data()->open(); switch (command) { + case DolphinContextMenu::OpenParentFolder: + changeUrl(KIO::upUrl(item.url())); + break; + case DolphinContextMenu::OpenParentFolderInNewWindow: { KRun::run("dolphin %u", QList() << KIO::upUrl(item.url()), this);