| 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 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 fi | 93 fi |
| 94 ;; | 94 ;; |
| 95 | 95 |
| 96 gnome_screensaver) | 96 gnome_screensaver) |
| 97 screensaver_gnome_screensaver "$1" | 97 screensaver_gnome_screensaver "$1" |
| 98 ;; | 98 ;; |
| 99 | 99 |
| 100 xscreensaver) | 100 xscreensaver) |
| 101 screensaver_xscreensaver "$1" | 101 screensaver_xscreensaver "$1" |
| 102 ;; | 102 ;; |
| 103 |
| 104 '') |
| 105 screensaver_xserver "$1" |
| 106 ;; |
| 103 esac | 107 esac |
| 104 | 108 |
| 105 if [ "$1" = "suspend" ] ; then | 109 if [ "$1" = "suspend" ] ; then |
| 106 # Save DPMS state | 110 # Save DPMS state |
| 107 if xset -q | grep 'DPMS is Enabled' > /dev/null 2> /dev/null; then | 111 if xset -q | grep 'DPMS is Enabled' > /dev/null 2> /dev/null; then |
| 108 test "${TMPDIR+set}" = set || TMPDIR=/tmp | 112 test "${TMPDIR+set}" = set || TMPDIR=/tmp |
| 109 tmpfile=`mktemp $TMPDIR/tmp.XXXXXXXXXX` | 113 tmpfile=`mktemp $TMPDIR/tmp.XXXXXXXXXX` |
| 110 $MV "$tmpfile" "$screensaver_file.dpms" | 114 $MV "$tmpfile" "$screensaver_file.dpms" |
| 111 # Disable DPMS | 115 # Disable DPMS |
| 112 xset -dpms | 116 xset -dpms |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 293 echo "enabled" | 297 echo "enabled" |
| 294 elif [ x"$status" = "xfalse" ]; then | 298 elif [ x"$status" = "xfalse" ]; then |
| 295 echo "disabled" | 299 echo "disabled" |
| 296 else | 300 else |
| 297 echo "ERROR: dbus org.freedesktop.ScreenSaver.GetActive returned '$s
tatus'" >&2 | 301 echo "ERROR: dbus org.freedesktop.ScreenSaver.GetActive returned '$s
tatus'" >&2 |
| 298 return 1 | 302 return 1 |
| 299 fi | 303 fi |
| 300 ;; | 304 ;; |
| 301 | 305 |
| 302 *) | 306 *) |
| 303 echo "ERROR: Unknown command '$1'" >&2 | 307 echo "ERROR: Unknown command '$1'" >&2 |
| 304 return 1 | 308 return 1 |
| 305 ;; | 309 ;; |
| 306 esac | 310 esac |
| 307 } | 311 } |
| 308 | 312 |
| 309 screensaver_kde() | 313 screensaver_kde() |
| 310 { | 314 { |
| 311 case "$1" in | 315 case "$1" in |
| 312 suspend) | 316 suspend) |
| 313 dcop kdesktop KScreensaverIface enable false > /dev/null | 317 dcop kdesktop KScreensaverIface enable false > /dev/null |
| (...skipping 22 matching lines...) Expand all Loading... |
| 336 ;; | 340 ;; |
| 337 | 341 |
| 338 status) | 342 status) |
| 339 status=`dcop kdesktop KScreensaverIface isEnabled` | 343 status=`dcop kdesktop KScreensaverIface isEnabled` |
| 340 result=$? | 344 result=$? |
| 341 if [ x"$status" = "xtrue" ]; then | 345 if [ x"$status" = "xtrue" ]; then |
| 342 echo "enabled" | 346 echo "enabled" |
| 343 elif [ x"$status" = "xfalse" ]; then | 347 elif [ x"$status" = "xfalse" ]; then |
| 344 echo "disabled" | 348 echo "disabled" |
| 345 else | 349 else |
| 346 echo "ERROR: kdesktop KScreensaverIface isEnabled returned '$status
'" >&2 | 350 echo "ERROR: kdesktop KScreensaverIface isEnabled returned '$status'
" >&2 |
| 347 return 1 | 351 return 1 |
| 348 fi | 352 fi |
| 349 ;; | 353 ;; |
| 350 | 354 |
| 351 *) | 355 *) |
| 352 echo "ERROR: Unknown command '$1'" >&2 | 356 echo "ERROR: Unknown command '$1'" >&2 |
| 357 return 1 |
| 358 ;; |
| 359 esac |
| 360 } |
| 361 |
| 362 screensaver_xserver() |
| 363 { |
| 364 case "$1" in |
| 365 suspend) |
| 366 xset s off > /dev/null |
| 367 result=$? |
| 368 ;; |
| 369 |
| 370 resume) |
| 371 xset s default > /dev/null |
| 372 result=$? |
| 373 ;; |
| 374 |
| 375 activate) |
| 376 xset s activate > /dev/null |
| 377 result=$? |
| 378 ;; |
| 379 |
| 380 reset) |
| 381 xset s reset > /dev/null |
| 382 result=$? |
| 383 ;; |
| 384 |
| 385 status) |
| 386 timeout=`xset q | sed '/^Screen Saver:/,/^[^ ]/ { s/.*timeout: *\([0-9]*
\).*/\1/; t }; d'` |
| 387 result=$? |
| 388 if [ "$timeout" -gt 0 ]; then |
| 389 echo "enabled" |
| 390 elif [ "$timeout" -eq 0 ]; then |
| 391 echo "disabled" |
| 392 else |
| 393 echo "ERROR: xset q did not report the screensaver timeout" >&2 |
| 394 return 1 |
| 395 fi |
| 396 ;; |
| 397 |
| 398 *) |
| 399 echo "ERROR: Unknown command '$1'" >&2 |
| 353 return 1 | 400 return 1 |
| 354 ;; | 401 ;; |
| 355 esac | 402 esac |
| 356 } | 403 } |
| 357 | 404 |
| 358 screensaver_suspend_loop() | 405 screensaver_suspend_loop() |
| 359 { | 406 { |
| 360 lockfile | 407 lockfile |
| 361 test "${TMPDIR+set}" = set || TMPDIR=/tmp | 408 test "${TMPDIR+set}" = set || TMPDIR=/tmp |
| 362 tmpfile=`mktemp $TMPDIR/tmp.XXXXXXXXXX` | 409 tmpfile=`mktemp $TMPDIR/tmp.XXXXXXXXXX` |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 echo "disabled" | 470 echo "disabled" |
| 424 elif gnome-screensaver-command --query > /dev/null 2> /dev/null; then | 471 elif gnome-screensaver-command --query > /dev/null 2> /dev/null; then |
| 425 echo "enabled" | 472 echo "enabled" |
| 426 else | 473 else |
| 427 # Something is wrong | 474 # Something is wrong |
| 428 echo "disabled" | 475 echo "disabled" |
| 429 fi | 476 fi |
| 430 ;; | 477 ;; |
| 431 | 478 |
| 432 *) | 479 *) |
| 433 echo "ERROR: Unknown command '$1" >&2 | 480 echo "ERROR: Unknown command '$1" >&2 |
| 434 return 1 | 481 return 1 |
| 435 ;; | 482 ;; |
| 436 esac | 483 esac |
| 437 } | 484 } |
| 438 | 485 |
| 439 screensaver_xscreensaver() | 486 screensaver_xscreensaver() |
| 440 { | 487 { |
| 441 case "$1" in | 488 case "$1" in |
| 442 suspend) | 489 suspend) |
| 443 screensaver_suspend_loop xscreensaver-command -deactivate | 490 screensaver_suspend_loop xscreensaver-command -deactivate |
| (...skipping 24 matching lines...) Expand all Loading... |
| 468 status) | 515 status) |
| 469 result=0 | 516 result=0 |
| 470 if [ -f "$screensaver_file" ] ; then | 517 if [ -f "$screensaver_file" ] ; then |
| 471 echo "disabled" | 518 echo "disabled" |
| 472 else | 519 else |
| 473 echo "enabled" | 520 echo "enabled" |
| 474 fi | 521 fi |
| 475 ;; | 522 ;; |
| 476 | 523 |
| 477 *) | 524 *) |
| 478 echo "ERROR: Unknown command '$1" >&2 | 525 echo "ERROR: Unknown command '$1" >&2 |
| 479 return 1 | 526 return 1 |
| 480 ;; | 527 ;; |
| 481 esac | 528 esac |
| 482 } | 529 } |
| 483 | 530 |
| 484 [ x"$1" != x"" ] || exit_failure_syntax | 531 [ x"$1" != x"" ] || exit_failure_syntax |
| 485 | 532 |
| 486 action= | 533 action= |
| 487 window_id= | 534 window_id= |
| 488 | 535 |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 550 if [ "$action" = "suspend" ] ; then | 597 if [ "$action" = "suspend" ] ; then |
| 551 # Start tracking $window_id and resume the screensaver once it disappears | 598 # Start tracking $window_id and resume the screensaver once it disappears |
| 552 ( track_window ) 2> /dev/null > /dev/null & | 599 ( track_window ) 2> /dev/null > /dev/null & |
| 553 fi | 600 fi |
| 554 | 601 |
| 555 if [ $result -eq 0 ]; then | 602 if [ $result -eq 0 ]; then |
| 556 exit_success | 603 exit_success |
| 557 else | 604 else |
| 558 exit_failure_operation_failed | 605 exit_failure_operation_failed |
| 559 fi | 606 fi |
| OLD | NEW |