Fixups on events.

Interestingly, for overlapping windows, a button down event causes
leave events on lower z-order windows. This is causing ugly flashing
behavior at this time because of the drawing code that is in there.
Could be a problem in the future.