diff options
| author | Juanma Barranquero | 2006-11-10 09:46:51 +0000 |
|---|---|---|
| committer | Juanma Barranquero | 2006-11-10 09:46:51 +0000 |
| commit | 90caccca7bf7f10b30e06c2cb0ac689f06f132f1 (patch) | |
| tree | 7add295a83696e14bc24c64bd2808493c661d542 | |
| parent | ae4c58a755c319d92d9b884a2cb71ec0efa76382 (diff) | |
| download | emacs-90caccca7bf7f10b30e06c2cb0ac689f06f132f1.tar.gz emacs-90caccca7bf7f10b30e06c2cb0ac689f06f132f1.zip | |
(server-raise-frame): New option.
(server-switch-buffer): Use it.
| -rw-r--r-- | lisp/server.el | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lisp/server.el b/lisp/server.el index 9214391d861..c6a70dedaea 100644 --- a/lisp/server.el +++ b/lisp/server.el | |||
| @@ -112,6 +112,12 @@ If set, the server accepts remote connections; otherwise it is local." | |||
| 112 | :version "22.1") | 112 | :version "22.1") |
| 113 | (put 'server-auth-dir 'risky-local-variable t) | 113 | (put 'server-auth-dir 'risky-local-variable t) |
| 114 | 114 | ||
| 115 | (defcustom server-raise-frame t | ||
| 116 | "*If non-nil, raise frame when switching to a buffer." | ||
| 117 | :group 'server | ||
| 118 | :type 'boolean | ||
| 119 | :version "22.1") | ||
| 120 | |||
| 115 | (defcustom server-visit-hook nil | 121 | (defcustom server-visit-hook nil |
| 116 | "*Hook run when visiting a file for the Emacs server." | 122 | "*Hook run when visiting a file for the Emacs server." |
| 117 | :group 'server | 123 | :group 'server |
| @@ -702,11 +708,9 @@ Arg NEXT-BUFFER is a suggestion; if it is a live buffer, use it." | |||
| 702 | (let ((win (get-buffer-window next-buffer 0))) | 708 | (let ((win (get-buffer-window next-buffer 0))) |
| 703 | (if (and win (not server-window)) | 709 | (if (and win (not server-window)) |
| 704 | ;; The buffer is already displayed: just reuse the window. | 710 | ;; The buffer is already displayed: just reuse the window. |
| 705 | (let ((frame (window-frame win))) | 711 | (progn |
| 706 | (when (eq (frame-visible-p frame) 'icon) | 712 | (select-window win) |
| 707 | (raise-frame frame)) | 713 | (set-buffer next-buffer)) |
| 708 | (select-window win) | ||
| 709 | (set-buffer next-buffer)) | ||
| 710 | ;; Otherwise, let's find an appropriate window. | 714 | ;; Otherwise, let's find an appropriate window. |
| 711 | (cond ((and (windowp server-window) | 715 | (cond ((and (windowp server-window) |
| 712 | (window-live-p server-window)) | 716 | (window-live-p server-window)) |
| @@ -730,7 +734,9 @@ Arg NEXT-BUFFER is a suggestion; if it is a live buffer, use it." | |||
| 730 | (switch-to-buffer next-buffer) | 734 | (switch-to-buffer next-buffer) |
| 731 | ;; After all the above, we might still have ended up with | 735 | ;; After all the above, we might still have ended up with |
| 732 | ;; a minibuffer/dedicated-window (if there's no other). | 736 | ;; a minibuffer/dedicated-window (if there's no other). |
| 733 | (error (pop-to-buffer next-buffer))))))))) | 737 | (error (pop-to-buffer next-buffer))))))) |
| 738 | (when server-raise-frame | ||
| 739 | (select-frame-set-input-focus (window-frame (selected-window)))))) | ||
| 734 | 740 | ||
| 735 | (define-key ctl-x-map "#" 'server-edit) | 741 | (define-key ctl-x-map "#" 'server-edit) |
| 736 | 742 | ||