diff options
author | Marco Wahl <marcowahlsoft@gmail.com> | 2020-03-01 22:45:35 +0100 |
---|---|---|
committer | Marco Wahl <marcowahlsoft@gmail.com> | 2020-03-01 22:45:35 +0100 |
commit | abf5ab0944c2cc65ea44ac746e38c2d3f8ae7bc1 (patch) | |
tree | 6b31224ea2a0cb34bea282e4f442915160e1f343 | |
parent | e6df039848209a1149dad609a5d133f26e2426e6 (diff) | |
download | org-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.el | 32 |
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) |