backends/drm: invalidate renderloop when output changes enabled state
previously we could end up in cases where a frame was lodged in the loop when a screen got disabled. this would then cause wildly inaccurate presentation times when the screen later got enabled again and ultimately never let the frame present. causing a persistent visual freeze.
instead do a bit of on-demand house keeping. if a DrmOutput is changing enabled state we now invalidate the render loop to reset any and all pending frames. this way we always start with an empty loop when enabling an output at a later time.
possibly also improves CCBUG: 476412