aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuanma Barranquero2006-11-10 09:46:51 +0000
committerJuanma Barranquero2006-11-10 09:46:51 +0000
commit90caccca7bf7f10b30e06c2cb0ac689f06f132f1 (patch)
tree7add295a83696e14bc24c64bd2808493c661d542
parentae4c58a755c319d92d9b884a2cb71ec0efa76382 (diff)
downloademacs-90caccca7bf7f10b30e06c2cb0ac689f06f132f1.tar.gz
emacs-90caccca7bf7f10b30e06c2cb0ac689f06f132f1.zip
(server-raise-frame): New option.
(server-switch-buffer): Use it.
-rw-r--r--lisp/server.el18
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