diff options
author | Bastien Guerry <bzg@altern.org> | 2012-09-18 16:06:46 +0200 |
---|---|---|
committer | Bastien Guerry <bzg@altern.org> | 2012-09-18 16:06:46 +0200 |
commit | b81485d5ff0711dfd86e71a606aed539cfd80e6b (patch) | |
tree | 1405155dc72cacddf3d62eb204b4b1168f48a438 | |
parent | 90565f2eded81a4a3f908ccce2993274a2618650 (diff) | |
download | org-mode-b81485d5ff0711dfd86e71a606aed539cfd80e6b.tar.gz |
org-agenda.el: Fix bug when showing indirect agenda in another frame
* org-agenda.el (org-agenda-tree-to-indirect-buffer): Find the
correct agenda buffer. Don't split the agenda window when the
indirect buffer is displayed in another frame.
Thanks Viktor Rosenfeld for reporting this.
-rw-r--r-- | lisp/org-agenda.el | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index 9d7d2fa..23ed73a 100644 --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -7877,19 +7877,22 @@ use the dedicated frame)." (interactive) (if (and current-prefix-arg (listp current-prefix-arg)) (org-agenda-do-tree-to-indirect-buffer) - (let ((agenda-window (selected-window)) + (let ((agenda-buffer (buffer-name)) + (agenda-window (selected-window)) (indirect-window (and org-last-indirect-buffer (get-buffer-window org-last-indirect-buffer)))) (save-window-excursion (org-agenda-do-tree-to-indirect-buffer)) - (unwind-protect - (progn - (unless (and indirect-window (window-live-p indirect-window)) - (setq indirect-window (split-window agenda-window))) - (select-window indirect-window) - (switch-to-buffer org-last-indirect-buffer :norecord) - (fit-window-to-buffer indirect-window)) - (select-window (get-buffer-window org-agenda-buffer-name)))))) + (unless (or (eq org-indirect-buffer-display 'new-frame) + (eq org-indirect-buffer-display 'dedicated-frame)) + (unwind-protect + (progn + (unless (and indirect-window (window-live-p indirect-window))) + (setq indirect-window (split-window agenda-window))) + (and indirect-window (select-window indirect-window)) + (switch-to-buffer org-last-indirect-buffer :norecord) + (fit-window-to-buffer indirect-window))) + (select-window (get-buffer-window agenda-buffer))))) (defun org-agenda-do-tree-to-indirect-buffer () "Same as `org-agenda-tree-to-indirect-buffer' without saving window." |