aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaúl Benencia <id@rbenencia.name>2025-12-23 10:15:19 -0800
committerRaúl Benencia <id@rbenencia.name>2025-12-23 10:15:19 -0800
commit981a58e8eb59dd254de1d33a4fa182c7128edc04 (patch)
treeb42deccdb869acdeeb8febf69e767bcf0617990a
parent2a5a15f37657fa864cea65e6219bcf5dcdf36b2c (diff)
optionally hide original org-clock mode-line
-rw-r--r--org-tempus.el37
1 files changed, 23 insertions, 14 deletions
diff --git a/org-tempus.el b/org-tempus.el
index 5d98ddd..4a6ee6c 100644
--- a/org-tempus.el
+++ b/org-tempus.el
@@ -51,6 +51,12 @@
:package-version '(org-tempus . "0.0.1")
:group 'org-tempus)
+(defcustom org-tempus-hide-org-mode-line-string t
+ "When non-nil, hide the stock Org mode line indicator."
+ :type 'boolean
+ :package-version '(org-tempus . "0.0.1")
+ :group 'org-tempus)
+
(defcustom org-tempus-update-interval 60
"Seconds between automatic mode line refreshes."
:type 'integer
@@ -103,11 +109,12 @@
(defun org-tempus--hide-org-mode-line ()
"Hide the stock Org mode line indicator while Org Tempus is active."
- (setq org-mode-line-string nil)
- (when (memq 'org-mode-line-string global-mode-string)
- (setq org-tempus--saved-org-mode-line-string-present t)
- (setq global-mode-string
- (remove 'org-mode-line-string global-mode-string))))
+ (when org-tempus-hide-org-mode-line-string
+ (setq org-mode-line-string nil)
+ (when (memq 'org-mode-line-string global-mode-string)
+ (setq org-tempus--saved-org-mode-line-string-present t)
+ (setq global-mode-string
+ (remove 'org-mode-line-string global-mode-string)))))
(defun org-tempus--notify (msg)
"Notify user with MSG using desktop notifications when available."
@@ -233,9 +240,10 @@ A session does not reset when switching tasks within
(append global-mode-string (list org-tempus--mode-line-format)))))
(setq org-tempus--saved-org-clock-clocked-in-display org-clock-clocked-in-display)
(setq org-clock-clocked-in-display nil)
- (setq org-tempus--saved-org-mode-line-string org-mode-line-string)
- (setq org-tempus--saved-org-mode-line-string-present nil)
- (org-tempus--hide-org-mode-line)
+ (when org-tempus-hide-org-mode-line-string
+ (setq org-tempus--saved-org-mode-line-string org-mode-line-string)
+ (setq org-tempus--saved-org-mode-line-string-present nil)
+ (org-tempus--hide-org-mode-line))
(when (org-clock-is-active)
(org-tempus--update-session-start))
(org-tempus--update-mode-line))
@@ -246,12 +254,13 @@ A session does not reset when switching tasks within
(remove org-tempus--mode-line-format global-mode-string))
(force-mode-line-update))
(setq org-clock-clocked-in-display org-tempus--saved-org-clock-clocked-in-display)
- (setq org-mode-line-string org-tempus--saved-org-mode-line-string)
- (when org-tempus--saved-org-mode-line-string-present
- (or global-mode-string (setq global-mode-string '("")))
- (unless (memq 'org-mode-line-string global-mode-string)
- (setq global-mode-string
- (append global-mode-string (list 'org-mode-line-string)))))
+ (when org-tempus-hide-org-mode-line-string
+ (setq org-mode-line-string org-tempus--saved-org-mode-line-string)
+ (when org-tempus--saved-org-mode-line-string-present
+ (or global-mode-string (setq global-mode-string '("")))
+ (unless (memq 'org-mode-line-string global-mode-string)
+ (setq global-mode-string
+ (append global-mode-string (list 'org-mode-line-string))))))
(when (timerp org-tempus--timer)
(cancel-timer org-tempus--timer))
(setq org-tempus--timer nil)
nihil fit ex nihilo