38 lines
1.3 KiB
Bash
38 lines
1.3 KiB
Bash
#!/system/bin/sh
|
|
# Installed only for an explicitly authorized root input test.
|
|
set -eu
|
|
dumpsys activity activities | grep 'topResumedActivity=.*org.qimiaoscreen.controller/' >/dev/null || exit 12
|
|
case "${1:-}" in
|
|
tap)
|
|
case "${2:-}:${3:-}" in *[!0-9:]*|:|:*|*:) exit 13 ;; esac
|
|
su -c "input tap $2 $3"
|
|
;;
|
|
swipe)
|
|
for value in "${2:-}" "${3:-}" "${4:-}" "${5:-}" "${6:-}"; do
|
|
case "$value" in ''|*[!0-9]*) exit 13 ;; esac
|
|
done
|
|
[ "$6" -ge 100 ] && [ "$6" -le 800 ] || exit 13
|
|
su -c "input swipe $2 $3 $4 $5 $6"
|
|
;;
|
|
select-all) su -c 'input keycombination 113 29' ;;
|
|
clear-field)
|
|
case "${2:-}" in ''|*[!0-9]*) exit 13 ;; esac
|
|
[ "$2" -ge 1 ] && [ "$2" -le 512 ] || exit 13
|
|
events=''
|
|
index=0
|
|
while [ "$index" -lt "$2" ]; do events="$events 67"; index=$((index + 1)); done
|
|
su -c "input keyevent 123; input keyevent$events"
|
|
;;
|
|
delete) su -c 'input keyevent KEYCODE_DEL' ;;
|
|
hide-keyboard)
|
|
if su -c 'dumpsys input_method' | grep -q 'mInputShown=true'; then su -c 'input keyevent KEYCODE_BACK'; fi
|
|
;;
|
|
paste) su -c 'input keyevent 279' ;;
|
|
back) su -c 'input keyevent KEYCODE_BACK' ;;
|
|
home) su -c 'input keyevent KEYCODE_HOME' ;;
|
|
bluetooth-disable) su -c 'cmd bluetooth_manager disable' ;;
|
|
bluetooth-enable) su -c 'cmd bluetooth_manager enable' ;;
|
|
*) exit 14 ;;
|
|
esac
|
|
echo QMS_INPUT_OK
|