I think I get what the problem really is. The mouse input is apparently
asynchronous and re-entrant rather than queued. That is my mouse
handlers are getting called while in progress (e.g. it continues to run
continuously while "stopped" on a breakpoint inside a mouse handler).
This causes all
Mouse input occasionally apparently loses mouse events. The effect is a
sometimes "sticky" quality to the mouse. I believe this is due to
incorrect handling of the mouse input queue in the main loop.
Getting a mouse input queue right is a bit tricky in the presence of
latency since you can't b