]> git.mdlowis.com Git - proto/labwc.git/commit
scene-helpers: use pending_commit_damage, chases wlr!4253
authorConsolatis <35009135+Consolatis@users.noreply.github.com>
Wed, 14 Aug 2024 18:17:50 +0000 (20:17 +0200)
committerJohan Malm <johanmalm@users.noreply.github.com>
Thu, 15 Aug 2024 19:51:20 +0000 (20:51 +0100)
commit6a1ecd6b7dbb4ec5314d60b05aa12e86a5d04626
treee855d50a7d2438d3d4d4882bb421e8f972fbcb22
parent00512d055fa77957f8c8c3b998dfba61e87b9e34
scene-helpers: use pending_commit_damage, chases wlr!4253

Using the output damage_ring for early out will break VRR in
direct scanout mode. The reason being that the damage_ring
will be completely ignored in that mode so we need to check
`output->pending_commit_damage` instead. This matches with
what wlroots has been doing since [0] and it was missed in
the initial port to wlroots 0.18.x.

However, that would then break the magnifier which only adds
its damage to the damage ring. After some discussion with
the wlroots devs we came up with a solution that should work
for both, wlroots 0.18.0 and when [1] is backported to 0.18.1.

Note that even with this PR, VRR in direct scanout mode is
broken in 0.18.0 from the wlroots side and will be fixed once
[1] is backported to the 0.18 branch and 0.18.1 is released.

Fixes: #2078
[0] https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4253
[1] https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4753
src/common/scene-helpers.c