summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernt Hansen <bernt@norang.ca>2011-12-30 15:49:08 +0000
committerCarsten Dominik <carsten.dominik@gmail.com>2011-12-31 09:10:25 +0100
commitfc1f01c54e5f9018374c15f11cf7b25c37996dd6 (patch)
treec7031fd7b576c8c7435b2f965611febaa5b84ddb
parent9b250f8e091535466a37dcdcb9a3199ea0be9d41 (diff)
downloadorg-mode-fc1f01c54e5f9018374c15f11cf7b25c37996dd6.tar.gz
Honour existing restrictions when clocking in from the agenda
* lisp/org-agenda.el (org-agenda-clock-in): Save restriction when clocking in from the agenda Narrowed org buffers are now retained when clocking in from the agenda. We only widen the buffer when the task to clock in is outside the existing restriction.
-rw-r--r--lisp/org-agenda.el17
1 files changed, 9 insertions, 8 deletions
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 780794e..f240f5e 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -7797,14 +7797,15 @@ The cursor may be at a date in the calendar, or in the Org agenda."
newhead)
(org-with-remote-undo (marker-buffer marker)
(with-current-buffer (marker-buffer marker)
- (widen)
- (goto-char pos)
- (org-show-context 'agenda)
- (org-show-entry)
- (org-cycle-hide-drawers 'children)
- (org-clock-in arg)
- (setq newhead (org-get-heading)))
- (org-agenda-change-all-lines newhead hdmarker)))))
+ (save-restriction
+ (widen)
+ (goto-char pos)
+ (org-show-context 'agenda)
+ (org-show-entry)
+ (org-cycle-hide-drawers 'children)
+ (org-clock-in arg)
+ (setq newhead (org-get-heading)))
+ (org-agenda-change-all-lines newhead hdmarker))))))
(defun org-agenda-clock-out ()
"Stop the currently running clock."