From eaa43c5d89024b90fada14a76702deefff54f3ea Mon Sep 17 00:00:00 2001 From: Rafał Lichwała Date: Mon, 24 Nov 2025 20:32:08 +0100 Subject: kconfig: add update script for split view closing options --- src/settings/dolphin_splitviewsettings.upd | 6 ++++++ src/settings/dolphin_update_splitviewsettings.cpp | 25 +++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 src/settings/dolphin_splitviewsettings.upd create mode 100644 src/settings/dolphin_update_splitviewsettings.cpp (limited to 'src/settings') diff --git a/src/settings/dolphin_splitviewsettings.upd b/src/settings/dolphin_splitviewsettings.upd new file mode 100644 index 000000000..212f005f7 --- /dev/null +++ b/src/settings/dolphin_splitviewsettings.upd @@ -0,0 +1,6 @@ +#Configuration update for Dolphin +Version=6 + +#Convert bool CloseActiveSplitView to enum CloseSplitViewChoice +Id=24.11.2025-convert-closeactivesplitview-bool-to-closesplitviewchoice-enum +Script=dolphin_update_splitviewsettings diff --git a/src/settings/dolphin_update_splitviewsettings.cpp b/src/settings/dolphin_update_splitviewsettings.cpp new file mode 100644 index 000000000..5ba905442 --- /dev/null +++ b/src/settings/dolphin_update_splitviewsettings.cpp @@ -0,0 +1,25 @@ +#include +#include + +int main() +{ + const auto closeActiveSplitView = QStringLiteral("CloseActiveSplitView"); + const auto closeSplitViewChoice = QStringLiteral("CloseSplitViewChoice"); + auto config = KSharedConfig::openConfig(QStringLiteral("dolphinrc")); + + KConfigGroup general = config->group(QStringLiteral("General")); + if (!general.hasKey(closeActiveSplitView)) { + return EXIT_SUCCESS; + } + + const auto value = general.readEntry(closeActiveSplitView); + if (value == QStringLiteral("true")) { + general.deleteEntry(closeActiveSplitView); + general.writeEntry(closeSplitViewChoice, QStringLiteral("ActiveView")); + } else if (value == QStringLiteral("false")) { + general.deleteEntry(closeActiveSplitView); + general.writeEntry(closeSplitViewChoice, QStringLiteral("InactiveView")); + } + + return general.sync() ? EXIT_SUCCESS : EXIT_FAILURE; +} -- cgit v1.3