On Thu, 13 Jun 2002, Jonathan Walther wrote:

> The workaround that does this is ugly, but simple.
> 
> Every time you get a mouse move event, just warp the pointer back to
> some central point.  Then to get the relative motion, compare where the
> mouse had been moved to with the point of origin.  I'm not sure, but
> maybe that plays hob with mouse acceleration... I dunno.

   The worst part of this is warping the cursor back as that request
has to go back to the server.  The back-and-forth scheduling introduces
alot of latency problems.

> 
> That, and you can confine a mouse pointer to a particular window, and
> then it's really easy to set the mask for the mouse pointer so it is
> invisible.  I made a 1 pixel mouse pointer, than masked it out so it was
> invisible.
> 
> The only problem is I don't know if that technique messes up mouse
> acceleration.
> 
> And yes, the mouse events come in too slow and irregular.  Be nice to
> have some realtime-ish guarantees about the mouse and keyboard input.
> Or at least if someone could tell me how to do large image draws without
> sacrificing speed, and without blocking processing of mouse events.  Do
> I have to fork two processes?  Use two different threads?  Is that safe?
> Do I have to break my big draws up into a bunch of smaller draws?  How
> can I check for JUST a mouse_move event without blocking and waiting for
> an event, ANY event?  I suspect that is possible, it's just not clear
> from the manpages.  Could anyone show me such a snippet?
> 

   The XCheckWindowEvent function and friends don't block.


                                Mark.

_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to