Transform a pending repaint into a workspace repaint before destroying Deleted

Merged Vlad Zahorodnii requested to merge work/deleted-schedule-pending-repaints into master

The sliding popups effect schedules a repaint and then unreferences the deleted window. The problem with doing so is that the scheduled repaint will be effectively discarded because the Deleted will be destroyed once we are back in the event loop.

This issue is most noticeable on Wayland. Not sure why. If you close Kickoff, you may see its flickering ghost in background.

If it happens that a Deleted has a pending repaint, transform it into a workspace repaint to avoid discarding any scheduled repaints.

Merge request reports