From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/plasma/files/, kde-frameworks/plasma/
Date: Thu, 20 Jan 2022 13:26:32 +0000 (UTC) [thread overview]
Message-ID: <1642685057.a60d9305d2a70497122ceeb0e32dc2c6ac1f9540.asturm@gentoo> (raw)
commit: a60d9305d2a70497122ceeb0e32dc2c6ac1f9540
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 20 11:25:24 2022 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Jan 20 13:24:17 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a60d9305
kde-frameworks/plasma: Always sync the setPanelBehavior to wayland
Upstream commit d40d36057a0ee9fcb4badc7ff8b56844da79dfc8
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=426969
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../plasma/files/plasma-5.90.0-KDEBUG-426969.patch | 90 ++++++++++++++++++++++
kde-frameworks/plasma/plasma-5.90.0-r1.ebuild | 1 +
2 files changed, 91 insertions(+)
diff --git a/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch
new file mode 100644
index 000000000000..bccc097a3b99
--- /dev/null
+++ b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch
@@ -0,0 +1,90 @@
+From d40d36057a0ee9fcb4badc7ff8b56844da79dfc8 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Wed, 12 Jan 2022 22:21:34 +0000
+Subject: [PATCH] Always sync the setPanelBehavior to wayland
+
+Currently this code is in the else statement to if (type !=
+Dialog::Normal) {
+
+This doesn't make sense as panel roles apply explicitly to other types,
+like Dialog::Dock. On X11 the equivalent always applies.
+
+BUG: 426969
+
+* asturm 2022-01-22: Merged with below fixup:
+
+From b882b34d7b55975f679133ef86cfd12869e8bba5 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Thu, 13 Jan 2022 17:03:38 +0000
+Subject: [PATCH] Always sync the setPanelBehavior to wayland
+
+The previous patch moved some code that reapplied setRole in a way that
+caused issues.
+
+BUG: 448373
+
+--- a/src/plasmaquick/dialog.cpp
++++ b/src/plasmaquick/dialog.cpp
+@@ -693,14 +693,13 @@
+
+ void DialogPrivate::applyType()
+ {
+- if (type != Dialog::Normal) {
+ /*QXcbWindowFunctions::WmWindowType*/ int wmType = 0;
+
+ #if HAVE_X11
+ if (KWindowSystem::isPlatformX11()) {
+ switch (type) {
+ case Dialog::Normal:
+- Q_UNREACHABLE();
++ q->setFlags(Qt::FramelessWindowHint | q->flags());
+ break;
+ case Dialog::Dock:
+ wmType = QXcbWindowFunctions::WmWindowType::Dock;
+@@ -729,11 +728,15 @@
+ }
+ #endif
+
+- if (!wmType) {
++ if (!wmType && type != Dialog::Normal) {
+ KWindowSystem::setType(q->winId(), static_cast<NET::WindowType>(type));
+ }
+ #if HAVE_KWAYLAND
+ if (shellSurface) {
++ if (q->flags() & Qt::WindowStaysOnTopHint) {
++ type = Dialog::Dock;
++ shellSurface->setPanelBehavior(KWayland::Client::PlasmaShellSurface::PanelBehavior::WindowsGoBelow);
++ }
+ switch (type) {
+ case Dialog::Dock:
+ shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Panel);
+@@ -750,27 +753,13 @@
+ case Dialog::CriticalNotification:
+ shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::CriticalNotification);
+ break;
++ case Dialog::Normal:
++ shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Normal);
+ default:
+ break;
+ }
+ }
+ #endif
+- } else {
+- q->setFlags(Qt::FramelessWindowHint | q->flags());
+-
+-#if HAVE_KWAYLAND
+- // Only possible after setup
+- if (shellSurface) {
+- if (q->flags() & Qt::WindowStaysOnTopHint) {
+- shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Panel);
+- shellSurface->setPanelBehavior(KWayland::Client::PlasmaShellSurface::PanelBehavior::WindowsGoBelow);
+- } else {
+- shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Normal);
+- shellSurface->setPanelBehavior(KWayland::Client::PlasmaShellSurface::PanelBehavior::AlwaysVisible);
+- }
+- }
+-#endif
+- }
+
+ // an OSD can't be a Dialog, as qt xcb would attempt to set a transient parent for it
+ // see bug 370433
diff --git a/kde-frameworks/plasma/plasma-5.90.0-r1.ebuild b/kde-frameworks/plasma/plasma-5.90.0-r1.ebuild
index fa06b05e874f..a59a50636a36 100644
--- a/kde-frameworks/plasma/plasma-5.90.0-r1.ebuild
+++ b/kde-frameworks/plasma/plasma-5.90.0-r1.ebuild
@@ -60,6 +60,7 @@ DEPEND="${RDEPEND}
BDEPEND="man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )"
PATCHES=(
+ "${FILESDIR}/${P}-KDEBUG-426969.patch"
"${FILESDIR}/${P}-KDEBUG-447752.patch"
"${FILESDIR}/${P}-KDEBUG-448590.patch"
)
next reply other threads:[~2022-01-20 13:26 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-20 13:26 Andreas Sturmlechner [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-04-22 16:21 [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/plasma/files/, kde-frameworks/plasma/ Andreas Sturmlechner
2022-12-10 10:47 Andreas Sturmlechner
2022-11-16 19:17 Andreas Sturmlechner
2022-10-10 8:15 Andreas Sturmlechner
2022-09-24 8:53 Andreas Sturmlechner
2022-06-29 19:53 Andreas Sturmlechner
2022-05-14 11:33 Andreas Sturmlechner
2022-05-04 20:50 Andreas Sturmlechner
2022-04-09 16:07 Andreas Sturmlechner
2021-12-15 11:28 Andreas Sturmlechner
2021-12-08 15:08 Andreas Sturmlechner
2021-09-04 21:01 Andreas Sturmlechner
2021-09-04 21:01 Andreas Sturmlechner
2020-09-29 12:49 Andreas Sturmlechner
2020-06-23 13:49 Andreas Sturmlechner
2020-06-23 13:49 Andreas Sturmlechner
2020-02-13 21:28 Andreas Sturmlechner
2019-12-31 20:09 Andreas Sturmlechner
2019-03-13 10:18 Andreas Sturmlechner
2017-03-13 21:00 Andreas Sturmlechner
2016-11-17 11:35 Michael Palimaka
2016-02-17 11:13 Michael Palimaka
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1642685057.a60d9305d2a70497122ceeb0e32dc2c6ac1f9540.asturm@gentoo \
--to=asturm@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox