kwin/decorations
Vlad Zahorodnii bd52b6791e Schedule a decoration repaint when client is resized
Summary:
If a client has been resized, it doesn't necessarily mean that the
decoration theme will schedule full repaint of the window frame. In
OpenGL and Xrender scene, we have a little hack that forces a full
repaint of window borders. However, we don't have one in QPainter
scene which causes all sorts of weird looking artifacts when resizing
a server-side decorated client.

We could add yet another hack in the QPainter scene, but a better
approach to tackle this problem would be to make DecoratedClient
schedule a full repaint of the decoration. It makes code in scene
plugins more straightforward and prevents us from repeating the same
mistake again.

Test Plan:
No longer able to see invisible decoration borders when
using QPainter render backend.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: davidedmundson, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D26927
2020-01-28 18:42:17 +02:00
..
decoratedclient.cpp [decoration] Implement the size property 2020-01-28 18:42:17 +02:00
decoratedclient.h [decoration] Implement the size property 2020-01-28 18:42:17 +02:00
decorationbridge.cpp
decorationbridge.h
decorationpalette.cpp
decorationpalette.h
decorationrenderer.cpp Schedule a decoration repaint when client is resized 2020-01-28 18:42:17 +02:00
decorationrenderer.h
decorations_logging.cpp
decorations_logging.h
settings.cpp
settings.h