diff options
author | jao <jao@gnu.org> | 2024-03-26 02:00:50 +0000 |
---|---|---|
committer | jao <jao@gnu.org> | 2024-03-26 02:00:50 +0000 |
commit | 2f030a5cd44fac971b669f2cda4cc9a699001fc5 (patch) | |
tree | 45e3fe2497828cb9d52626e26c8c79200f392645 | |
parent | 05fc1a0ba74efc7831f9e4373894b17d4c09a2e1 (diff) | |
download | elibs-2f030a5cd44fac971b669f2cda4cc9a699001fc5.tar.gz elibs-2f030a5cd44fac971b669f2cda4cc9a699001fc5.tar.bz2 |
screensaver functions tweaks
-rw-r--r-- | init.el | 20 |
1 files changed, 12 insertions, 8 deletions
@@ -3097,15 +3097,17 @@ (defun jao-screensaver-enabled () (string= (jao-shell-string "xdg-screensaver status") "enabled")) +(defvar jao-screensaver--wid nil) (defun jao-screensaver-toggle () (interactive) - (let ((wid (jao-x11-focused-id))) - (if (jao-screensaver-enabled) - (jao-shell-exec* "xdg-screensaver" "suspend" wid) - (jao-shell-exec* "xdg-screensaver" wid)) - (jao-notify (format "Using '%s'" (jao-x11-window-name wid)) - (format "Screensaver %s" - (jao-shell-string "xdg-screensaver status"))))) + (if (jao-screensaver-enabled) + (let ((wid (jao-x11-focused-id))) + (setq jao-screensaver--wid wid) + (jao-shell-exec* t "xdg-screensaver" "suspend" wid)) + (jao-shell-exec* t "xdg-screensaver" "resume" jao-screensaver--wid) + (setq jao-screensaver--wid nil)) + (jao-notify (format "Screensaver %s" + (jao-shell-string "xdg-screensaver status")))) (jao-shell-def-exec jao-xlock-screen "xdg-screensaver" "activate") (jao-shell-def-exec jao-suspend "sudo" "systemctl" "suspend") @@ -3121,7 +3123,9 @@ ["Sleep" ("l" "lock screen" jao-lock-screen) ("z" "sleep" jao-suspend) - ("u" "enable/disable screensaver" jao-screensaver-toggle) + ("u" (lambda () + (if (jao-screensaver-enabled) "suspend screensaver" "resume screensaver")) + jao-screensaver-toggle) ("poof" "power-off" jao-poweroff)]) ;;;; X clipboard |