vo_dmabuf_wayland: commit surfaces in correct order
osd_surface is a sync sub-surface of video_surface meaning that a commit of osd_surface will not take effect until the next commit of video_surface. Some compositors (wlroots) do not implement sync sub-surface correctly, meaning that the difference cannot be observed there. But it can easily be seen on Jay and GNOME: 1. Open an mpv window. 2. Pause the video. 3. Enter the surface with the mouse. Expected behavior: 1. The OSD shows up immediately. Actual behavior: 1. Nothing happens for a few seconds. 2. The OSD shows up and immediately fades out. This is because the fade-out commits cause the initial osd_surface commit to become effective.
J
Julian Orth committed
76da05092b095cb4f3a670de1cbabbfdfe03a5c7
Parent: b90c1bb
Committed by Dudemanguy <random342@airmail.cc>
on 2/21/2025, 5:23:56 PM