kwin/plugins/scenes/opengl
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
..
shaders Move lanczos filter away from KWin core 2019-02-07 18:03:34 +02:00
CMakeLists.txt Undo some recent cmake changes 2019-09-18 13:50:52 +03:00
lanczosfilter.cpp [scenes/opengl] Discard cached Lanczos textures for all toplevels 2019-12-02 15:14:21 +02:00
lanczosfilter.h Use nullptr everywhere 2019-09-19 17:48:21 +03:00
opengl.json SVN_SILENT made messages (.desktop file) - always resolve ours 2019-12-07 05:38:05 +01:00
resources.qrc Move lanczos filter away from KWin core 2019-02-07 18:03:34 +02:00
scene_opengl.cpp Schedule a decoration repaint when client is resized 2020-01-28 18:42:17 +02:00
scene_opengl.h Revert "Remove vsync detection and configurability" 2020-01-16 10:00:12 +01:00