You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
plasma-workspace/0007-Guard-calls-into-layer...

41 lines
1.3 KiB

From 6a5015951f9899e625bf8572f20cffc64d7aea33 Mon Sep 17 00:00:00 2001
From: David Redondo <kde@david-redondo.de>
Date: Thu, 1 Jul 2021 09:08:05 +0200
Subject: [PATCH 7/7] Guard calls into layer shell
LayerShellQt::Window::get always returns a Window, ensure we only
do it on Wayland.
BUG:439356
FIXED-IN:5.22.3
(cherry picked from commit 211897b07a83a4e5c3b32b1f14fd710375a16240)
---
logout-greeter/shutdowndlg.cpp | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/logout-greeter/shutdowndlg.cpp b/logout-greeter/shutdowndlg.cpp
index 97d5dc89d..4de539004 100644
--- a/logout-greeter/shutdowndlg.cpp
+++ b/logout-greeter/shutdowndlg.cpp
@@ -209,10 +209,12 @@ void KSMShutdownDlg::init()
setKeyboardGrabEnabled(true);
KWindowEffects::enableBlurBehind(this, true);
- if (auto w = LayerShellQt::Window::get(this)) {
- w->setKeyboardInteractivity(LayerShellQt::Window::KeyboardInteractivityExclusive);
- w->setExclusiveZone(-1);
- w->setLayer(LayerShellQt::Window::LayerOverlay);
+ if (KWindowSystem::isPlatformWayland()) {
+ if (auto w = LayerShellQt::Window::get(this)) {
+ w->setKeyboardInteractivity(LayerShellQt::Window::KeyboardInteractivityExclusive);
+ w->setExclusiveZone(-1);
+ w->setLayer(LayerShellQt::Window::LayerOverlay);
+ }
}
}
--
2.31.1