summaryrefslogtreecommitdiffstats
path: root/desktop-plasma/patches
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-plasma/patches')
-rw-r--r--desktop-plasma/patches/kde-plasma/kwin/0001-kcms-tabbox-Do-not-automatically-disable-highlightWi.patch176
1 files changed, 176 insertions, 0 deletions
diff --git a/desktop-plasma/patches/kde-plasma/kwin/0001-kcms-tabbox-Do-not-automatically-disable-highlightWi.patch b/desktop-plasma/patches/kde-plasma/kwin/0001-kcms-tabbox-Do-not-automatically-disable-highlightWi.patch
new file mode 100644
index 0000000..1fd3aa5
--- /dev/null
+++ b/desktop-plasma/patches/kde-plasma/kwin/0001-kcms-tabbox-Do-not-automatically-disable-highlightWi.patch
@@ -0,0 +1,176 @@
+From 1df05486ab86d28b108a5f63f9f26f9d3a40e15f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Wolfgang=20M=C3=BCller?= <wolf@oriole.systems>
+Date: Tue, 22 Oct 2024 15:15:29 +0200
+Subject: [PATCH] kcms/tabbox: Do not automatically disable highlightWindows
+ effect
+
+highlightWindows is an internal effect used to highlight one specific
+window whilst hiding all others. It's used by the tabbox and by
+plasmashell when hovering over a thumbnail.
+
+The user may enable or disable usage of this effect for the main and
+alternative task switcher. If it is enabled for neither, we currently
+disable the entire effect, regardless of whether or not it is still in
+use by plasmashell. This is not visible immediately, but will take until
+the next reboot or login to become active.
+
+As a dedicated configuration toggle for this internal effect is missing,
+the user cannot reasonably enable this feature again. They would have to
+know to enable either task switcher to use this effect again and, since
+the effect isn't reloaded automatically, reboot or relogin.
+
+Since this is an internal effect, we should simply not allow it to be
+disabled globally via either task switcher setting. Both tabbox and
+plasmashell already carry their own configuration settings to enable
+usage of this effect, so users can still tweak the behaviour there
+without also affecting other components.
+---
+ src/kcms/tabbox/CMakeLists.txt | 2 +-
+ src/kcms/tabbox/kwinpluginssettings.kcfg | 12 ------------
+ src/kcms/tabbox/kwinpluginssettings.kcfgc | 6 ------
+ src/kcms/tabbox/kwintabboxdata.cpp | 7 -------
+ src/kcms/tabbox/kwintabboxdata.h | 3 ---
+ src/kcms/tabbox/main.cpp | 10 ----------
+ 6 files changed, 1 insertion(+), 39 deletions(-)
+ delete mode 100644 src/kcms/tabbox/kwinpluginssettings.kcfg
+ delete mode 100644 src/kcms/tabbox/kwinpluginssettings.kcfgc
+
+diff --git a/src/kcms/tabbox/CMakeLists.txt b/src/kcms/tabbox/CMakeLists.txt
+index 12b9d056e7..6579b06565 100644
+--- a/src/kcms/tabbox/CMakeLists.txt
++++ b/src/kcms/tabbox/CMakeLists.txt
+@@ -14,7 +14,7 @@ set(kcm_kwintabbox_PART_SRCS
+ ki18n_wrap_ui(kcm_kwintabbox_PART_SRCS main.ui)
+ qt_add_dbus_interface(kcm_kwintabbox_PART_SRCS ${KWin_SOURCE_DIR}/src/org.kde.kwin.Effects.xml kwin_effects_interface)
+
+-kconfig_add_kcfg_files(kcm_kwintabbox_PART_SRCS kwintabboxsettings.kcfgc kwinswitcheffectsettings.kcfgc kwinpluginssettings.kcfgc)
++kconfig_add_kcfg_files(kcm_kwintabbox_PART_SRCS kwintabboxsettings.kcfgc kwinswitcheffectsettings.kcfgc)
+ kcoreaddons_add_plugin(kcm_kwintabbox SOURCES ${kcm_kwintabbox_PART_SRCS} INSTALL_NAMESPACE "plasma/kcms/systemsettings_qwidgets")
+
+ kcmutils_generate_desktop_file(kcm_kwintabbox)
+diff --git a/src/kcms/tabbox/kwinpluginssettings.kcfg b/src/kcms/tabbox/kwinpluginssettings.kcfg
+deleted file mode 100644
+index c3f3a1bce5..0000000000
+--- a/src/kcms/tabbox/kwinpluginssettings.kcfg
++++ /dev/null
+@@ -1,12 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
+- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+- xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
+- http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
+- <kcfgfile name="kwinrc" />
+- <group name="Plugins">
+- <entry key="highlightwindowEnabled" type="Bool">
+- <default>true</default>
+- </entry>
+- </group>
+-</kcfg>
+diff --git a/src/kcms/tabbox/kwinpluginssettings.kcfgc b/src/kcms/tabbox/kwinpluginssettings.kcfgc
+deleted file mode 100644
+index 38a966b75a..0000000000
+--- a/src/kcms/tabbox/kwinpluginssettings.kcfgc
++++ /dev/null
+@@ -1,6 +0,0 @@
+-File=kwinpluginssettings.kcfg
+-NameSpace=KWin::TabBox
+-ClassName=PluginsSettings
+-Mutators=true
+-DefaultValueGetters=true
+-ParentInConstructor=true
+diff --git a/src/kcms/tabbox/kwintabboxdata.cpp b/src/kcms/tabbox/kwintabboxdata.cpp
+index 86def04499..c8c7fd7a57 100644
+--- a/src/kcms/tabbox/kwintabboxdata.cpp
++++ b/src/kcms/tabbox/kwintabboxdata.cpp
+@@ -9,7 +9,6 @@
+
+ #include "kwintabboxdata.h"
+
+-#include "kwinpluginssettings.h"
+ #include "kwinswitcheffectsettings.h"
+ #include "kwintabboxsettings.h"
+ #include "shortcutsettings.h"
+@@ -23,7 +22,6 @@ KWinTabboxData::KWinTabboxData(QObject *parent)
+ : KCModuleData(parent)
+ , m_tabBoxConfig(new TabBoxSettings(QStringLiteral("TabBox"), this))
+ , m_tabBoxAlternativeConfig(new TabBoxSettings(QStringLiteral("TabBoxAlternative"), this))
+- , m_pluginsConfig(new PluginsSettings(this))
+ , m_shortcutConfig(new ShortcutSettings(this))
+ {
+ registerSkeleton(m_tabBoxConfig);
+@@ -41,11 +39,6 @@ TabBoxSettings *KWinTabboxData::tabBoxAlternativeConfig() const
+ return m_tabBoxAlternativeConfig;
+ }
+
+-PluginsSettings *KWinTabboxData::pluginsConfig() const
+-{
+- return m_pluginsConfig;
+-}
+-
+ ShortcutSettings *KWinTabboxData::shortcutConfig() const
+ {
+ return m_shortcutConfig;
+diff --git a/src/kcms/tabbox/kwintabboxdata.h b/src/kcms/tabbox/kwintabboxdata.h
+index db9db137af..89af34835d 100644
+--- a/src/kcms/tabbox/kwintabboxdata.h
++++ b/src/kcms/tabbox/kwintabboxdata.h
+@@ -19,7 +19,6 @@ namespace TabBox
+ {
+ class TabBoxSettings;
+ class SwitchEffectSettings;
+-class PluginsSettings;
+ class ShortcutSettings;
+
+ class KWinTabboxData : public KCModuleData
+@@ -31,13 +30,11 @@ public:
+
+ TabBoxSettings *tabBoxConfig() const;
+ TabBoxSettings *tabBoxAlternativeConfig() const;
+- PluginsSettings *pluginsConfig() const;
+ ShortcutSettings *shortcutConfig() const;
+
+ private:
+ TabBoxSettings *m_tabBoxConfig;
+ TabBoxSettings *m_tabBoxAlternativeConfig;
+- PluginsSettings *m_pluginsConfig;
+ ShortcutSettings *m_shortcutConfig;
+ };
+
+diff --git a/src/kcms/tabbox/main.cpp b/src/kcms/tabbox/main.cpp
+index 308dd17705..e6ef8c3593 100644
+--- a/src/kcms/tabbox/main.cpp
++++ b/src/kcms/tabbox/main.cpp
+@@ -37,7 +37,6 @@
+ #include <KPackage/PackageLoader>
+
+ // own
+-#include "kwinpluginssettings.h"
+ #include "kwintabboxconfigform.h"
+ #include "kwintabboxdata.h"
+ #include "kwintabboxsettings.h"
+@@ -229,8 +228,6 @@ void KWinTabBoxConfig::load()
+ m_data->tabBoxAlternativeConfig()->load();
+ m_data->shortcutConfig()->load();
+
+- m_data->pluginsConfig()->load();
+-
+ m_primaryTabBoxUi->updateUiFromConfig();
+ m_alternativeTabBoxUi->updateUiFromConfig();
+
+@@ -239,13 +236,6 @@ void KWinTabBoxConfig::load()
+
+ void KWinTabBoxConfig::save()
+ {
+- // effects
+- const bool highlightWindows = m_primaryTabBoxUi->highlightWindows() || m_alternativeTabBoxUi->highlightWindows();
+-
+- // activate effects if they are used otherwise deactivate them.
+- m_data->pluginsConfig()->setHighlightwindowEnabled(highlightWindows);
+- m_data->pluginsConfig()->save();
+-
+ m_data->tabBoxConfig()->save();
+ m_data->tabBoxAlternativeConfig()->save();
+ m_data->shortcutConfig()->save();
+--
+2.47.0
+