]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinmainwindow.cpp
Do not delete sub menus of the control menu explicitly
[dolphin.git] / src / dolphinmainwindow.cpp
index 1eda03e3c74a120fee35aee53b56e453bc917ded..81c55e814c26085adfd2a9bc69fee401dc3505ed 100644 (file)
@@ -21,6 +21,7 @@
 
 #include "dolphinmainwindow.h"
 
+#include "global.h"
 #include "dolphindockwidget.h"
 #include "dolphincontextmenu.h"
 #include "dolphinnewfilemenu.h"
@@ -48,7 +49,6 @@
 #include <KActionCollection>
 #include <KActionMenu>
 #include <KConfig>
-#include <kdeversion.h>
 #include <kdualaction.h>
 #include <KJobWidgets>
 #include <QLineEdit>
@@ -170,14 +170,14 @@ DolphinMainWindow::~DolphinMainWindow()
 {
 }
 
-void DolphinMainWindow::openDirectories(const QList<QUrl>& dirs)
+void DolphinMainWindow::openDirectories(const QList<QUrl>& dirs, bool splitView)
 {
-    m_tabWidget->openDirectories(dirs);
+    m_tabWidget->openDirectories(dirs, splitView);
 }
 
-void DolphinMainWindow::openFiles(const QList<QUrl>& files)
+void DolphinMainWindow::openFiles(const QList<QUrl>& files, bool splitView)
 {
-    m_tabWidget->openFiles(files);
+    m_tabWidget->openFiles(files, splitView);
 }
 
 void DolphinMainWindow::showCommand(CommandType command)
@@ -301,11 +301,6 @@ void DolphinMainWindow::openNewTab(const QUrl& url)
     m_tabWidget->openNewTab(url);
 }
 
-void DolphinMainWindow::openNewActivatedTab(const QUrl& url)
-{
-    m_tabWidget->openNewActivatedTab(url);
-}
-
 void DolphinMainWindow::openInNewTab()
 {
     const KFileItemList& list = m_activeViewContainer->view()->selectedItems();
@@ -645,7 +640,7 @@ void DolphinMainWindow::goHome(Qt::MouseButtons buttons)
 {
     // The default case (left button pressed) is handled in goHome().
     if (buttons == Qt::MiddleButton) {
-        openNewTab(GeneralSettings::self()->homeUrl());
+        openNewTab(Dolphin::homeUrl());
     }
 }
 
@@ -794,8 +789,8 @@ void DolphinMainWindow::updateControlMenu()
     QMenu* menu = qobject_cast<QMenu*>(sender());
     Q_ASSERT(menu);
 
-    // All actions get cleared by QMenu::clear(). The sub-menus are deleted
-    // by connecting to the aboutToHide() signal from the parent-menu.
+    // All actions get cleared by QMenu::clear(). This includes the sub-menus
+    // because 'menu' is their parent.
     menu->clear();
 
     KActionCollection* ac = actionCollection();
@@ -845,7 +840,6 @@ void DolphinMainWindow::updateControlMenu()
 
     // Add "Go" menu
     QMenu* goMenu = new QMenu(i18nc("@action:inmenu", "Go"), menu);
-    connect(menu, &QMenu::aboutToHide, goMenu, &QMenu::deleteLater);
     goMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Back)));
     goMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Forward)));
     goMenu->addAction(ac->action(KStandardAction::name(KStandardAction::Up)));
@@ -855,7 +849,6 @@ void DolphinMainWindow::updateControlMenu()
 
     // Add "Tool" menu
     QMenu* toolsMenu = new QMenu(i18nc("@action:inmenu", "Tools"), menu);
-    connect(menu, &QMenu::aboutToHide, toolsMenu, &QMenu::deleteLater);
     toolsMenu->addAction(ac->action("show_filter_bar"));
     toolsMenu->addAction(ac->action("compare_files"));
     toolsMenu->addAction(ac->action("open_terminal"));
@@ -869,7 +862,6 @@ void DolphinMainWindow::updateControlMenu()
 
     // Add "Help" menu
     QMenu* helpMenu = new QMenu(i18nc("@action:inmenu", "Help"), menu);
-    connect(menu, &QMenu::aboutToHide, helpMenu, &QMenu::deleteLater);
     helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::HelpContents)));
     helpMenu->addAction(ac->action(KStandardAction::name(KStandardAction::WhatsThis)));
     helpMenu->addSeparator();
@@ -1341,7 +1333,7 @@ void DolphinMainWindow::createControlButton()
     Q_ASSERT(!m_controlButton);
 
     m_controlButton = new QToolButton(this);
-    m_controlButton->setIcon(QIcon::fromTheme("applications-system"));
+    m_controlButton->setIcon(QIcon::fromTheme("application-menu"));
     m_controlButton->setText(i18nc("@action", "Control"));
     m_controlButton->setPopupMode(QToolButton::InstantPopup);
     m_controlButton->setToolButtonStyle(toolBar()->toolButtonStyle());