output: drop wlr_output.needs_frame

The frame scheduler is responsible for de-duplicating needs_frame
events.
This commit is contained in:
Simon Ser 2024-01-08 18:44:34 +01:00 committed by Kenny Levinsen
parent 0967873a20
commit d99ee40a1d
3 changed files with 1 additions and 11 deletions

View file

@ -774,10 +774,6 @@ bool output_prepare_commit(struct wlr_output *output, const struct wlr_output_st
void output_apply_commit(struct wlr_output *output, const struct wlr_output_state *state) {
output->commit_seq++;
if (output_pending_enabled(output, state)) {
output->needs_frame = false;
}
output_apply_state(output, state);
}
@ -945,10 +941,6 @@ size_t wlr_output_get_gamma_size(struct wlr_output *output) {
}
void wlr_output_update_needs_frame(struct wlr_output *output) {
if (output->needs_frame) {
return;
}
output->needs_frame = true;
wl_signal_emit_mutable(&output->events.needs_frame, output);
}

View file

@ -2144,7 +2144,7 @@ static enum scene_direct_scanout_result scene_entry_try_direct_scanout(
}
bool wlr_scene_output_needs_frame(struct wlr_scene_output *scene_output) {
return scene_output->output->needs_frame ||
return scene_output->frame_scheduler->needs_frame ||
!pixman_region32_empty(&scene_output->pending_commit_damage) ||
scene_output->gamma_lut_changed;
}