mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-19 16:31:21 +00:00
Added the "Open in new Tabs" action to the Dolphin Context menu.
BUG: 312296 REVIEW: 110371 FIXED-IN: 4.11.0
This commit is contained in:
parent
dfdb631b55
commit
05d9210e29
|
@ -235,6 +235,20 @@ void DolphinContextMenu::openItemContextMenu()
|
||||||
this);
|
this);
|
||||||
addAction(openParentInNewTabAction);
|
addAction(openParentInNewTabAction);
|
||||||
|
|
||||||
|
addSeparator();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
bool selectionHasOnlyDirs = true;
|
||||||
|
foreach (const KFileItem& item, m_selectedItems) {
|
||||||
|
if (!item.isDir()) {
|
||||||
|
selectionHasOnlyDirs = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (selectionHasOnlyDirs) {
|
||||||
|
// insert 'Open in new tab' entry
|
||||||
|
addAction(m_mainWindow->actionCollection()->action("open_in_new_tabs"));
|
||||||
addSeparator();
|
addSeparator();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -520,11 +520,15 @@ void DolphinMainWindow::activatePrevTab()
|
||||||
|
|
||||||
void DolphinMainWindow::openInNewTab()
|
void DolphinMainWindow::openInNewTab()
|
||||||
{
|
{
|
||||||
const KFileItemList list = m_activeViewContainer->view()->selectedItems();
|
const KFileItemList& list = m_activeViewContainer->view()->selectedItems();
|
||||||
if (list.isEmpty()) {
|
if (list.isEmpty()) {
|
||||||
openNewTab(m_activeViewContainer->url());
|
openNewTab(m_activeViewContainer->url());
|
||||||
} else if ((list.count() == 1) && list[0].isDir()) {
|
} else {
|
||||||
openNewTab(list[0].url());
|
foreach (const KFileItem& item, list) {
|
||||||
|
if (item.isDir()) {
|
||||||
|
openNewTab(item.url());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1645,6 +1649,11 @@ void DolphinMainWindow::setupActions()
|
||||||
openInNewTab->setIcon(KIcon("tab-new"));
|
openInNewTab->setIcon(KIcon("tab-new"));
|
||||||
connect(openInNewTab, SIGNAL(triggered()), this, SLOT(openInNewTab()));
|
connect(openInNewTab, SIGNAL(triggered()), this, SLOT(openInNewTab()));
|
||||||
|
|
||||||
|
KAction* openInNewTabs = actionCollection()->addAction("open_in_new_tabs");
|
||||||
|
openInNewTabs->setText(i18nc("@action:inmenu", "Open in New Tabs"));
|
||||||
|
openInNewTabs->setIcon(KIcon("tab-new"));
|
||||||
|
connect(openInNewTabs, SIGNAL(triggered()), this, SLOT(openInNewTab()));
|
||||||
|
|
||||||
KAction* openInNewWindow = actionCollection()->addAction("open_in_new_window");
|
KAction* openInNewWindow = actionCollection()->addAction("open_in_new_window");
|
||||||
openInNewWindow->setText(i18nc("@action:inmenu", "Open in New Window"));
|
openInNewWindow->setText(i18nc("@action:inmenu", "Open in New Window"));
|
||||||
openInNewWindow->setIcon(KIcon("window-new"));
|
openInNewWindow->setIcon(KIcon("window-new"));
|
||||||
|
|
Loading…
Reference in a new issue