diff options
Diffstat (limited to 'src/settings/general')
| -rw-r--r-- | src/settings/general/behaviorsettingspage.cpp | 8 | ||||
| -rw-r--r-- | src/settings/general/behaviorsettingspage.h | 1 | ||||
| -rw-r--r-- | src/settings/general/confirmationssettingspage.cpp | 28 | ||||
| -rw-r--r-- | src/settings/general/confirmationssettingspage.h | 6 |
4 files changed, 43 insertions, 0 deletions
diff --git a/src/settings/general/behaviorsettingspage.cpp b/src/settings/general/behaviorsettingspage.cpp index add9acad5..0b5cee7aa 100644 --- a/src/settings/general/behaviorsettingspage.cpp +++ b/src/settings/general/behaviorsettingspage.cpp @@ -100,6 +100,11 @@ BehaviorSettingsPage::BehaviorSettingsPage(const QUrl& url, QWidget* parent) : m_useTabForSplitViewSwitch = new QCheckBox(i18nc("option:check", "Switch between split views with tab key")); topLayout->addRow(QString(), m_useTabForSplitViewSwitch); + // 'Close active view when turning off split view' + m_closeActiveSplitView = new QCheckBox(i18nc("option:check", "Turning off split view closes active pane")); + topLayout->addRow(QString(), m_closeActiveSplitView); + m_closeActiveSplitView->setToolTip(i18n("When deactivated, turning off split view will close the inactive pane")); + loadSettings(); connect(m_localViewProps, &QRadioButton::toggled, this, &BehaviorSettingsPage::changed); @@ -113,6 +118,7 @@ BehaviorSettingsPage::BehaviorSettingsPage(const QUrl& url, QWidget* parent) : connect(m_caseSensitiveSorting, &QRadioButton::toggled, this, &BehaviorSettingsPage::changed); connect(m_renameInline, &QCheckBox::toggled, this, &BehaviorSettingsPage::changed); connect(m_useTabForSplitViewSwitch, &QCheckBox::toggled, this, &BehaviorSettingsPage::changed); + connect(m_closeActiveSplitView, &QCheckBox::toggled, this, &BehaviorSettingsPage::changed); } BehaviorSettingsPage::~BehaviorSettingsPage() @@ -133,6 +139,7 @@ void BehaviorSettingsPage::applySettings() setSortingChoiceValue(settings); settings->setRenameInline(m_renameInline->isChecked()); settings->setUseTabForSwitchingSplitView(m_useTabForSplitViewSwitch->isChecked()); + settings->setCloseActiveSplitView(m_closeActiveSplitView->isChecked()); settings->save(); if (useGlobalViewProps) { @@ -165,6 +172,7 @@ void BehaviorSettingsPage::loadSettings() m_showSelectionToggle->setChecked(GeneralSettings::showSelectionToggle()); m_renameInline->setChecked(GeneralSettings::renameInline()); m_useTabForSplitViewSwitch->setChecked(GeneralSettings::useTabForSwitchingSplitView()); + m_closeActiveSplitView->setChecked(GeneralSettings::closeActiveSplitView()); loadSortingChoiceSettings(); } diff --git a/src/settings/general/behaviorsettingspage.h b/src/settings/general/behaviorsettingspage.h index 779fae377..d26a709d3 100644 --- a/src/settings/general/behaviorsettingspage.h +++ b/src/settings/general/behaviorsettingspage.h @@ -67,6 +67,7 @@ private: QCheckBox* m_renameInline; QCheckBox* m_useTabForSplitViewSwitch; + QCheckBox* m_closeActiveSplitView; }; #endif diff --git a/src/settings/general/confirmationssettingspage.cpp b/src/settings/general/confirmationssettingspage.cpp index b881b7a52..1d0eebdd3 100644 --- a/src/settings/general/confirmationssettingspage.cpp +++ b/src/settings/general/confirmationssettingspage.cpp @@ -40,6 +40,11 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) : m_confirmMoveToTrash(nullptr), m_confirmEmptyTrash(nullptr), m_confirmDelete(nullptr), + +#ifdef HAVE_TERMINAL + m_confirmClosingTerminalRunningProgram(nullptr), +#endif + m_confirmClosingMultipleTabs(nullptr) { QVBoxLayout* topLayout = new QVBoxLayout(this); @@ -62,6 +67,11 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) : m_confirmClosingMultipleTabs = new QCheckBox(i18nc("@option:check Ask for confirmation in Dolphin when", "Closing windows with multiple tabs"), this); +#ifdef HAVE_TERMINAL + m_confirmClosingTerminalRunningProgram = new QCheckBox(i18nc("@option:check Ask for confirmation when", + "Closing windows with a program running in the Terminal panel"), this); +#endif + topLayout->addWidget(confirmLabelKde); topLayout->addWidget(m_confirmMoveToTrash); topLayout->addWidget(m_confirmEmptyTrash); @@ -70,6 +80,11 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) : topLayout->addSpacing(Dolphin::VERTICAL_SPACER_HEIGHT); topLayout->addWidget(confirmLabelDolphin); topLayout->addWidget(m_confirmClosingMultipleTabs); + +#ifdef HAVE_TERMINAL + topLayout->addWidget(m_confirmClosingTerminalRunningProgram); +#endif + topLayout->addStretch(); loadSettings(); @@ -79,6 +94,10 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) : connect(m_confirmDelete, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed); connect(m_confirmScriptExecution, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed); connect(m_confirmClosingMultipleTabs, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed); + +#ifdef HAVE_TERMINAL + connect(m_confirmClosingTerminalRunningProgram, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed); +#endif } ConfirmationsSettingsPage::~ConfirmationsSettingsPage() @@ -103,6 +122,11 @@ void ConfirmationsSettingsPage::applySettings() GeneralSettings* settings = GeneralSettings::self(); settings->setConfirmClosingMultipleTabs(m_confirmClosingMultipleTabs->isChecked()); + +#ifdef HAVE_TERMINAL + settings->setConfirmClosingTerminalRunningProgram(m_confirmClosingTerminalRunningProgram->isChecked()); +#endif + settings->save(); } @@ -132,5 +156,9 @@ void ConfirmationsSettingsPage::loadSettings() m_confirmScriptExecution->setChecked(value == QLatin1String("alwaysAsk")); m_confirmClosingMultipleTabs->setChecked(GeneralSettings::confirmClosingMultipleTabs()); + +#ifdef HAVE_TERMINAL + m_confirmClosingTerminalRunningProgram->setChecked(GeneralSettings::confirmClosingTerminalRunningProgram()); +#endif } diff --git a/src/settings/general/confirmationssettingspage.h b/src/settings/general/confirmationssettingspage.h index 4cdb32b20..52b101b2a 100644 --- a/src/settings/general/confirmationssettingspage.h +++ b/src/settings/general/confirmationssettingspage.h @@ -19,6 +19,7 @@ #ifndef CONFIRMATIONSSETTINGSPAGE_H #define CONFIRMATIONSSETTINGSPAGE_H +#include "config-terminal.h" #include "settings/settingspagebase.h" class QCheckBox; @@ -47,6 +48,11 @@ private: QCheckBox* m_confirmMoveToTrash; QCheckBox* m_confirmEmptyTrash; QCheckBox* m_confirmDelete; + +#ifdef HAVE_TERMINAL + QCheckBox* m_confirmClosingTerminalRunningProgram; +#endif + QCheckBox* m_confirmClosingMultipleTabs; QCheckBox* m_confirmScriptExecution; }; |
