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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|CONFIRMED                   |RESOLVED
   Version Fixed In|                            |5.16.3
         Resolution|---                         |FIXED
      Latest Commit|                            |https://commits.kde.org/kwi
                   |                            |n/61956025f0801170692c02d31
                   |                            |3ddc324e27e9c6c

--- Comment #27 from Vlad Zagorodniy <vladz...@gmail.com> ---
Git commit 61956025f0801170692c02d313ddc324e27e9c6c by Vlad Zagorodniy.
Committed on 28/06/2019 at 22:24.
Pushed by vladz into branch 'Plasma/5.16'.

Decorate only toplevel internal clients

Summary:
Unfortunately Aurorae decoration engine creates several internal clients
per each decoration. One of those clients represents QOffscreenSurface,
which is not a toplevel. Given that no QWindow object will be found for
such clients, m_internalWindowFlags contains undefined value.

Luckily, QOffscreenSurface sets FramelessWindowHint flag, but because
InternalClient is not able to find matching QWindow object, cached
QWindow flags won't have that hint set.

Thus InternalClient will attempt to decorate QOffscreenSurface. A new
Aurorae decoration will be created, which means a new QOffscreenSurface
will be created, which means a new Aurorae decoration will be created,
and so on.

This change restricts subset of internal clients that can be decorated.
Only clients with valid m_internalWindow can be decorated. If m_internalWindow
isn't null, then m_internalWindowFlags is guaranteed to be valid as well.
FIXED-IN: 5.16.3

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

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

M  +13   -1    internal_client.cpp

https://commits.kde.org/kwin/61956025f0801170692c02d313ddc324e27e9c6c

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

Reply via email to