sequence when machine is started without attached USB mouse. Only do
repeated attempts to re-open device if the usb module has been actually
loaded. Also fix broken logic in doing delays between open attempts - do
delays between attempts, not after each attempt.
Due to previous behaviour being very annoying for notebook owners this
is a good 5.2 MFC candidate.
MFC after: 2 days
check if it's already loaded or compiled into the kernel, and only try to
load it if it isn't.
PR: bin/59368
Submitted by: Jens Rehsack <rehsack@liwing.de>
ums module, and allow for up to five attempts to open the device, with
two-second pauses in between, to allow time for USB controllers and
devices to probe and attach. My Gigabyte P4 Titan 848P motherboard has
a total of 15 ports on four hubs hanging off four controllers, and needs
at least half of that ten-second allowance to get ready.
MFC after: 7 days
`/2' with `>>1'. In the context `>>1' is more appropriate
because it looks like the division is used to restore a
shifted value.
GCC GNATS PR: c/6677
This fixes a problem where wheel-up movement is taken as wheel-down
in the sysmouse protocol.
Do not assume the plain char's are signed; use `signed char' where
char's need to be signed.
Discussed on: audit
Pointed out by: bde
with variable numbers of arguments made this slightly harder than
it should be. Avoid the bug by not doing string concatenation within
the macros, and instead add a new function to syslog or print the
error messages.
until a 20ms select(2) timeout occurs, but if there is a continuous
stream of movement events, button events can be delayed indefinitely
because the select never has to wait long enough for a timeout.
The delay and mouse event reordering that result are very noticable
and sometimes quite frustrating when dragging windows etc. in X.
Add a simple mechanism that avoids this re-ordering. While a button
event is deferred, we discard up to 3 movement events to allow for
mouse jitter. If more movement events occur, then we immediately
timeout the deferred button event and let the movement proceed.
This change only affects the 3-button emulation case.
Replace all in-tree uses with <sys/mouse.h> which repo-copied a few
moments ago from src/sys/i386/include/mouse.h by peter.
This is also the appropriate fix for exo-tree sources.
Put warnings in <machine/mouse.h> to discourage use.
November 15th 2000 the warnings will be converted to errors.
January 15th 2001 the <machine/mouse.h> files will be removed.
Replace all in-tree uses with necessary subset of <sys/{fb,kb,cons}io.h>.
This is also the appropriate fix for exo-tree sources.
Put warnings in <machine/console.h> to discourage use.
November 15th 2000 the warnings will be converted to errors.
January 15th 2001 the <machine/console.h> files will be removed.
- Fix the -z option which I broke in rev 1.41. It didn't work
correctly when used in conjunction with the -m option.
- Tweak the 3 button state machine so that 'Up' events of the buttons
1 and 3 are reported immediately as soon as the buttons are up.
Scroll Point, and 4D/4D+ mice.
- Add a couple of serial mouse PnP IDs.
- Extend the `-z' option so that the second wheel (or the horizontal
movement of the `scroll' device) can be mapped to buttons.
This mouse may be a OEM version of Genius EasyScroll Mouse.
(The mouse has three buttons on top, one side button and a wheel which
also acts as a button. However, I know no way to activate the wheel,
and it can only be used as an ordinary 3-buttons mouse :-)
machine. The three-button emulation of moused has been somewhat
difficult to use for many people. I hope this update fixes it.
- Add a new option, -E, to set timeout value to detect two buttons
are pressed down simulteneously. The default value for this timeout
is 200msec.
# `moused' is getting too over-loaded now. If we want something
# more than simple mouse emulation for tablets or remote devices,
# we should start writing a separate daemon...
Submitted by: luigi
mode' button. Mouse movement will be treated as wheel movement while
this button is held down. Useful for mice with many buttons but
without a wheel.
PR: bin/8001
Submitted by: Hideyuki Suzuki
- it has longer timeout as per the PnP COM Device Specificaiton 1.0,
- and it tries to obtain the PnP ID string by strictly following the
specification and if it fails, by deploying slightly simplified
steps. (moused has used the simplified method because early PnP mice
do not exactly follow the specification. But now, recent mice
do not supply the ID string unless the strict procedure is used...)
Jointly developed by luigi and yokota.
Submitted by: Randall Hopper <rhh@ct.picker.com>
The patch supports using the X10 Mouse Remote in both stand-alone and
pass-through configurations, so you can plug your mouse and remote into the
same serial port, use the mouse for X, and use the remote for other apps
like Fxtv. For instance, we can now control fxtv via the remote control
just like a TV : change channels, mute, increase volume, zoom video,
freeze frame 8)
The mouse events are channeled through the syscons/sysmouse I/F like
normal, and the remote buttons are "syphoned off" to a UNIX-domain stream
socket (defined as _PATH_MOUSEREMOTE in <machine/mouse.h>) for a
remote-aware app to grab and use.
For further info on the X10 Mouse Remote see:
http://www.x10.com/products/x10_mk19a.htm