https://bugs.kde.org/show_bug.cgi?id=399490

Vlad Zagorodniy <vladz...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Version Fixed In|                            |5.15.0
      Latest Commit|                            |https://commits.kde.org/kwi
                   |                            |n/90a26e2e8d133cf5b180ec18f
                   |                            |3f6ff43bf8861f4
         Resolution|---                         |FIXED
             Status|CONFIRMED                   |RESOLVED

--- Comment #4 from Vlad Zagorodniy <vladz...@gmail.com> ---
Git commit 90a26e2e8d133cf5b180ec18f3f6ff43bf8861f4 by Vlad Zagorodniy.
Committed on 05/12/2018 at 18:05.
Pushed by vladz into branch 'master'.

Try to invalidate quad cache when shadow is changed

Summary:
213239a0ea0a9c0967bb68d1eda7a8d4d6a09498 tried to address the case when
a wayland client gets shadow after it was mapped, but because of poor
testing from my side, another bug was introduced. If a decoration tooltip
or the user actions popup is shown, then in some cases it can be blank.

Usually, SurfaceInterface::shadowChanged proceeds
SurfaceInterface::sizeChanged,
so when the shadow is installed, window quads cache is rebuilt. But
because shell client already knows the geometry of the internal client,
goemetryShapeChanged is not emitted, thus the cache is not updated.

It would be better just to invalidate the cache when the shadow is
installed, uninstalled, or updated. This reduces the number of
unnecessary invocations of Scene::Window::buildQuads and also moves
handling of the window quads cache away from the Shadow class.
FIXED-IN: 5.15.0

Test Plan: Decoration tooltips are no longer blank.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: davidedmundson, graesslin, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D17215

M  +11   -1    scene.cpp
M  +1    -0    scene.h
M  +16   -18   shadow.cpp
M  +6    -0    toplevel.h

https://commits.kde.org/kwin/90a26e2e8d133cf5b180ec18f3f6ff43bf8861f4

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to