summaryrefslogtreecommitdiff
path: root/kde-plasma/plasma-workspace/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-09-16 22:05:01 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-09-16 22:05:01 +0100
commitcc4618c9ba3d974948ebf340b542d8cb01db2f55 (patch)
tree125ee67bb9e0d548771cf7b61d04bb1f0dc57687 /kde-plasma/plasma-workspace/files
parent677b7ba5c317778df2ad7e70df94b9b7eec4adbc (diff)
gentoo resync : 16.09.2021
Diffstat (limited to 'kde-plasma/plasma-workspace/files')
-rw-r--r--kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-dangerous-shortcuts.patch45
-rw-r--r--kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-revert-activate-krunner.patch56
-rw-r--r--kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency-panelConfig.patch27
-rw-r--r--kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency.patch376
-rw-r--r--kde-plasma/plasma-workspace/files/plasma-workspace-5.22.5-fix-powermanagement-inhibition.patch35
5 files changed, 35 insertions, 504 deletions
diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-dangerous-shortcuts.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-dangerous-shortcuts.patch
deleted file mode 100644
index f04bb866d5d3..000000000000
--- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-dangerous-shortcuts.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From e8e17c5ef8734fa56a78405e32277568e4e1095e Mon Sep 17 00:00:00 2001
-From: Nate Graham <nate@kde.org>
-Date: Thu, 22 Apr 2021 08:38:18 -0600
-Subject: [PATCH] [ksmserver] Remove default shortcuts for "Without
- Confirmation" actions
-
-These actions bypass the user setting for whether or not to show the
-logout screen and always log out/reboot/etc. immediately. Because they
-have default keyboard shortcuts, they can be triggered by accident and
-cause unexpected logouts/reboots/etc.
-
-BUG: 435954
-FIXED-IN: 5.22
----
- ksmserver/server.cpp | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/ksmserver/server.cpp b/ksmserver/server.cpp
-index ac9da9f09..6f3179fb9 100644
---- a/ksmserver/server.cpp
-+++ b/ksmserver/server.cpp
-@@ -880,17 +880,17 @@ void KSMServer::setupShortcuts()
-
- a = actionCollection->addAction(QStringLiteral("Log Out Without Confirmation"));
- a->setText(i18n("Log Out Without Confirmation"));
-- KGlobalAccel::self()->setGlobalShortcut(a, QList<QKeySequence>() << Qt::ALT + Qt::CTRL + Qt::SHIFT + Qt::Key_Delete);
-+ KGlobalAccel::self()->setGlobalShortcut(a, QKeySequence());
- connect(a, &QAction::triggered, this, &KSMServer::logoutWithoutConfirmation);
-
- a = actionCollection->addAction(QStringLiteral("Halt Without Confirmation"));
- a->setText(i18n("Halt Without Confirmation"));
-- KGlobalAccel::self()->setGlobalShortcut(a, QList<QKeySequence>() << Qt::ALT + Qt::CTRL + Qt::SHIFT + Qt::Key_PageDown);
-+ KGlobalAccel::self()->setGlobalShortcut(a, QKeySequence());
- connect(a, &QAction::triggered, this, &KSMServer::haltWithoutConfirmation);
-
- a = actionCollection->addAction(QStringLiteral("Reboot Without Confirmation"));
- a->setText(i18n("Reboot Without Confirmation"));
-- KGlobalAccel::self()->setGlobalShortcut(a, QList<QKeySequence>() << Qt::ALT + Qt::CTRL + Qt::SHIFT + Qt::Key_PageUp);
-+ KGlobalAccel::self()->setGlobalShortcut(a, QKeySequence());
- connect(a, &QAction::triggered, this, &KSMServer::rebootWithoutConfirmation);
- }
- }
---
-GitLab
-
diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-revert-activate-krunner.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-revert-activate-krunner.patch
deleted file mode 100644
index c2637286da10..000000000000
--- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-revert-activate-krunner.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 9bdae154bb3711b0220d0a8a685b2329f487d1f2 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Mon, 15 Feb 2021 17:35:19 +0100
-Subject: [PATCH] Revert "Activate KRunner instead of running the binary"
-
-Causes applications to be started with cwd "/".
-
-See also: https://bugs.gentoo.org/767478
-
-This reverts commit 0e575a20ef36532b5b40a40ea30f915976942477.
----
- krunner/CMakeLists.txt | 3 ++-
- krunner/{krunner.desktop => krunner.desktop.cmake} | 4 ++--
- 2 files changed, 4 insertions(+), 3 deletions(-)
- rename krunner/{krunner.desktop => krunner.desktop.cmake} (94%)
-
-diff --git a/krunner/CMakeLists.txt b/krunner/CMakeLists.txt
-index 07d27c1dc..8e1f2e3bd 100644
---- a/krunner/CMakeLists.txt
-+++ b/krunner/CMakeLists.txt
-@@ -31,7 +31,8 @@ target_compile_definitions(krunner PRIVATE -DPROJECT_VERSION="${PROJECT_VERSION}
- install(TARGETS krunner ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
- install(FILES ${krunner_dbusAppXML} DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR} )
-
--install(FILES krunner.desktop DESTINATION ${DATA_INSTALL_DIR}/kglobalaccel)
-+configure_file(krunner.desktop.cmake ${CMAKE_CURRENT_BINARY_DIR}/krunner.desktop @ONLY)
-+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/krunner.desktop DESTINATION ${DATA_INSTALL_DIR}/kglobalaccel)
-
- set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KRunnerAppDBusInterface")
- configure_package_config_file(KRunnerAppDBusInterfaceConfig.cmake.in
-diff --git a/krunner/krunner.desktop b/krunner/krunner.desktop.cmake
-similarity index 94%
-rename from krunner/krunner.desktop
-rename to krunner/krunner.desktop.cmake
-index 7a0398696..c4c8c9d92 100644
---- a/krunner/krunner.desktop
-+++ b/krunner/krunner.desktop.cmake
-@@ -1,5 +1,5 @@
- [Desktop Entry]
--Exec=dbus-send --type=method_call --dest=org.kde.krunner /App org.kde.krunner.App.toggleDisplay
-+Exec=@CMAKE_INSTALL_PREFIX@/bin/krunner
- Name=KRunner
- Name[ar]=مشغّل.ك
- Name[ast]=KRunner
-@@ -60,7 +60,7 @@ Actions=RunClipboard
- X-KDE-Wayland-Interfaces=org_kde_plasma_window_management
-
- [Desktop Action RunClipboard]
--Exec=dbus-send --type=method_call --dest=org.kde.krunner /App org.kde.krunner.App.displayWithClipboardContents
-+Exec=krunner -c
- Name=Run command on clipboard contents
- Name[az]=Əmri, mübadilə buferindən başlatmaq
- Name[ca]=Executa una ordre al contingut del porta-retalls
---
-2.31.1
-
diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency-panelConfig.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency-panelConfig.patch
deleted file mode 100644
index fb7993e6db72..000000000000
--- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency-panelConfig.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 1cf02aad96bfe650a1f4d1465ae15234205fb061 Mon Sep 17 00:00:00 2001
-From: Bharadwaj Raju <bharadwaj.raju777@protonmail.com>
-Date: Mon, 26 Apr 2021 18:47:51 +0000
-Subject: [PATCH] Load panelOpacity from config parent, not from config
-
-BUG: 434285
-FIXED-IN: 5.22
----
- shell/panelview.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/shell/panelview.cpp b/shell/panelview.cpp
-index 5ed743024..4533e856f 100644
---- a/shell/panelview.cpp
-+++ b/shell/panelview.cpp
-@@ -633,7 +633,7 @@ void PanelView::restore()
- // the place for this config key is changed in Plasma 5.9
- // Do NOT use readConfigValueWithFallBack
- setVisibilityMode((VisibilityMode)panelConfig.parent().readEntry<int>("panelVisibility", panelConfig.readEntry<int>("panelVisibility", (int)NormalPanel)));
-- setOpacityMode((OpacityMode)readConfigValueWithFallBack("panelOpacity", PanelView::OpacityMode::Adaptive));
-+ setOpacityMode((OpacityMode)config().parent().readEntry<int>("panelOpacity", configDefaults().parent().readEntry<int>("panelOpacity", PanelView::OpacityMode::Adaptive)));
- m_initCompleted = true;
- resizePanel();
- positionPanel();
---
-GitLab
-
diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency.patch
deleted file mode 100644
index 1a925a137cef..000000000000
--- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.21.5-transparency.patch
+++ /dev/null
@@ -1,376 +0,0 @@
-From 7db8d5ee551f30576588d31470fe287b6ad2adcd Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Niccol=C3=B2=20Venerandi?= <niccolo@venerandi.com>
-Date: Mon, 1 Mar 2021 22:14:43 +0000
-Subject: [PATCH] Add support for adaptive opacity panels
-
-Co-authored-by: Jan Blackquill <uhhadd@gmail.com>
----
- libtaskmanager/taskfilterproxymodel.cpp | 26 ++++++++++++++++++
- libtaskmanager/taskfilterproxymodel.h | 19 ++++++++++++++
- libtaskmanager/tasksmodel.cpp | 11 ++++++++
- libtaskmanager/tasksmodel.h | 19 ++++++++++++++
- shell/panelconfigview.cpp | 11 ++++++++
- shell/panelconfigview.h | 5 ++++
- shell/panelview.cpp | 35 +++++++++++++++++++++++++
- shell/panelview.h | 28 ++++++++++++++++++++
- 8 files changed, 154 insertions(+)
-
-diff --git a/libtaskmanager/taskfilterproxymodel.cpp b/libtaskmanager/taskfilterproxymodel.cpp
-index 37a3076fd..6bb27537a 100644
---- a/libtaskmanager/taskfilterproxymodel.cpp
-+++ b/libtaskmanager/taskfilterproxymodel.cpp
-@@ -40,6 +40,7 @@ public:
- bool filterByScreen = false;
- bool filterByActivity = false;
- bool filterNotMinimized = false;
-+ bool filterNotMaximized = false;
- bool filterSkipTaskbar = true;
- bool filterSkipPager = false;
-
-@@ -185,6 +186,22 @@ void TaskFilterProxyModel::setFilterNotMinimized(bool filter)
- }
- }
-
-+bool TaskFilterProxyModel::filterNotMaximized() const
-+{
-+ return d->filterNotMaximized;
-+}
-+
-+void TaskFilterProxyModel::setFilterNotMaximized(bool filter)
-+{
-+ if (d->filterNotMaximized != filter) {
-+ d->filterNotMaximized = filter;
-+
-+ invalidateFilter();
-+
-+ emit filterNotMaximizedChanged();
-+ }
-+}
-+
- bool TaskFilterProxyModel::filterSkipTaskbar() const
- {
- return d->filterSkipTaskbar;
-@@ -301,6 +318,15 @@ bool TaskFilterProxyModel::acceptsRow(int sourceRow) const
- }
- }
-
-+ // Filter not maximized.
-+ if (d->filterNotMaximized) {
-+ bool isMaximized = sourceIdx.data(AbstractTasksModel::IsMaximized).toBool();
-+
-+ if (!isMaximized) {
-+ return false;
-+ }
-+ }
-+
- return true;
- }
-
-diff --git a/libtaskmanager/taskfilterproxymodel.h b/libtaskmanager/taskfilterproxymodel.h
-index 7ad2cb9ce..88ba3adab 100644
---- a/libtaskmanager/taskfilterproxymodel.h
-+++ b/libtaskmanager/taskfilterproxymodel.h
-@@ -52,6 +52,7 @@ class TASKMANAGER_EXPORT TaskFilterProxyModel : public QSortFilterProxyModel, pu
- Q_PROPERTY(bool filterByScreen READ filterByScreen WRITE setFilterByScreen NOTIFY filterByScreenChanged)
- Q_PROPERTY(bool filterByActivity READ filterByActivity WRITE setFilterByActivity NOTIFY filterByActivityChanged)
- Q_PROPERTY(bool filterNotMinimized READ filterNotMinimized WRITE setFilterNotMinimized NOTIFY filterNotMinimizedChanged)
-+ Q_PROPERTY(bool filterNotMaximized READ filterNotMaximized WRITE setFilterNotMaximized NOTIFY filterNotMaximizedChanged)
- Q_PROPERTY(bool filterSkipTaskbar READ filterSkipTaskbar WRITE setFilterSkipTaskbar NOTIFY filterSkipTaskbarChanged)
- Q_PROPERTY(bool filterSkipPager READ filterSkipPager WRITE setFilterSkipPager NOTIFY filterSkipPagerChanged)
-
-@@ -212,6 +213,23 @@ public:
- **/
- void setFilterNotMinimized(bool filter);
-
-+ /**
-+ * Whether non-maximized tasks should be filtered. Defaults to
-+ * @c false.
-+ *
-+ * @see setFilterNotMaximized
-+ * @returns @c true if non-maximized tasks should be filtered.
-+ **/
-+ bool filterNotMaximized() const;
-+
-+ /**
-+ * Set whether non-maximized tasks should be filtered.
-+ *
-+ * @see filterNotMaximized
-+ * @param filter Whether non-maximized tasks should be filtered.
-+ **/
-+ void setFilterNotMaximized(bool filter);
-+
- /**
- * Whether tasks which should be omitted from 'task bars' should be
- * filtered. Defaults to @c true.
-@@ -285,6 +303,7 @@ Q_SIGNALS:
- void filterByScreenChanged() const;
- void filterByActivityChanged() const;
- void filterNotMinimizedChanged() const;
-+ void filterNotMaximizedChanged() const;
- void filterSkipTaskbarChanged() const;
- void filterSkipPagerChanged() const;
- void demandingAttentionSkipsFiltersChanged() const;
-diff --git a/libtaskmanager/tasksmodel.cpp b/libtaskmanager/tasksmodel.cpp
-index c6e66926b..11eb53fdf 100644
---- a/libtaskmanager/tasksmodel.cpp
-+++ b/libtaskmanager/tasksmodel.cpp
-@@ -302,6 +302,7 @@ void TasksModel::Private::initModels()
- QObject::connect(filterProxyModel, &TaskFilterProxyModel::filterByScreenChanged, q, &TasksModel::filterByScreenChanged);
- QObject::connect(filterProxyModel, &TaskFilterProxyModel::filterByActivityChanged, q, &TasksModel::filterByActivityChanged);
- QObject::connect(filterProxyModel, &TaskFilterProxyModel::filterNotMinimizedChanged, q, &TasksModel::filterNotMinimizedChanged);
-+ QObject::connect(filterProxyModel, &TaskFilterProxyModel::filterNotMaximizedChanged, q, &TasksModel::filterNotMaximizedChanged);
-
- groupingProxyModel = new TaskGroupingProxyModel(q);
- groupingProxyModel->setSourceModel(filterProxyModel);
-@@ -1152,6 +1153,16 @@ void TasksModel::setFilterNotMinimized(bool filter)
- d->filterProxyModel->setFilterNotMinimized(filter);
- }
-
-+bool TasksModel::filterNotMaximized() const
-+{
-+ return d->filterProxyModel->filterNotMaximized();
-+}
-+
-+void TasksModel::setFilterNotMaximized(bool filter)
-+{
-+ d->filterProxyModel->setFilterNotMaximized(filter);
-+}
-+
- TasksModel::SortMode TasksModel::sortMode() const
- {
- return d->sortMode;
-diff --git a/libtaskmanager/tasksmodel.h b/libtaskmanager/tasksmodel.h
-index 18e3d9bb4..8c84012d0 100644
---- a/libtaskmanager/tasksmodel.h
-+++ b/libtaskmanager/tasksmodel.h
-@@ -73,6 +73,7 @@ class TASKMANAGER_EXPORT TasksModel : public QSortFilterProxyModel, public Abstr
- Q_PROPERTY(bool filterByScreen READ filterByScreen WRITE setFilterByScreen NOTIFY filterByScreenChanged)
- Q_PROPERTY(bool filterByActivity READ filterByActivity WRITE setFilterByActivity NOTIFY filterByActivityChanged)
- Q_PROPERTY(bool filterNotMinimized READ filterNotMinimized WRITE setFilterNotMinimized NOTIFY filterNotMinimizedChanged)
-+ Q_PROPERTY(bool filterNotMaximized READ filterNotMaximized WRITE setFilterNotMaximized NOTIFY filterNotMaximized)
-
- Q_PROPERTY(SortMode sortMode READ sortMode WRITE setSortMode NOTIFY sortModeChanged)
- Q_PROPERTY(bool separateLaunchers READ separateLaunchers WRITE setSeparateLaunchers NOTIFY separateLaunchersChanged)
-@@ -295,6 +296,23 @@ public:
- **/
- void setFilterNotMinimized(bool filter);
-
-+ /**
-+ * Whether non-maximized tasks should be filtered. Defaults to
-+ * @c false.
-+ *
-+ * @see setFilterNotMaximized
-+ * @returns @c true if non-maximized tasks should be filtered.
-+ **/
-+ bool filterNotMaximized() const;
-+
-+ /**
-+ * Set whether non-maximized tasks should be filtered.
-+ *
-+ * @see filterNotMaximized
-+ * @param filter Whether non-maximized tasks should be filtered.
-+ **/
-+ void setFilterNotMaximized(bool filter);
-+
- /**
- * The sort mode used in sorting tasks. Defaults to SortAlpha.
- *
-@@ -848,6 +866,7 @@ Q_SIGNALS:
- void filterByScreenChanged() const;
- void filterByActivityChanged() const;
- void filterNotMinimizedChanged() const;
-+ void filterNotMaximizedChanged() const;
- void sortModeChanged() const;
- void separateLaunchersChanged() const;
- void launchInPlaceChanged() const;
-diff --git a/shell/panelconfigview.cpp b/shell/panelconfigview.cpp
-index a331c0bb2..5637f3233 100644
---- a/shell/panelconfigview.cpp
-+++ b/shell/panelconfigview.cpp
-@@ -289,6 +289,17 @@ PanelView::VisibilityMode PanelConfigView::visibilityMode() const
- return m_panelView->visibilityMode();
- }
-
-+void PanelConfigView::setOpacityMode(PanelView::OpacityMode mode)
-+{
-+ m_panelView->setOpacityMode(mode);
-+ emit opacityModeChanged();
-+}
-+
-+PanelView::OpacityMode PanelConfigView::opacityMode() const
-+{
-+ return m_panelView->opacityMode();
-+}
-+
- Plasma::FrameSvg::EnabledBorders PanelConfigView::enabledBorders() const
- {
- return m_enabledBorders;
-diff --git a/shell/panelconfigview.h b/shell/panelconfigview.h
-index 8e0abd314..db2af6bf9 100644
---- a/shell/panelconfigview.h
-+++ b/shell/panelconfigview.h
-@@ -51,6 +51,7 @@ class PanelConfigView : public PlasmaQuick::ConfigView
- {
- Q_OBJECT
- Q_PROPERTY(PanelView::VisibilityMode visibilityMode READ visibilityMode WRITE setVisibilityMode NOTIFY visibilityModeChanged)
-+ Q_PROPERTY(PanelView::OpacityMode opacityMode READ opacityMode WRITE setOpacityMode NOTIFY opacityModeChanged)
- Q_PROPERTY(Plasma::FrameSvg::EnabledBorders enabledBorders READ enabledBorders NOTIFY enabledBordersChanged)
-
- public:
-@@ -62,6 +63,9 @@ public:
- PanelView::VisibilityMode visibilityMode() const;
- void setVisibilityMode(PanelView::VisibilityMode mode);
-
-+ PanelView::OpacityMode opacityMode() const;
-+ void setOpacityMode(PanelView::OpacityMode mode);
-+
- Plasma::FrameSvg::EnabledBorders enabledBorders() const;
-
- protected:
-@@ -84,6 +88,7 @@ private Q_SLOTS:
-
- Q_SIGNALS:
- void visibilityModeChanged();
-+ void opacityModeChanged();
- void enabledBordersChanged();
-
- private:
-diff --git a/shell/panelview.cpp b/shell/panelview.cpp
-index 4654a7a72..a699cc84c 100644
---- a/shell/panelview.cpp
-+++ b/shell/panelview.cpp
-@@ -64,6 +64,7 @@ PanelView::PanelView(ShellCorona *corona, QScreen *targetScreen, QWindow *parent
- , m_alignment(Qt::AlignLeft)
- , m_corona(corona)
- , m_visibilityMode(NormalPanel)
-+ , m_opacityMode(Adaptive)
- , m_backgroundHints(Plasma::Types::StandardBackground)
- , m_shellSurface(nullptr)
- {
-@@ -76,8 +77,10 @@ PanelView::PanelView(ShellCorona *corona, QScreen *targetScreen, QWindow *parent
- setClearBeforeRendering(true);
- setColor(QColor(Qt::transparent));
- setFlags(Qt::FramelessWindowHint | Qt::WindowDoesNotAcceptFocus);
-+ updateAdaptiveOpacityEnabled();
-
- connect(&m_theme, &Plasma::Theme::themeChanged, this, &PanelView::updateMask);
-+ connect(&m_theme, &Plasma::Theme::themeChanged, this, &PanelView::updateAdaptiveOpacityEnabled);
- connect(this, &PanelView::backgroundHintsChanged, this, &PanelView::updateMask);
- connect(this, &PanelView::backgroundHintsChanged, this, &PanelView::updateEnabledBorders);
- // TODO: add finished/componentComplete signal to QuickViewSharedEngine,
-@@ -405,6 +408,37 @@ PanelView::VisibilityMode PanelView::visibilityMode() const
- return m_visibilityMode;
- }
-
-+PanelView::OpacityMode PanelView::opacityMode() const
-+{
-+ if (!m_theme.adaptiveTransparencyEnabled()) {
-+ return PanelView::Translucent;
-+ }
-+ return m_opacityMode;
-+}
-+
-+bool PanelView::adaptiveOpacityEnabled()
-+{
-+ return m_theme.adaptiveTransparencyEnabled();
-+}
-+
-+void PanelView::setOpacityMode(PanelView::OpacityMode mode)
-+{
-+ if (m_opacityMode != mode) {
-+ m_opacityMode = mode;
-+ if (config().isValid() && config().parent().isValid()) {
-+ config().parent().writeEntry("panelOpacity", (int)mode);
-+ m_corona->requestApplicationConfigSync();
-+ }
-+ emit opacityModeChanged();
-+ }
-+}
-+
-+void PanelView::updateAdaptiveOpacityEnabled()
-+{
-+ emit opacityModeChanged();
-+ emit adaptiveOpacityEnabledChanged();
-+}
-+
- void PanelView::positionPanel()
- {
- if (!containment()) {
-@@ -599,6 +633,7 @@ void PanelView::restore()
- // the place for this config key is changed in Plasma 5.9
- // Do NOT use readConfigValueWithFallBack
- setVisibilityMode((VisibilityMode)panelConfig.parent().readEntry<int>("panelVisibility", panelConfig.readEntry<int>("panelVisibility", (int)NormalPanel)));
-+ setOpacityMode((OpacityMode)readConfigValueWithFallBack("panelOpacity", PanelView::OpacityMode::Adaptive));
- m_initCompleted = true;
- resizePanel();
- positionPanel();
-diff --git a/shell/panelview.h b/shell/panelview.h
-index 60e4d446e..c312d4907 100644
---- a/shell/panelview.h
-+++ b/shell/panelview.h
-@@ -100,6 +100,18 @@ class PanelView : public PlasmaQuick::ContainmentView
- */
- Q_PROPERTY(VisibilityMode visibilityMode READ visibilityMode WRITE setVisibilityMode NOTIFY visibilityModeChanged)
-
-+ /**
-+ * Property that determines how a panel's opacity behaves.
-+ *
-+ * @see OpacityMode
-+ */
-+ Q_PROPERTY(OpacityMode opacityMode READ opacityMode WRITE setOpacityMode NOTIFY opacityModeChanged)
-+
-+ /**
-+ /* Property that determines whether adaptive opacity is used.
-+ */
-+ Q_PROPERTY(bool adaptiveOpacityEnabled READ adaptiveOpacityEnabled NOTIFY adaptiveOpacityEnabledChanged)
-+
- public:
- enum VisibilityMode {
- NormalPanel = 0, /** default, always visible panel, the windowmanager reserves a places for it */
-@@ -109,6 +121,14 @@ public:
- };
- Q_ENUM(VisibilityMode)
-
-+ /** Enumeration of possible opacity modes. */
-+ enum OpacityMode {
-+ Adaptive = 0, /** The panel will change opacity depending on the presence of a maximized window */
-+ Opaque, /** The panel will always be opaque */
-+ Translucent /** The panel will always be translucent */
-+ };
-+ Q_ENUM(OpacityMode)
-+
- explicit PanelView(ShellCorona *corona, QScreen *targetScreen = nullptr, QWindow *parent = nullptr);
- ~PanelView() override;
-
-@@ -147,6 +167,11 @@ public:
- VisibilityMode visibilityMode() const;
- void setVisibilityMode(PanelView::VisibilityMode mode);
-
-+ PanelView::OpacityMode opacityMode() const;
-+ bool adaptiveOpacityEnabled();
-+ void setOpacityMode(PanelView::OpacityMode mode);
-+ void updateAdaptiveOpacityEnabled();
-+
- /**
- * @returns the geometry of the panel given a distance
- */
-@@ -185,6 +210,8 @@ Q_SIGNALS:
- // QWindow does not have a property for screen. Adding this property requires re-implementing the signal
- void screenToFollowChanged(QScreen *screen);
- void visibilityModeChanged();
-+ void opacityModeChanged();
-+ void adaptiveOpacityEnabledChanged();
-
- protected Q_SLOTS:
- /**
-@@ -235,6 +262,7 @@ private:
- ShellCorona *m_corona;
- QTimer m_strutsTimer;
- VisibilityMode m_visibilityMode;
-+ OpacityMode m_opacityMode;
- Plasma::Theme m_theme;
- QTimer m_positionPaneltimer;
- QTimer m_unhideTimer;
---
-GitLab
-
diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.22.5-fix-powermanagement-inhibition.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.22.5-fix-powermanagement-inhibition.patch
new file mode 100644
index 000000000000..13e4bf256d3e
--- /dev/null
+++ b/kde-plasma/plasma-workspace/files/plasma-workspace-5.22.5-fix-powermanagement-inhibition.patch
@@ -0,0 +1,35 @@
+From 6379d1ec8d4a1fce141280eead930a6cdd9282d1 Mon Sep 17 00:00:00 2001
+From: Peifeng Yu <7437103@gmail.com>
+Date: Mon, 6 Sep 2021 05:24:15 +0000
+Subject: [PATCH] Call UnInhibit with correct signature in powermanagement
+ dataengine
+
+---
+ dataengines/powermanagement/powermanagementjob.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/dataengines/powermanagement/powermanagementjob.cpp b/dataengines/powermanagement/powermanagementjob.cpp
+index 90051cf33..dc7883d10 100644
+--- a/dataengines/powermanagement/powermanagementjob.cpp
++++ b/dataengines/powermanagement/powermanagementjob.cpp
+@@ -104,7 +104,7 @@ void PowerManagementJob::start()
+ QStringLiteral("/org/freedesktop/PowerManagement/Inhibit"),
+ QStringLiteral("org.freedesktop.PowerManagement.Inhibit"),
+ QStringLiteral("UnInhibit"));
+- msg << parameters().value(QStringLiteral("cookie")).toInt();
++ msg << parameters().value(QStringLiteral("cookie")).toUInt();
+ QDBusReply<void> reply = QDBusConnection::sessionBus().call(msg);
+ setResult(reply.isValid());
+ return;
+@@ -122,7 +122,7 @@ void PowerManagementJob::start()
+ QStringLiteral("/ScreenSaver"),
+ QStringLiteral("org.freedesktop.ScreenSaver"),
+ QStringLiteral("UnInhibit"));
+- msg << parameters().value(QStringLiteral("cookie")).toInt();
++ msg << parameters().value(QStringLiteral("cookie")).toUInt();
+ QDBusReply<uint> reply = QDBusConnection::sessionBus().call(msg);
+ setResult(reply.isValid());
+ return;
+--
+GitLab
+