Better handling of window hierarchy changes from inside expose handler
Better handling of window hierarchy changes from inside expose handler

If we move, resize or otherwise change a window from inside a (double
buffered)  expose handler we can run into issues with double buffered
paints that have already been ended but have not yet been commited
to the window from the implicit paint pixmap.

For instance, any copies of source regions due to a window scroll need
to take these into account, and any operation that causes some drawing at
a destination covered by the implicit paint region would be overdrawn
when the implicit paint is ended.

So, before we do any window-hierarchy changing operation while an implicit
paint is in effect we flush all moves and already commited paints.

bratsche/gtk-,Unity-Technologies/gtk,ahodesuka/gtk,chergert/gtk,Adamovskiy/gtk,simokivimaki/gtk,Distrotech/gtk2,nacho/gtk-,johne53/MB3Gtk-2,alexlarsson/gtk,alexlarsson/gtk,Adamovskiy/gtk,alexlarsson/gtk,Sidnioulz/SandboxGtk,Distrotech/gtk,Unity-Technologies/gtk,davidgumberg/gtk,grubersjoe/adwaita,Unity-Technologies/gtk,ebassi/gtk,chergert/gtk,davidgumberg/gtk,jadahl/gtk,jadahl/gtk,ebassi/gtk,chergert/gtk,Adamovskiy/gtk,jadahl/gtk,bratsche/gtk-,nacho/gtk-,ahodesuka/gtk,Distrotech/gtk,jigpu/gtk,johne53/MB3Gtk-2,Distrotech/gtk,alexlarsson/gtk,jadahl/gtk,davidt/gtk,jessevdk/gtk,jessevdk/gtk,ahodesuka/gtk,msteinert/gtk,nacho/gtk-,davidgumberg/gtk,Lyude/gtk-,ahodesuka/gtk,grubersjoe/adwaita,ebassi/gtk,jigpu/gtk,grubersjoe/adwaita,chipx86/gtk,Sidnioulz/SandboxGtk,Sidnioulz/SandboxGtk,jigpu/gtk,chipx86/gtk,msteinert/gtk,davidgumberg/gtk,Distrotech/gtk,jessevdk/gtk,jigpu/gtk,ebassi/gtk,alexlarsson/gtk,Distrotech/gtk2,Adamovskiy/gtk,davidgumberg/gtk,jigpu/gtk,Sidnioulz/SandboxGtk,grubersjoe/adwaita,simokivimaki/gtk,Adamovskiy/gtk,Lyude/gtk-,Adamovskiy/gtk,bratsche/gtk-,simokivimaki/gtk,nacho/gtk-,simokivimaki/gtk,grubersjoe/adwaita,jadahl/gtk,chergert/gtk,davidgumberg/gtk,Sidnioulz/SandboxGtk,grubersjoe/adwaita,grubersjoe/adwaita,jessevdk/gtk,ahodesuka/gtk,simokivimaki/gtk,jigpu/gtk,Distrotech/gtk,davidgumberg/gtk,ahodesuka/gtk,johne53/MB3Gtk-2,Lyude/gtk-,ebassi/gtk,davidt/gtk,Lyude/gtk-,Distrotech/gtk2,jessevdk/gtk,johne53/MB3Gtk-2,chipx86/gtk,chergert/gtk,Sidnioulz/SandboxGtk,Distrotech/gtk2,alexlarsson/gtk,jessevdk/gtk,msteinert/gtk,Distrotech/gtk2,jigpu/gtk,msteinert/gtk,Unity-Technologies/gtk,davidt/gtk,alexlarsson/gtk,Adamovskiy/gtk,simokivimaki/gtk,davidt/gtk,jessevdk/gtk,bratsche/gtk-,ahodesuka/gtk,davidt/gtk,chipx86/gtk,davidt/gtk,chergert/gtk,grubersjoe/adwaita,bratsche/gtk-,Lyude/gtk-,jadahl/gtk,Unity-Technologies/gtk,chergert/gtk,Lyude/gtk-,bratsche/gtk-,jadahl/gtk,alexlarsson/gtk,ebassi/gtk,jadahl/gtk,Lyude/gtk-,davidgumberg/gtk,chipx86/gtk,chergert/gtk,nacho/gtk-,msteinert/gtk,Lyude/gtk-,jigpu/gtk,Distrotech/gtk2,msteinert/gtk,ahodesuka/gtk,johne53/MB3Gtk-2,Adamovskiy/gtk