[compositor] Make sure all frame events are sent on display-off.

Lipstick sends frame events directly as a result of damage() when
the display off. However, if we get surface_commit followed
immediately by screen off, lipstick expects the frame event
to be sent as a result of afterRendering() which doesn't happen.
This frame event gets lost. When the compositor is hidden, we
now send pending frame events, to avoid this issue.