summaryrefslogblamecommitdiffstats
path: root/desktop-plasma/patches/kde-plasma/kwin/0001-kcms-tabbox-Do-not-automatically-disable-highlightWi.patch
blob: 1fd3aa5b0bec4a14a6c0c0c8ce51586b61057689 (plain) (tree)















































































































































































                                                                                                                                   
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