wlr_scene: Clarify surface commit frame events

This commit is contained in:
Alexander Orzechowski 2022-09-03 16:20:39 -04:00 committed by Simon Ser
parent 35d94d779c
commit 2e06ff5688

View file

@ -84,10 +84,11 @@ static void handle_scene_surface_surface_commit(
set_buffer_with_surface_state(scene_buffer, surface->surface); set_buffer_with_surface_state(scene_buffer, surface->surface);
// Even if the surface hasn't submitted damage, schedule a new frame if // If the surface has requested a frame done event, honour that. The
// the client has requested a wl_surface.frame callback. Check if the node // frame_callback_list will be populated in this case. We should only
// is visible. If not, the client will never receive a frame_done event // schedule the frame however if the node is enabled and there is an
// anyway so it doesn't make sense to schedule here. // output intersecting, otherwise the frame done events would never reach
// the surface anyway.
int lx, ly; int lx, ly;
bool enabled = wlr_scene_node_coords(&scene_buffer->node, &lx, &ly); bool enabled = wlr_scene_node_coords(&scene_buffer->node, &lx, &ly);