output: send commit event after pending state is cleared
References: https://github.com/swaywm/wlroots/issues/2098
This commit is contained in:
parent
1fb9535e99
commit
b3e76d6678
|
@ -612,13 +612,6 @@ bool wlr_output_commit(struct wlr_output *output) {
|
|||
|
||||
output->commit_seq++;
|
||||
|
||||
struct wlr_output_event_commit event = {
|
||||
.output = output,
|
||||
.committed = output->pending.committed,
|
||||
.when = &now,
|
||||
};
|
||||
wlr_signal_emit_safe(&output->events.commit, &event);
|
||||
|
||||
bool scale_updated = output->pending.committed & WLR_OUTPUT_STATE_SCALE;
|
||||
if (scale_updated) {
|
||||
output->scale = output->pending.scale;
|
||||
|
@ -649,7 +642,16 @@ bool wlr_output_commit(struct wlr_output *output) {
|
|||
output->needs_frame = false;
|
||||
}
|
||||
|
||||
uint32_t committed = output->pending.committed;
|
||||
output_state_clear(&output->pending);
|
||||
|
||||
struct wlr_output_event_commit event = {
|
||||
.output = output,
|
||||
.committed = committed,
|
||||
.when = &now,
|
||||
};
|
||||
wlr_signal_emit_safe(&output->events.commit, &event);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue