diff options
Diffstat (limited to 'src/dolphintabpage.cpp')
| -rw-r--r-- | src/dolphintabpage.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/dolphintabpage.cpp b/src/dolphintabpage.cpp index 1ceda7d9f..8373d17b8 100644 --- a/src/dolphintabpage.cpp +++ b/src/dolphintabpage.cpp @@ -139,16 +139,28 @@ void DolphinTabPage::setSplitViewEnabled(bool enabled, Animated animated, const std::swap(m_primaryViewContainer, m_secondaryViewContainer); m_primaryViewActive = !m_primaryViewActive; }; - if (GeneralSettings::closeActiveSplitView()) { + using Choice = GeneralSettings::EnumCloseSplitViewChoice; + switch (GeneralSettings::closeSplitViewChoice()) { + case Choice::ActiveView: view = activeViewContainer(); if (m_primaryViewActive) { swapActiveView(); } - } else { + break; + case Choice::InactiveView: view = m_primaryViewActive ? m_secondaryViewContainer : m_primaryViewContainer; if (!m_primaryViewActive) { swapActiveView(); } + break; + case Choice::RightView: + view = m_secondaryViewContainer; + if (!m_primaryViewActive) { + swapActiveView(); + } + break; + default: + Q_UNREACHABLE(); } m_primaryViewContainer->setActive(true); m_navigatorsWidget->followViewContainersGeometry(m_primaryViewContainer, nullptr); |
