mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-10-30 07:30:46 +00:00
wlr_scene: Schedule new frame for WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT in output commit handler
We were doing it too early before and the output would disregard a scheduled frame if called when we were first putting together the output state
This commit is contained in:
parent
14692a7c55
commit
1dc44a1afe
@ -1342,6 +1342,11 @@ static void scene_output_handle_commit(struct wl_listener *listener, void *data)
|
|||||||
&scene_output->pending_commit_damage, &state->damage);
|
&scene_output->pending_commit_damage, &state->damage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (scene_output->scene->debug_damage_option == WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT &&
|
||||||
|
!wl_list_empty(&scene_output->damage_highlight_regions)) {
|
||||||
|
wlr_output_schedule_frame(scene_output->output);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void scene_output_handle_damage(struct wl_listener *listener, void *data) {
|
static void scene_output_handle_damage(struct wl_listener *listener, void *data) {
|
||||||
@ -1962,11 +1967,6 @@ bool wlr_scene_output_build_state(struct wlr_scene_output *scene_output,
|
|||||||
wlr_output_state_set_buffer(state, buffer);
|
wlr_output_state_set_buffer(state, buffer);
|
||||||
wlr_buffer_unlock(buffer);
|
wlr_buffer_unlock(buffer);
|
||||||
|
|
||||||
if (debug_damage == WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT &&
|
|
||||||
!wl_list_empty(&scene_output->damage_highlight_regions)) {
|
|
||||||
wlr_output_schedule_frame(scene_output->output);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user