diff --git a/src/backends/drm/drm_output.cpp b/src/backends/drm/drm_output.cpp index ef0233a38c..5a9243a662 100644 --- a/src/backends/drm/drm_output.cpp +++ b/src/backends/drm/drm_output.cpp @@ -394,6 +394,9 @@ void DrmOutput::applyQueuedChanges(const WaylandOutputConfig &config) auto props = config.constChangeSet(this); setEnabled(props->enabled && m_pipeline->pending.crtc); + if (!isEnabled() && m_pipeline->needsModeset()) { + m_gpu->maybeModeset(); + } moveTo(props->pos); setScale(props->scale); setTransformInternal(props->transform);