]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinmainwindow.cpp
GIT_SILENT made messages (after extraction)
[dolphin.git] / src / dolphinmainwindow.cpp
index f8b0fbb8b3a376d26158b8e48235a78c2bdeebec..b57ed4fc481e8aa3bfd1024cee5c5f5c4d0c8a06 100644 (file)
@@ -23,6 +23,7 @@
 
 #include "config-terminal.h"
 #include "global.h"
+#include "dolphinbookmarkhandler.h"
 #include "dolphindockwidget.h"
 #include "dolphincontextmenu.h"
 #include "dolphinnewfilemenu.h"
@@ -94,6 +95,7 @@ DolphinMainWindow::DolphinMainWindow() :
     m_actionHandler(nullptr),
     m_remoteEncoding(nullptr),
     m_settingsDialog(),
+    m_bookmarkHandler(nullptr),
     m_controlButton(nullptr),
     m_updateToolBarTimer(nullptr),
     m_lastHandleUrlStatJob(nullptr),
@@ -183,6 +185,16 @@ DolphinMainWindow::~DolphinMainWindow()
 {
 }
 
+QVector<DolphinViewContainer*> DolphinMainWindow::viewContainers() const
+{
+    QVector<DolphinViewContainer*> viewContainers;
+    viewContainers.reserve(m_tabWidget->count());
+    for (int i = 0; i < m_tabWidget->count(); ++i) {
+        viewContainers << m_tabWidget->tabPageAt(i)->activeViewContainer();
+    }
+    return viewContainers;
+}
+
 void DolphinMainWindow::openDirectories(const QList<QUrl>& dirs, bool splitView)
 {
     m_tabWidget->openDirectories(dirs, splitView);
@@ -982,6 +994,9 @@ void DolphinMainWindow::updateControlMenu()
     goMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Up)));
     goMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Home)));
     goMenu->addAction(ac->action(QStringLiteral("closed_tabs")));
+    KActionMenu *bookmarkMenu = new KActionMenu(i18nc("@title:menu", "&Bookmarks"), goMenu);
+    m_bookmarkHandler->fillControlMenu(bookmarkMenu->menu(), ac);
+    goMenu->addAction(bookmarkMenu);
     menu->addMenu(goMenu);
 
     // Add "Tool" menu
@@ -1240,6 +1255,11 @@ void DolphinMainWindow::setupActions()
     }
 #endif
 
+    // setup 'Bookmarks' menu
+    KActionMenu *bookmarkMenu = new KActionMenu(i18nc("@title:menu", "&Bookmarks"), this);
+    m_bookmarkHandler = new DolphinBookmarkHandler(this, actionCollection(), bookmarkMenu->menu(), this);
+    actionCollection()->addAction(QStringLiteral("bookmarks"), bookmarkMenu);
+
     // setup 'Settings' menu
     KToggleAction* showMenuBar = KStandardAction::showMenubar(nullptr, nullptr, actionCollection());
     connect(showMenuBar, &KToggleAction::triggered,                   // Fixes #286822