┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphintabpage.cpp
diff options
context:
space:
mode:
authorRafał Lichwała <[email protected]>2025-11-29 13:32:30 +0100
committerRafał Lichwała <[email protected]>2025-12-03 12:19:46 +0100
commit9e5926147606737a87cf17535db1ecbfd2c9a2c5 (patch)
treec3128c3f62fe7515d1f913fec93427668d15fde9 /src/dolphintabpage.cpp
parent861a95a262a2e4352c0913791bf8b43aa5f21424 (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.cpp16
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);