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

Vlad Zahorodnii <vlad.zahorod...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
      Latest Commit|                            |https://invent.kde.org/plas
                   |                            |ma/kwin/commit/0bd485132624
                   |                            |65755c7cd531daf109c4ed35b22
                   |                            |2
         Resolution|---                         |FIXED

--- Comment #4 from Vlad Zahorodnii <vlad.zahorod...@kde.org> ---
Git commit 0bd48513262465755c7cd531daf109c4ed35b222 by Vlad Zahorodnii.
Committed on 10/01/2023 at 12:05.
Pushed by vladz into branch 'master'.

effects: Fix projection matrix logic in OffscreenEffect

WindowPaintData contains two projection matrices -
screenProjectionMatrix and projectionMatrix. I'm not sure why we have
two.

screenProjectionMatrix is initialized by the scene. While
projectionMatrix is usually updated by the effects. The two are not in
sync.

On the other hand, OffscreenEffect takes into account only
screenProjectionMatrix. It means that if a window is transformed by two
offscreen effects, the final result is going to be broken because
an OffscreenEffect must use the projection matrix specified by another
OffscreenEffect, which it doesn't.

This change cleans up projection matrix properties in WindowPaintData,
so there's only one projection matrix property. With that, offscreen
effects can be properly nested.

M  +1    -1    src/effects/backgroundcontrast/contrast.cpp
M  +6    -13   src/libkwineffects/kwineffects.cpp
M  +1    -9    src/libkwineffects/kwineffects.h
M  +1    -1    src/libkwineffects/kwinoffscreeneffect.cpp
M  +1    -16   src/scene/itemrenderer_opengl.cpp
M  +0    -1    src/scene/itemrenderer_opengl.h

https://invent.kde.org/plasma/kwin/commit/0bd48513262465755c7cd531daf109c4ed35b222

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

Reply via email to