diff options
| author | Rafał Lichwała <[email protected]> | 2025-11-29 13:32:30 +0100 |
|---|---|---|
| committer | Rafał Lichwała <[email protected]> | 2025-12-03 12:19:46 +0100 |
| commit | 9e5926147606737a87cf17535db1ecbfd2c9a2c5 (patch) | |
| tree | c3128c3f62fe7515d1f913fec93427668d15fde9 /src/dolphintabpage.cpp | |
| parent | 861a95a262a2e4352c0913791bf8b43aa5f21424 (diff) | |
folderstabssettingspage: add 3 options for closing split view
There is one bool setting in Dolphin Interface->Folders&Tabs->Split_view
which determines which panel is closed on "Close split view" button
click (currently focused or unfocused one).
This commit replaces this setting with (enum-based) 3-state combo box.
Since now we can set "When closing a split view" action to:
- Close the active pane
- Close the inactive pane
- Close the right pane
BUG: 464696
BUG: 186185
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); |
