drawin: Don't special-case moves
commit70fef83e50336c5e0105d90cb14e83f6631214d0
authorUli Schlachter <psychon@znc.in>
Sat, 11 Oct 2014 11:12:57 +0000 (11 13:12 +0200)
committerUli Schlachter <psychon@znc.in>
Sat, 11 Oct 2014 11:12:57 +0000 (11 13:12 +0200)
tree134e64d4a7a21826f2a8be3831496d50f622a875
parent983d094c76c5ddb6fe7deeec2f977a981c057a8a
drawin: Don't special-case moves

The code in drawin_moveresize() tries to be clever and only updates the drawing
state of the drawable when it is resized, not when it is moved around. This used
to be necessary because once upon a time, drawin_update_drawing() threw away all
of the drawing state and thus forcing a repaint. These days it just calls
drawable_set_geometry() as well and that function special-cases moves.

So this old code in drawin_moveresize() is no longer necessary and actually
caused problems.

These problems occurred because drawin_update_drawing() is being clever and
doesn't do anything for .visible = false drawins, because their drawing state
will be updated once they become visible. However, not skipping
drawable_set_geometry() means that this broke, because drawin_map() thought that
the drawing state was up to date while in reality it wasn't.

References: http://article.gmane.org/gmane.comp.window-managers.awesome/10852
Signed-off-by: Uli Schlachter <psychon@znc.in>
objects/drawin.c