[plasma-framework] src/plasmaquick: make sure OSD doesn't have Dialog flag
Marco Martin
notmart at gmail.com
Wed Nov 2 10:59:48 GMT 2016
Git commit 62b0865492d863cd000814054681ba6a97972cd5 by Marco Martin.
Committed on 02/11/2016 at 10:56.
Pushed by mart into branch 'master'.
make sure OSD doesn't have Dialog flag
an OSD can't be a Dialog, as qt xcb would attempt to set a
transient parent for it, same as panels, which in turn will
make for invisible osd on autohide panels
Change-Id: I5afea6d4bfa0bfee8b3453e78a1c214a3a0894ec
reviewed-by: Martin Graesslin <mgraesslin at kde.org>
CCMAIL:distributions at kde.org
BUG:370433
M +5 -0 src/plasmaquick/dialog.cpp
http://commits.kde.org/plasma-framework/62b0865492d863cd000814054681ba6a97972cd5
diff --git a/src/plasmaquick/dialog.cpp b/src/plasmaquick/dialog.cpp
index 9afdf60..6e2041a 100644
--- a/src/plasmaquick/dialog.cpp
+++ b/src/plasmaquick/dialog.cpp
@@ -1037,6 +1037,11 @@ void Dialog::setType(WindowType type)
} else {
setFlags(Qt::FramelessWindowHint | flags());
}
+ //an OSD can't be a Dialog, as qt xcb would attempt to set a transient parent for it
+ //see bug 370433
+ if (type == OnScreenDisplay) {
+ setFlags((flags() & ~Qt::Dialog) | Qt::Window);
+ }
if (d->backgroundHints == Dialog::NoBackground) {
d->frameSvgItem->setImagePath(QString());
More information about the Distributions
mailing list