summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Wahl <marcowahlsoft@gmail.com>2020-03-01 22:45:35 +0100
committerMarco Wahl <marcowahlsoft@gmail.com>2020-03-01 22:45:35 +0100
commitabf5ab0944c2cc65ea44ac746e38c2d3f8ae7bc1 (patch)
tree6b31224ea2a0cb34bea282e4f442915160e1f343
parente6df039848209a1149dad609a5d133f26e2426e6 (diff)
downloadorg-mode-abf5ab0944c2cc65ea44ac746e38c2d3f8ae7bc1.tar.gz
org-timer: Fix timer start from agenda
* lisp/org-timer.el (org-timer--get-timer-title): Return buffer-name also for agenda lines without complete "org marker". Reported by Ian Garmaise https://lists.gnu.org/archive/html/emacs-orgmode/2020-03/msg00004.html
-rw-r--r--lisp/org-timer.el32
1 files changed, 16 insertions, 16 deletions
diff --git a/lisp/org-timer.el b/lisp/org-timer.el
index a1eb5e4..b9178f4 100644
--- a/lisp/org-timer.el
+++ b/lisp/org-timer.el
@@ -468,22 +468,22 @@ time is up."
(defun org-timer--get-timer-title ()
"Construct timer title.
Try to use an Org header, otherwise use the buffer name."
- (cond
- ((derived-mode-p 'org-agenda-mode)
- (let* ((marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (hdmarker (or (get-text-property (point) 'org-hd-marker)
- marker)))
- (with-current-buffer (marker-buffer marker)
- (org-with-wide-buffer
- (goto-char hdmarker)
- (org-show-entry)
- (or (ignore-errors (org-get-heading))
- (buffer-name (buffer-base-buffer)))))))
- ((derived-mode-p 'org-mode)
- (or (ignore-errors (org-get-heading))
- (buffer-name (buffer-base-buffer))))
- (t (buffer-name (buffer-base-buffer)))))
+ (or
+ (cond
+ ((derived-mode-p 'org-agenda-mode)
+ (let* ((marker (or (get-text-property (point) 'org-marker)))
+ (hdmarker (or (get-text-property (point) 'org-hd-marker)
+ marker)))
+ (when (and marker (marker-buffer marker))
+ (with-current-buffer (marker-buffer marker)
+ (org-with-wide-buffer
+ (goto-char hdmarker)
+ (org-show-entry)
+ (or (ignore-errors (org-get-heading))
+ (buffer-name (buffer-base-buffer))))))))
+ ((derived-mode-p 'org-mode)
+ (ignore-errors (org-get-heading))))
+ (buffer-name (buffer-base-buffer))))
(provide 'org-timer)