| OLD | NEW | 
|---|
| 1 #!/bin/sh | 1 #!/bin/sh | 
| 2 #--------------------------------------------- | 2 #--------------------------------------------- | 
| 3 #   xdg-screensaver | 3 #   xdg-screensaver | 
| 4 # | 4 # | 
| 5 #   Utility script to control screensaver. | 5 #   Utility script to control screensaver. | 
| 6 # | 6 # | 
| 7 #   Refer to the usage() function below for usage. | 7 #   Refer to the usage() function below for usage. | 
| 8 # | 8 # | 
| 9 #   Copyright 2006, Bryce Harrington <bryce@osdl.org> | 9 #   Copyright 2006, Bryce Harrington <bryce@osdl.org> | 
| 10 # | 10 # | 
| (...skipping 413 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 424     unlockfile | 424     unlockfile | 
| 425     return | 425     return | 
| 426   fi | 426   fi | 
| 427   $MV "$tmpfile" "$screensaver_file" | 427   $MV "$tmpfile" "$screensaver_file" | 
| 428   unlockfile | 428   unlockfile | 
| 429   (while [ -f "$screensaver_file" ]; do $*; sleep 50; done) > /dev/null 2> /dev/
     null & | 429   (while [ -f "$screensaver_file" ]; do $*; sleep 50; done) > /dev/null 2> /dev/
     null & | 
| 430 } | 430 } | 
| 431 | 431 | 
| 432 screensaver_gnome_screensaver() | 432 screensaver_gnome_screensaver() | 
| 433 { | 433 { | 
| 434 # TODO | 434 # DBUS interface for gnome-screensaver | 
| 435 # There seems to be a DBUS interface for gnome-screensaver | 435 # http://people.gnome.org/~mccann/gnome-screensaver/docs/gnome-screensaver.html | 
| 436 # See http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2006-April/042579.html
      and |  | 
| 437 # http://cvs.gnome.org/viewcvs/gnome-screensaver/src/gs-listener-dbus.c?rev=1.36
     &view=log |  | 
| 438 # A problem seems to be that Inhibit is tied to the lifetime of the DBUS appname
      and |  | 
| 439 # this can not be used from a script |  | 
| 440     case "$1" in | 436     case "$1" in | 
| 441         suspend) | 437         suspend) | 
| 442         screensaver_suspend_loop gnome-screensaver-command --poke | 438         screensaver_suspend_loop \ | 
| 443         result=0 | 439         dbus-send --session \ | 
|  | 440                   --dest=org.gnome.ScreenSaver \ | 
|  | 441                   --type=method_call \ | 
|  | 442                   /org/gnome/ScreenSaver \ | 
|  | 443                   org.gnome.ScreenSaver.SimulateUserActivity \ | 
|  | 444                   2> /dev/null | 
|  | 445         result=$? | 
| 444         ;; | 446         ;; | 
| 445 | 447 | 
| 446         resume) | 448         resume) | 
| 447         # Automatic resume when $screensaver_file disappears | 449         # Automatic resume when $screensaver_file disappears | 
| 448         result=0 | 450         result=0 | 
| 449         ;; | 451         ;; | 
| 450 | 452 | 
| 451         activate) | 453         activate) | 
| 452         gnome-screensaver-command --activate > /dev/null 2> /dev/null | 454         dbus-send --session \ | 
|  | 455                   --dest=org.gnome.ScreenSaver \ | 
|  | 456                   --type=method_call \ | 
|  | 457                   /org/gnome/ScreenSaver \ | 
|  | 458                   org.gnome.ScreenSaver.SetActive \ | 
|  | 459                   boolean:true \ | 
|  | 460                   2> /dev/null | 
| 453         result=$? | 461         result=$? | 
| 454         ;; | 462         ;; | 
| 455 | 463 | 
| 456         lock) | 464         lock) | 
| 457         gnome-screensaver-command --lock > /dev/null 2> /dev/null | 465         gnome-screensaver-command --lock > /dev/null 2> /dev/null | 
| 458         result=$? | 466         result=$? | 
| 459         ;; | 467         ;; | 
| 460 | 468 | 
| 461         reset) | 469         reset) | 
| 462         # Turns the screensaver off right now | 470         # Turns the screensaver off right now | 
| 463         gnome-screensaver-command --deactivate > /dev/null 2> /dev/null | 471         dbus-send --session \ | 
|  | 472                   --dest=org.gnome.ScreenSaver \ | 
|  | 473                   --type=method_call \ | 
|  | 474                   /org/gnome/ScreenSaver \ | 
|  | 475                   org.gnome.ScreenSaver.SimulateUserActivity \ | 
|  | 476                  2> /dev/null | 
| 464         result=$? | 477         result=$? | 
| 465         ;; | 478         ;; | 
| 466 | 479 | 
| 467         status) | 480         status) | 
| 468         result=0 | 481         status=`dbus-send --session \ | 
| 469         if [ -f "$screensaver_file" ] ; then | 482                           --dest=org.gnome.ScreenSaver \ | 
| 470             echo "disabled" | 483                           --type=method_call \ | 
| 471         elif gnome-screensaver-command --query > /dev/null 2> /dev/null; then | 484                           --print-reply \ | 
|  | 485                           --reply-timeout=2000 \ | 
|  | 486                           /org/gnome/ScreenSaver \ | 
|  | 487                           org.gnome.ScreenSaver.GetActive \ | 
|  | 488                           | grep boolean | cut -d ' ' -f 5` | 
|  | 489         result=$? | 
|  | 490         if [ x"$status" = "xtrue" -o x"$status" = "xfalse" ]; then | 
| 472             echo "enabled" | 491             echo "enabled" | 
|  | 492         elif [ x"$result" != "x0" ]; then | 
|  | 493             echo "ERROR: dbus org.gnome.ScreenSaver.GetActive returned '$status'
     " >&2 | 
|  | 494             return 1 | 
| 473         else | 495         else | 
| 474             # Something is wrong |  | 
| 475             echo "disabled" | 496             echo "disabled" | 
| 476         fi | 497         fi | 
| 477         ;; | 498         ;; | 
| 478 | 499 | 
| 479         *) | 500         *) | 
| 480         echo "ERROR: Unknown command '$1" >&2 | 501         echo "ERROR: Unknown command '$1" >&2 | 
| 481         return 1 | 502         return 1 | 
| 482         ;; | 503         ;; | 
| 483     esac | 504     esac | 
| 484 } | 505 } | 
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 597 if [ "$action" = "suspend" ] ; then | 618 if [ "$action" = "suspend" ] ; then | 
| 598     # Start tracking $window_id and resume the screensaver once it disappears | 619     # Start tracking $window_id and resume the screensaver once it disappears | 
| 599     ( track_window  ) 2> /dev/null > /dev/null & | 620     ( track_window  ) 2> /dev/null > /dev/null & | 
| 600 fi | 621 fi | 
| 601 | 622 | 
| 602 if [ $result -eq 0 ]; then | 623 if [ $result -eq 0 ]; then | 
| 603     exit_success | 624     exit_success | 
| 604 else | 625 else | 
| 605     exit_failure_operation_failed | 626     exit_failure_operation_failed | 
| 606 fi | 627 fi | 
| OLD | NEW | 
|---|