>From 83358a12ccb60177b6698db33fb85176c5400fde Mon Sep 17 00:00:00 2001 From: Mansour Behabadi <mans...@oxplot.com> Date: Sun, 6 Oct 2013 01:07:38 +1000 Subject: [PATCH] xdg-screensaver: Support MATE desktop
Signed-off-by: Mansour Behabadi <mans...@oxplot.com> --- scripts/xdg-screensaver | 57 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/scripts/xdg-screensaver b/scripts/xdg-screensaver index 2757c5b..801ef85 100755 --- a/scripts/xdg-screensaver +++ b/scripts/xdg-screensaver @@ -429,6 +429,10 @@ perform_action() screensaver_gnome_screensaver "$1" ;; + mate_screensaver) + screensaver_mate_screensaver "$1" + ;; + xscreensaver) screensaver_xscreensaver "$1" ;; @@ -815,6 +819,57 @@ screensaver_gnome_screensaver() esac } +screensaver_mate_screensaver() +{ +# mate-screensaver is almost identical to gnome's counterpart for now +# but due to possibility of it diverging, we have a separate function +# for it. + case "$1" in + suspend) + screensaver_suspend_loop mate-screensaver-command --poke + result=0 + ;; + + resume) + # Automatic resume when $screensaver_file disappears + result=0 + ;; + + activate) + mate-screensaver-command --activate > /dev/null 2> /dev/null + result=$? + ;; + + lock) + mate-screensaver-command --lock > /dev/null 2> /dev/null + result=$? + ;; + + reset) + # Turns the screensaver off right now + mate-screensaver-command --deactivate > /dev/null 2> /dev/null + result=$? + ;; + + status) + result=0 + if [ -f "$screensaver_file" ] ; then + echo "disabled" + elif mate-screensaver-command --query > /dev/null 2> /dev/null; then + echo "enabled" + else + # Something is wrong + echo "disabled" + fi + ;; + + *) + echo "ERROR: Unknown command '$1" >&2 + return 1 + ;; + esac +} + screensaver_xscreensaver() { case "$1" in @@ -918,6 +973,8 @@ detectDE xscreensaver-command -version 2> /dev/null | grep XScreenSaver > /dev/null && DE="xscreensaver" # Consider "gnome-screensaver" a separate DE gnome-screensaver-command -q > /dev/null 2>&1 && DE="gnome_screensaver" +# Consider "mate-screensaver" a separate DE +mate-screensaver-command -q > /dev/null 2>&1 && DE="mate_screensaver" if [ "$action" = "resume" ] ; then do_resume -- 1.8.3.1 _______________________________________________ xdg mailing list xdg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xdg