From: Michael O'Donnell (mod@westford.ccur.com)
Date: 07/27/93


From: mod@westford.ccur.com (Michael O'Donnell)
Subject: bmouseatixl clicks are a drag! - Solved.
Date: Wed, 28 Jul 1993 00:06:33 GMT


I have been forever plagued by a problem with my ATI XL InPort
mouse, and I have seen others post pleas for help with the same
problem. The problem in question is the one where mouse button
click events aren't noticed by the server until a mouse movement
event occurs. The solution, part of a patch supplied to me by
a reader of c.o.l. who didn't understand it, involves prefilling
the read buffer in read_mouse() with NULLs and then returning the
specified count value instead of a hardcoded "3". I don't know
specifically why this works (explanation, somebody?) but it does:

 119a120,121
> int padOffset;
>
 123a126,128
> for( padOffset = 3; padOffset < count; padOffset++ ) {
> put_fs_byte( 0x00, buffer + padOffset );
> } /* NULL out any bytes beyond the 3 we'll supply. */
 134c139
 < return 3; /* 3 data bytes returned */
 ---
> /* Return count requested, but only 1st 3 bytes matter. */
> return( count );

Can we PLEASE get this included in the official sources?

Regards,
 -----------------------------------------------------------------
 Michael O'Donnell mod@westford.ccur.com uunet!masscomp!mod
 Concurrent Computer Corporation Westford, MA (508)392-2915
 DISCLAIMER: My opinions are unlikely to be those of my employer.
 -----------------------------------------------------------------