lowPowerOff(){ # switch from lowpower to normal mode
oldspeed=$(cat /tmp/oldspeed)
/usr/pandora/scripts/op_cpuspeed.sh -n $oldspeed
+ rm -f /tmp/oldspeed
display_on
resume_net
echo 255 > /sys/class/leds/pandora\:\:power/brightness #power LED bright
}
+display_on_with_checks() {
+ # after turning on the display, we don't want lowpower state
+ # (which could be active because of some races)
+ if [ "$powerstate" = "buttonlowpower" -o "$powerstate" = "lidlowpower" -o \
+ -e /tmp/oldspeed ]
+ then
+ lowPowerOff
+ else
+ display_on
+ fi
+}
+
show_message() {
# TODO: check if desktop is visible; maybe use layer3?
xfceuser=$(ps u -C xfce4-session | tail -n1 | awk '{print $1}')
powerstate="on"
;;
*)
- (debug && echo "display_on") || display_on
+ (debug && echo "display_on") || display_on_with_checks
powerstate="on"
;;
esac
unset DISPLAY
if [[ "$1" == 0 ]]; then # deactivate screensaver
- display_on
+ display_on_with_checks
+ powerstate="on"
elif [[ "$1" == 1 ]]; then # activate screensaver
display_off
fi