move some machine-specific keyboard settings to their respective profile
[~bandali/configs] / .local / bin / toggle-tablet
1 #!/bin/sh
2 # This script toggles between a 'normal' mode and a 'tablet' mode, doing
3 # a few things:
4
5 # - rotates the screen using =xrandr=, so that rotating the physical
6 # display of my X220t would have the laptop's battery on the right
7 # hand side,
8 # - enables touch screen,
9 # - properly rotates the stylus pen and touch screen pointers, and
10 # - toggles between RGB and Vertical BGR sub-pixel order.
11
12 case $(xfconf-query -c pointers -p /Wacom_ISDv4_E6_Pen_stylus/Properties/Wacom_Rotation) in
13 0) # Screen is not rotated, we should rotate it right (90°)
14 xrandr -o 3
15 xfconf-query -c pointers -p /Wacom_ISDv4_E6_Pen_stylus/Properties/Wacom_Rotation -s 1
16 xfconf-query -c pointers -p /Wacom_ISDv4_E6_Finger_touch/Properties/Device_Enabled -s 1
17 xfconf-query -c pointers -p /Wacom_ISDv4_E6_Finger_touch/Properties/Wacom_Rotation -s 1
18 xfconf-query -c xsettings -p /Xft/RGBA -s vbgr
19 ;;
20 1) # Currently top is rotated right, we should set it normal (0°)
21 xrandr -o 0
22 xfconf-query -c pointers -p /Wacom_ISDv4_E6_Pen_stylus/Properties/Wacom_Rotation -s 0
23 xfconf-query -c pointers -p /Wacom_ISDv4_E6_Finger_touch/Properties/Wacom_Rotation -s 0
24 xfconf-query -c pointers -p /Wacom_ISDv4_E6_Finger_touch/Properties/Device_Enabled -s 0
25 xfconf-query -c xsettings -p /Xft/RGBA -s rgb
26 ;;
27 *)
28 echo "Unknown result from 'xfconf-query -c pointers -p /Wacom_ISDv4_E6_Pen_stylus/Properties/Wacom_Rotation'" >&2
29 exit 1
30 ;;
31 esac