]> Pileus Git - ~andy/gtk/commit
Make outstanding window moves work with the new model
authorAlexander Larsson <alexl@redhat.com>
Sat, 7 Feb 2009 17:46:31 +0000 (18:46 +0100)
committerAlexander Larsson <alex@localhost.localdomain>
Thu, 2 Apr 2009 08:16:28 +0000 (10:16 +0200)
commit5742005aa164bdd5cf9e5b05358085d6a8895ad7
tree97acfe125104d954bbdf59bed41394bacb51561a
parent5ccc8b2ff1ec7c53e69067656032eeef1c1b832f
Make outstanding window moves work with the new model

We now copy outstanding window moves directly on the window and
not to an intermediary pixmap, this means our previous code to
combine window copies was wrong (it relied on each copy not
destroying the source date).

Furthermore, we can't just remove all the update area from the
destination of the outstanding moves, as sometimes things get
copied into that area and then used as the source of another
copy.

We replace the previous window copy combining with a naive
version that just queues each move, just to get things right.
Further work to optimize copies is possible.

Also, we don't remove copy destinations that are used as source
for later copies.

We also clean up the memory management by not having
move_region_on_impl taking ownership of the passed in region.
gdk/gdkwindow.c