diff --git a/backend/drm/drm.c b/backend/drm/drm.c index a7ff585e..2a89e6f9 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -595,9 +595,6 @@ bool drm_connector_commit_state(struct wlr_drm_connector *conn, return false; } - if (pending.base->committed & WLR_OUTPUT_STATE_ENABLED) { - wlr_output_update_enabled(&conn->output, pending.active); - } if (pending.base->committed & WLR_OUTPUT_STATE_MODE) { struct wlr_output_mode *mode = NULL; switch (pending.base->mode_type) { diff --git a/types/output/output.c b/types/output/output.c index 852206b9..6c4b1a31 100644 --- a/types/output/output.c +++ b/types/output/output.c @@ -789,6 +789,10 @@ bool wlr_output_commit_state(struct wlr_output *output, output->commit_seq++; + if (pending.committed & WLR_OUTPUT_STATE_ENABLED) { + wlr_output_update_enabled(output, pending.enabled); + } + bool scale_updated = pending.committed & WLR_OUTPUT_STATE_SCALE; if (scale_updated) { output->scale = pending.scale;