diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 0d8438075e..3966a08fe3 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -216,6 +216,9 @@ DolphinMainWindow::DolphinMainWindow() : showErrorMessage(errorMessage); }); #endif + + connect(GeneralSettings::self(), &GeneralSettings::splitViewChanged, + this, &DolphinMainWindow::slotSplitViewChanged); } DolphinMainWindow::~DolphinMainWindow() @@ -439,6 +442,12 @@ void DolphinMainWindow::openNewTab(const QUrl& url) m_tabWidget->openNewTab(url, QUrl()); } +void DolphinMainWindow::slotSplitViewChanged() +{ + m_tabWidget->currentTabPage()->setSplitViewEnabled(GeneralSettings::splitView(), WithAnimation); + updateSplitAction(); +} + void DolphinMainWindow::openInNewTab() { const KFileItemList& list = m_activeViewContainer->view()->selectedItems(); @@ -2096,11 +2105,6 @@ void DolphinMainWindow::refreshViews() m_tabWidget->refreshViews(); if (GeneralSettings::modifiedStartupSettings()) { - // The startup settings have been changed by the user (see bug #254947). - // Synchronize the split-view setting with the active view: - const bool splitView = GeneralSettings::splitView(); - m_tabWidget->currentTabPage()->setSplitViewEnabled(splitView, WithAnimation); - updateSplitAction(); updateWindowTitle(); } diff --git a/src/dolphinmainwindow.h b/src/dolphinmainwindow.h index 3a29d1c0a4..46515cc8be 100644 --- a/src/dolphinmainwindow.h +++ b/src/dolphinmainwindow.h @@ -171,6 +171,9 @@ public Q_SLOTS: */ void openNewTab(const QUrl& url); + /** @see GeneralSettings::splitViewChanged() */ + void slotSplitViewChanged(); + Q_SIGNALS: /** * Is sent if the selection of the currently active view has diff --git a/src/settings/dolphin_generalsettings.kcfg b/src/settings/dolphin_generalsettings.kcfg index 728d116346..08f01d72c9 100644 --- a/src/settings/dolphin_generalsettings.kcfg +++ b/src/settings/dolphin_generalsettings.kcfg @@ -9,6 +9,7 @@ KCompletion + @@ -49,6 +50,7 @@ false +