#!/bin/dash reset_wallpaper_twice=0 if ! test "$(hostname | tr '[A-Z]' '[a-z]')" = zenith; then # Reset rat size in case DPI change modified scaling xsetroot -cursor_name left_ptr || : # Reset rat speed in case DPI changed if test "${DESKTOP_SESSION}" = xmonad && test ! "${NO_MATE}" = y; then msd=/usr/lib/mate-settings-daemon/mate-settings-daemon if ! test -x "$msd"; then msd=mate-settings-daemon fi (exec $msd --replace &) || : # mate-settings-daemon will change the keyboard layout (sleep 1; setkeys) & # mate-settings-daemon may change the wallpaper reset_wallpaper_twice=1 fi fi # Reset background in case resolution change damaged it for file in ~/.config/background.${SESSION_} \ ~/.config/background.${SESSION} \ ~/.config/background.${DESKTOP_SESSION} \ ~/.config/background; do if test -r "$file"; then xwallpaper --zoom "$file" if test ${reset_wallpaper_twice} = 1; then # Again, with delay, in case mate-settings-daemon changes it (sleep 2 ; xwallpaper --zoom "$file") & fi fi done # Broadcast resolution change if test -n "${XDG_RUNTIME_DIR}"; then if test -n "${DISPLAY}"; then mkdir -p -- "${XDG_RUNTIME_DIR}/x-display/${DISPLAY}/" printf -- '%ix%i%+i%+i\n' "$@" > "${XDG_RUNTIME_DIR}/x-display/${DISPLAY}/resolution~" mv -- "${XDG_RUNTIME_DIR}/x-display/${DISPLAY}/resolution~" "${XDG_RUNTIME_DIR}/x-display/${DISPLAY}/resolution" fi if test -z "${BUS_VIDEO}"; then BUS_VIDEO="${XDG_RUNTIME_DIR}/@bus/video" fi fi if test -n "${BUS_VIDEO}"; then bus broadcast "${BUS_VIDEO}" "resolution changed:$(printf -- ' %ix%i%+i%+i' "$@")" fi