Added autorotate using accelerometer script
This commit is contained in:
parent
565eae8835
commit
b86b152e6e
3 changed files with 48 additions and 2 deletions
|
@ -66,7 +66,8 @@ programchoicesinit() {
|
||||||
Bar Toggle ^ 1 ^ key Alt+b
|
Bar Toggle ^ 1 ^ key Alt+b
|
||||||
Invert Colors ^ 1 ^ xcalib -a -invert
|
Invert Colors ^ 1 ^ xcalib -a -invert
|
||||||
Change Timezone ^ 1 ^ sxmo_timezonechange.sh
|
Change Timezone ^ 1 ^ sxmo_timezonechange.sh
|
||||||
Rotate ^ 1 ^ sxmo_rotate.sh
|
Toggle Autorotate ^ 0 ^ sxmo_autorotate.sh
|
||||||
|
Rotate ^ 1 ^ sxmo_rotate.sh rotate
|
||||||
Upgrade Pkgs ^ 0 ^ st -e sxmo_upgrade.sh
|
Upgrade Pkgs ^ 0 ^ st -e sxmo_upgrade.sh
|
||||||
"
|
"
|
||||||
WINNAME=Config
|
WINNAME=Config
|
||||||
|
|
36
scripts/core/sxmo_autorotate.sh
Executable file
36
scripts/core/sxmo_autorotate.sh
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
RUNNING_AUTO="$(ps aux | grep "sh /usr/bin/sxmo_autorotate.sh" | grep -v grep | cut -f1 -d' ' | grep -v "$$")"
|
||||||
|
|
||||||
|
[ "$(echo "$RUNNING_AUTO" | wc -l)" -ge "2" ] && echo "$RUNNING_AUTO" | tr '\n' ' ' | xargs kill -9
|
||||||
|
[ "$(echo "$RUNNING_AUTO" | wc -l)" -ge "2" ] && notify-send "Turning autorotate off" && exit 1
|
||||||
|
|
||||||
|
notify-send "Turning autorotate on"
|
||||||
|
|
||||||
|
GRAVITY="16374"
|
||||||
|
THRESHOLD="400"
|
||||||
|
POLL_TIME=1
|
||||||
|
|
||||||
|
RIGHT_SIDE_UP="$(echo "$GRAVITY - $THRESHOLD" | bc)"
|
||||||
|
UPSIDE_DOWN="$(echo "-$GRAVITY + $THRESHOLD" | bc)"
|
||||||
|
y_file="$(find /sys/bus/iio/devices/iio\:device*/ -iname in_accel_y_raw)"
|
||||||
|
x_file="$(find /sys/bus/iio/devices/iio\:device*/ -iname in_accel_x_raw)"
|
||||||
|
|
||||||
|
while :
|
||||||
|
do
|
||||||
|
|
||||||
|
y_raw="$(cat "$y_file")"
|
||||||
|
x_raw="$(cat "$x_file")"
|
||||||
|
|
||||||
|
if [ "$x_raw" -ge "$RIGHT_SIDE_UP" ]
|
||||||
|
then
|
||||||
|
sxmo_rotate.sh rotnormal
|
||||||
|
elif [ "$y_raw" -le "$UPSIDE_DOWN" ]
|
||||||
|
then
|
||||||
|
sxmo_rotate.sh rotright
|
||||||
|
elif [ "$y_raw" -ge "$RIGHT_SIDE_UP" ]
|
||||||
|
then
|
||||||
|
sxmo_rotate.sh rotleft
|
||||||
|
fi
|
||||||
|
sleep "$POLL_TIME"
|
||||||
|
done
|
|
@ -28,8 +28,17 @@ rotright() {
|
||||||
exit 0
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rotleft() {
|
||||||
|
xrandr -o left
|
||||||
|
applyptrmatrix 0 -1 1 1 0 0 0 0 1
|
||||||
|
pkill lisgd
|
||||||
|
sxmo_lisgdstart.sh -o -1 &
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
rotate() {
|
rotate() {
|
||||||
if isrotated; then rotnormal; else rotright; fi
|
if isrotated; then rotnormal; else rotright; fi
|
||||||
}
|
}
|
||||||
|
|
||||||
rotate
|
"$1"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue