Okay, so I managed to come up with a workaround(ish) thing for this
particular problem; you need to reload the hid-multitouch kernel module,
and then re-enable the device using xinput.
Example script
#!/bin/bash
# Touchpad / Touchscreen Fix Script
# 2016.05.24
# Mark C. Roduner, Jr.
# If Run as root; fix all users, otherwise fix the current user
SCRIPT=$0
#Space separated list of kernel modules to reload
MODS_RELOAD="hid-multitouch"
get_users() {
#echo ":1 mroduner"
w -sh | sed -r "s/([^ ]+)[^:]+(:[0-9.]+).*/\2 \1/" | sort | uniq
}
execute_fix() {
export DISPLAY="$1"
sudo -iu "$2" $SCRIPT
}
get_core_regex() {
xinput --list --long | grep "Virtual core" | sed -r
's/.*id\=([0-9]+).*/\\b\1\\b/' | sort | uniq | tr '\n' '|'
}
get_all_pointers() {
xinput --list --long | grep XIButtonClass | sed -r "s/.*:
([0-9]+).*/\1/" | sort | uniq | tr '\n' ' '
}
get_real_pointers() {
EXPR="`get_core_regex` +"
get_all_pointers | sed -r "s/$EXPR/ /g"
}
if [ `id -u` -ne 0 ]; then
echo "Enabling devices for ${USERNAME}${DISPLAY}... "
for PTR in `get_real_pointers`; do
xinput set-prop $PTR "Device Enabled" 1
done
exit 0
fi
echo -n Reloading Modules:
for MOD in $MODS_RELOAD; do
echo -n " $MOD"
rmmod "$MOD" && modprobe "$MOD"
done
echo -e "\nFixing Input Devices..."
CDISP="$DISPLAY"
get_users \
| while read USER; do
execute_fix $USER;
done
export DISPLAY="$CDISP"
echo -e "\nDone."
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1437759
Title:
[Lenovo Miix] Synaptic/ITE Tech touchpad (06cb:a001) cannot be
configured by hid-rmi
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1437759/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs