moused(8): Add command line option to restrict interface type

to evdev or sysmouse. It is required to avoid receiving of double events
on hybrid devices supporting both interfaces like ums (4).

MFC after:	1 day
Reviewed by:	glebius (via private chat)
Differential Revision:	https://reviews.freebsd.org/D52647
This commit is contained in:
Vladimir Kondratyev
2025-09-21 16:14:48 +03:00
parent b1442e6b8d
commit 1335bf5ce1
4 changed files with 60 additions and 19 deletions
+1 -1
View File
@@ -589,7 +589,7 @@ saver="NO" # screen saver: Uses /boot/kernel/${saver}_saver.ko
moused_nondefault_enable="NO" # Treat non-default mice as enabled unless
# specifically overridden in rc.conf(5).
moused_enable="NO" # Run the mouse daemon.
moused_type="auto" # See man page for rc.conf(5) for available settings.
moused_type="evdev" # See man page for rc.conf(5) for available settings.
moused_port="auto" # Set to your mouse port.
moused_flags="" # Any additional flags to moused.
mousechar_start="NO" # if 0xd0-0xd3 default range is occupied in your
+5 -2
View File
@@ -16,6 +16,7 @@ start_cmd="moused_start"
pidprefix="/var/run/moused"
pidfile="${pidprefix}.pid"
pidarg=
typearg=
load_rc_config $name
# doesn't make sense to run in a svcj: nojail keyword
@@ -49,15 +50,17 @@ moused_start()
eval myflags=\${moused_${ms}_flags-$moused_flags}
eval myport=\${moused_${ms}_port-/dev/$ms}
eval mytype=\${moused_${ms}_type-$moused_type}
if [ -n "$mytype" ] && check_kern_features evdev_support; then
typearg="-t ${mytype}"
fi
else
ms="default"
myflags="$moused_flags"
myport="$moused_port"
mytype="$moused_type"
fi
startmsg -n "Starting ${ms} moused"
/usr/sbin/moused ${myflags} -p ${myport} -t ${mytype} ${pidarg}
/usr/sbin/moused ${myflags} -p ${myport} ${typearg} ${pidarg}
startmsg '.'
mousechar_arg=