C'è un ottimo post di @pbm che parla di questo, sul sito di Unix SE.
In breve, prima usa xinput list
per ottenere l'ID del dispositivo per il tuo mouse, quindi usa
xinput --set-prop [ID#] "Device Enabled" "0"
e
xinput --set-prop [ID#] "Device Enabled" "1"
per disabilitare e abilitare il mouse.
Li ho appena testati disabilitando il mouse e chiamando xset dpms force standby
. Agitare il mouse per diversi secondi non ha disturbato lo schermo, ma premere un solo tasto ha funzionato bene. L'utilizzo del secondo comando ha quindi riportato il mouse alla normalità, inclusa l'impostazione di "decelerazione costante" che i miei script di avvio predefiniti hanno impostato per me.
Dovresti essere in grado di passare questi due comandi al -startCmd
e -endCmd
opzioni a xlock
per ottenere ciò che cerchi.
Lo faccio in questo modo in Ubuntu:
#!/bin/bash
# allow only one instance
r=$(pidof -x -o $$ ssmonoff.sh)
set -- $r
if [ "${#@}" -ge 1 ]; then
echo "Script already running. Exit..."
exit
fi
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while read line; do
if echo $line | grep "boolean true" &> /dev/null; then
xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "0"
xset dpms force off
else
xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "1"
fi
done )
Alcune note:
- Sto anche forzando lo spegnimento del monitor.
- Meglio usare il nome completo invece dell'ID.
Spero che questo aiuti.