Commit 7ace568d authored by Marco Martin's avatar Marco Martin

check window visibility at expose event

Summary:
it's possible that a window gets an expose event even if the qwindow
is not visible, this can cause problems like the window decoration
created too soon, before kwin's ShellClient is created, so
setting the decoration mode has no effect, it can give
windows that have for an instant the wrong geometry as it
includes a non existing decoration

Test Plan:
i now get the decoration client always being created after
the decoratininterface in kwin, so setting borders to none
actually works

Reviewers: #plasma, graesslin, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: davidedmundson, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D6214
parent 1551f8b3
......@@ -77,7 +77,7 @@ bool KWaylandIntegration::eventFilter(QObject *watched, QEvent *event)
return false;
}
QWindow *w = qobject_cast<QWindow*>(watched);
if (!w || w->parent()) {
if (!w || w->parent() || !w->isVisible()) {
return false;
}
if(w->property("org.kde.plasma.integration.waylandserverdecoration").isNull()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment