mouse movement

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm not sure this is the proper list, but perhaps someone can offer assistance.

I'm writing a program that I want to be able to move the mouse pointer
on screen (preferably independent of window manager). I couldn't find
a way to do this from within X, so I created a named pipe and set X to
read from it as a second mouse with the same protocol as my physical
mouse (IMPS/2).

I cat'd /dev/input/mouse0 to a file while performing some simple mouse
actions (cliking the buttons then moving in a square) and wrote a
program to write that 3 bytes at a time to /dev/input/mouse0 to see if
it would reproduce the movements, instead the pointer flailed about
wildly and went semi-unresponsive (the pointer would still move, but
mouse and keyboard input would only go to the window with focus, which
couldn't be changed--it's as if the mouse input was still waiting for
a missing byte or something). Probably writing the bytes so quickly
caused acceleration in the mouse driver to kick in, which would
explain the jumpy movements, but it doesn't explain the
semi-unresponsiveness.

I've also tried doing things like echo -e '\000\020\000' >
/dev/input/mypipe which succeeds in moving the pointer either up or to
the left, but I can't do mouse clicks or move down or to the right,
even if I echo, say, the 3 bytes that were produced in
/dev/input/mouse0 when I right clicked.

Does anyone have a suggestion as to a better way to proceed? Are there
functions either in X or gnome/kde that would be better suited to
this?
Thanks,
-- 
Eric Zilli
Hasselmo Lab - Computational Neurophysiology
Center for Memory and Brain
Boston University
2 Cummington St.
Boston MA, 02215
www.digfarenough.com

_______________________________________________
XFree86 mailing list
XFree86@xxxxxxxxxxx
http://XFree86.Org/mailman/listinfo/xfree86

[Index of Archives]     [X Forum]     [Xorg]     [XFree86 Newbie]     [IETF Announce]     [Security]     [Font Config]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux Kernel]

  Powered by Linux