95 Commits

Author SHA1 Message Date
pfg
7551d83c35 various: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

No functional change intended.
2017-11-27 15:37:16 +00:00
gonzo
650017c0d3 Add Elantech trackpad to the list of known models
PR:             205690
Submitted by:   Vladimir Kondratyev <wulf@cicgroup.ru>
MFC after:      1 week
2016-09-26 22:07:45 +00:00
araujo
bf0e51ce92 Use macro MAX() from sys/param.h.
MFC after:	2 weeks.
2016-04-22 03:55:33 +00:00
jkim
5ebabf1d3e Add preliminary support for IBM/Lenovo TrackPoint.
PR:		kern/147237 (based on the initial patch for 8.x)
Tested by:	glebius (device detection and suspend/resume)
MFC after:	1 month
2013-03-18 23:22:47 +00:00
hselasky
2eed5d6e94 Make sure moused is exiting as quick as possible after that the
umsX character device returns a read error. Update devd.conf rules
to use "DEVFS" events which are generated after that the umsX
character device node has been created/destroyed, and then there
should be no need for moused to wait up to 10 seconds for umsX to
be ready. Opening umsX should not fail except if the kernel is low
on memory. In that case the user can replug the USB mouse or use
"usbconfig" to reset the device. In case of USB mouse devices,
moused should neither retry to open its character device,
once the first read error has happened. This is an indication
of device detach.

MFC after:	1 week
2012-09-24 17:13:33 +00:00
hselasky
e1da8f7c60 The UMS module is now loaded by rules in /etc/devd/usb.conf which
are executed by devd. Remove duplicate kldload.

Reported by:	joel @
MFC after:	1 week
2012-03-17 16:40:15 +00:00
eadler
f568c7b0eb Fix warning when compiling with gcc46:
error: variable 'now' set but not used

Approved by:	dim, cperciva (mentor, blanket for pre-mentorship already-approved commits)
MFC after:	3 days
2012-01-20 01:38:05 +00:00
uqs
415a3a9b96 Spelling fixes for usr.sbin/ 2011-12-30 10:58:14 +00:00
ed
d0a630f994 Mark global functions and/or variables in moused(8) static where possible.
This allows compilers and static analyzers to do more thorough analysis.
2011-11-06 19:02:20 +00:00
brucec
6d9b42b486 Fix typos - remove duplicate "the".
PR:	bin/154928
Submitted by:	Eitan Adler <lists at eitanadler.com>
MFC after: 	3 days
2011-02-21 09:01:34 +00:00
mav
5972528548 When Emulate3Button is active, do not set select() timeout in states when
it is not needed. No need to kick CPU every 20ms without a purpose.

Reviewed by:	philip@
2010-06-15 19:19:04 +00:00
philip
e628a9c99a Improve the virtual scrolling mechanism to make middle clicking less
difficult.  Add a -L option (yet another option, indeed!) which changes the
speed of scrolling and change -U to only affect the scroll threshold.

This should make middle-clicking a much more pleasant experience.

PR:		bin/120186
Submitted by:	Aragon Gouveia <aragon -at- phat.za.net>
MFC after:	3 days
2008-05-15 15:05:02 +00:00
jkim
6de20f8883 Use intmax_t instead of long when casting time_t.
Suggested by:	mlaier
Tested with:	make universe
2008-03-07 00:01:24 +00:00
jkim
9ca2b049f6 Cast time_t to long to mute tinderbox build failure. 2008-03-06 02:14:45 +00:00
jkim
1f18efa367 Fix compiler warnings and style(9) bugs. 2008-03-06 00:24:11 +00:00
jkim
15d31e721f Prefer clock_gettime(2) over gettimeofday(2) and use CLOCK_MONOTONIC_FAST.
It is only used to track elapsed time and it does not have to be precise.
2008-03-06 00:22:17 +00:00
philip
c7a9176e2c Fix a (very) longstanding bug in moused(8) affecting high-resolution rodents
when linear acceleration (-a) was enabled with a <1 value to slow them down.

Previously, rounding errors would eat small movements so the mouse had to be
moved a certain distance to get any movement at all.  We now calculate the
rounding errors and take them into account when reporting movement.

PR:		bin/113749
Submitted by:	Oliver Fromme <olli -at- secnetix.de>
MFC after:	3 days
2007-06-17 20:27:54 +00:00
philip
50b3f4c302 Add dynamic acceleration to moused(8). This introduces a '-A' flag to control
the acceleration algorithm.  It can be used together with the '-a' flag for
regular acceleration.

PR:		bin/110003
Submitted by:	Oliver Fromme <olli -at- lurza.secnetix.de>
MFC after:	1 week
2007-03-11 20:02:26 +00:00
stefanf
7d273f1844 Convert macros to use C99's syntax for macros with a variable number of
arguments.
2006-07-20 09:47:15 +00:00
des
2c7a1f6f05 Replace the guts of usbmodule() with calls to the new kld(3) functions. 2006-02-18 11:26:36 +00:00
philip
7b7fd24838 Add "yet another" moused(8) hack: suspend handling mouse events when SIGUSR1
is caught.  Can be assigned to a window manager shortcut to prevent accidents
with touchpads.

