From 4e4d3dfb5dd3b0c544987642a087e4fd36bf923a Mon Sep 17 00:00:00 2001 From: Sakooooo <78461130+Sakooooo@users.noreply.github.com> Date: Sun, 24 Nov 2024 09:41:35 +0400 Subject: [PATCH] emacs.org: disable elcord if no frames take two --- config/emacs/emacs.org | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/config/emacs/emacs.org b/config/emacs/emacs.org index 60b88fef..20b21378 100644 --- a/config/emacs/emacs.org +++ b/config/emacs/emacs.org @@ -1087,7 +1087,24 @@ the feds are watching (setq elcord-quiet t) (setq elcord-display-elapsed nil) :config - (elcord-mode)) + (defun elcord--disable-elcord-if-no-frames (f) + (ignore f) + (when (let ((frames (delete f (visible-frame-list)))) + (or (null frames) + (elcord-mode -1))))) + + (defun elcord--enable-on-frame-created (f) + (elcord-mode +1)) + + (add-hook 'after-make-frame-functions 'elcord--enable-on-frame-created) + + (defun sakomacs/elcord-mode-hook () + (if elcord-mode + (add-hook 'delete-frame-functions 'elcord--disable-elcord-if-no-frames) + (remove-hook 'delete-frame-functions 'elcord--disable-elcord-if-no-frames))) + (elcord-mode) + (add-hook 'elcord-mode-hook 'sakomacs/elcord-mode-hook) + ) #+end_src ** Telegram does NOT WORK ON WINDOWS