diff options
author | André Fettouhi | 2015-10-31 19:22:05 +0100 |
---|---|---|
committer | André Fettouhi | 2015-10-31 19:22:05 +0100 |
commit | 4e2883b63c51873f7b913d93003f888179e0175f (patch) | |
tree | 1454836ec6f40467b8e7ffa7efd4961486f9c541 /acpi-eeepc-generic-toggle-resolution.sh | |
download | aur-4e2883b63c51873f7b913d93003f888179e0175f.tar.gz |
Initial import
Diffstat (limited to 'acpi-eeepc-generic-toggle-resolution.sh')
-rw-r--r-- | acpi-eeepc-generic-toggle-resolution.sh | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/acpi-eeepc-generic-toggle-resolution.sh b/acpi-eeepc-generic-toggle-resolution.sh new file mode 100644 index 000000000000..1036095acaa0 --- /dev/null +++ b/acpi-eeepc-generic-toggle-resolution.sh @@ -0,0 +1,60 @@ +#!/bin/bash +# Copyright 2009 Nicolas Bigaouette +# This file is part of acpi-eeepc-generic. +# http://code.google.com/p/acpi-eeepc-generic/ +# +# acpi-eeepc-generic is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# acpi-eeepc-generic is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with acpi-eeepc-generic. If not, see <http://www.gnu.org/licenses/>. + +. /etc/acpi/eeepc/acpi-eeepc-generic-functions.sh + +tmp_xrandr="$EEEPC_VAR/lvds-modes" + +if [ -e "$tmp_xrandr" ]; then + LVDS_XRANDR=$(cat $tmp_xrandr) +else + LVDS_XRANDR=$(xrandr > $tmp_xrandr) +fi + +LVDS_MODES=$(cat $tmp_xrandr | grep -F -e LVDS -A 12 | grep [0-9]x[0-9] | grep -v -e LVDS | awk '{printf $1" "}') +LVDS_CURRENT=$(cat $tmp_xrandr | grep -F -e LVDS -A 12 | grep -F -e [0-9]x[0-9] -e "*" | awk '{print $1}') + +function toggle_resolution { + for mode in $LVDS_MODES $LVDS_MODES; do + if [ "$mode" = "$LVDS_CURRENT" ]; then + NEXT=1; + elif [ "$NEXT" = "1" ]; then + xrandr -s $mode + eeepc_notify "Changing resolution to \"$mode\"" video-display + echo $mode > $EEEPC_VAR/resolution_saved + exit + fi + done +} + +function restore_resolution { + if [ -e "$EEEPC_VAR/resolution_saved" ]; then + RESOLUTION=$(cat $EEEPC_VAR/resolution_saved) + xrandr -s $RESOLUTION + eeepc_notify "Changing resolution back to \"$RESOLUTION\"" video-display + fi +} + +case $1 in + restore) + restore_resolution + ;; + *) + toggle_resolution + ;; +esac |