PR:		bin/89357
Submitted by:	Nick Hibma <nick -at- van-laarhoven.org>
MFC after:	1 week
2005-12-04 00:28:40 +00:00
philip
3a96c530e2 Add an option to stop 'mouse drift' in some defective/cheap mice. This stops
the pointer slowly wandering away on its own in an annoying way when the mouse
isn't physically moved.

PR:		bin/83970
Submitted by:	Lena -at- lena.kiev.ua
X-MFC after:	6.0-RELEASE
2005-09-19 06:58:39 +00:00
pjd
c71407b589 Pidfiles should be created with permission preventing users from opening
them for reading. When user can open file for reading, he can also
flock(2) it, which can lead to confusions.

Pointed out by:	green
2005-09-16 11:24:28 +00:00
pjd
276e85f997 Use pidfile(3) in moused(8). 2005-08-24 17:27:06 +00:00
philip
bba20555e0 Add a -H option to enable horizontal virtual scrolling, much like -V for
vertical virtual scrolling.  This also respects -U for the distance.

PR:		bin/82762
Submitted by:	Eric Kjeldergaard <kjelderg -at- gmail.com>
MFC after:	1 month
2005-07-19 19:30:49 +00:00
mdodd
74692b8ce9 Support for the GTCO Digipad. 2005-04-13 07:25:45 +00:00
philip
b25d8559d6 Document the -V and -U options in usage().
Submitted by:	Jordan Sissel <psionic@csh.rit.edu>
2005-01-06 08:38:29 +00:00
philip
be2c53da9e Add 'virtual scrolling' support to moused(8). When holding down the middle
mouse button, motions are interpreted as scrolling.

Submitted by:	Jordan Sissel <psionic-AT-csh.rit.edu>
Approved by:	njl
2004-10-11 07:57:08 +00:00
philip
81234cca4a Teach moused about Synaptics touchpads.
While I'm here, document the existence of the '-l' option, which allows
one to use moused to use psm in some more interesting ways.

Approved by:	njl (mentor)
2004-08-03 18:43:45 +00:00
stefanf
9162daacbf Use C99 conforming designated initialisers rather than the obsolete GCC syntax. 2004-07-03 16:52:57 +00:00
sobomax
3ec9ac0946 Fix serious ugliness introduced in 1.61, which leads to long delay in boot
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
2004-01-10 13:09:21 +00:00
des
ded472a318 __FBSDID; remove duplicate <ctype.h>; try to reduce style inconsistencies. 2003-11-17 11:26:51 +00:00
des
ef53be6069 Sort includes, and remove superfluous <sys/types.h> 2003-11-17 11:14:34 +00:00
des
6c6b3db302 Instead of blindly loading the ums module and bailing out if that fails,
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>
2003-11-17 11:08:28 +00:00
des
6f2fab737b If the name of the mouse device starts with "/dev/ums", try to load the
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
2003-11-13 21:25:12 +00:00
des
eefd37c4bf Whitespace cleanup. 2003-11-13 08:26:29 +00:00
schweikh
d3367c5f5d Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.
2003-01-01 18:49:04 +00:00
schweikh
86f7487fb6 Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/
Add FreeBSD Id tag where missing.
2002-12-30 21:18:15 +00:00
charnier
aa31b7d1e4 Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:30:43 +00:00
knu
82c4e34477 Work around a code generation bug of GCC 3.1 by replacing
`/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
2002-05-19 06:53:20 +00:00
iedowse
679fd48b5c Fix a number of warnings. A gcc preprocessor bug relating to macros
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.
2002-04-28 11:59:30 +00:00
will
7342c8c661 Minor changes:
[1] Support the Sony VAIO Jogdial in moused(8).
 [2] Modify spic(4) to support additional Sony VAIO models.

Submitted by:	[1] Juriy Goloveshkin <j@gu.ru>,
		[2] Akira Funahashi <funa@funa.org>
Tested by:	cjh, jim, Jerry A! <jerry@thehutt.org>
Approved by:	nsayer
MFC after:	2 weeks
2002-03-24 03:07:07 +00:00
dougb
eadfc19f0c Expand the usage info to include the possible options for -i,
and fix the printf so that the line actually gets printed.
2001-08-09 18:12:07 +00:00
iedowse
9b020ad7f3 Oops, remove a `mouse_move_delayed++' that shouldn't have been
added in the previous commit; this variable is already incremented
in the previous `if' condition.
2001-07-08 21:16:20 +00:00
iedowse
b4102478b4 The state machine for 3-button emulation defers some button events
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.
2001-07-08 20:23:59 +00:00
greid
bf604b8765 Add an acceleration option to moused
PR:		28369
Submitted by:	Daniel O'Connor <darius@dons.net.au>
manpage reviewed by:	ru
MFC after:	10 days
2001-06-25 20:15:34 +00:00
dd
7894e59b7f Nuke unused variables. 2001-06-24 23:41:57 +00:00
asmodai
3065478332 Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
phk
410d456c0b Initiate deorbit burn sequence for <machine/mouse.h>.
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.
2000-10-09 08:08:36 +00:00
phk
a4f549597e Initiate deorbit burn sequence for <machine/console.h>.
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.
2000-10-08 21:34:00 +00:00