Make the compositor render software cursors
Making wlroots responsible for rendering them causes some issues. It adds rendering code when swapping buffers, after wlr_renderer_end
. It causes issues like https://github.com/swaywm/wlroots/issues/1291, because wlr_output
is not presentation-time-aware (and shouldn't be).
We should probably remove the rendering code from wlr_output_swap_buffers
and make the compositor do it. We could provide a helper function to render software cursors that could be called by the compositor in its rendering process.
Same applies to fullscreen surfaces -- but we should remove wlr_output_set_fullscreen_surface
altogether, replacing it with something else.
@ascent12 How does this interact with the renderer redesign?