Ensure that new emacsclient frames has focus

* lisp/server.el (server-execute): Focus the frame here...
(server-switch-buffer): Instead of here (bug#15469).  This ensures
that the frame has focus if Emacs is querying the user about
something when opening a file (for instance "Revert from file?").
This commit is contained in:
Lars Ingebrigtsen 2020-12-07 14:29:46 +01:00
parent ff5a3c74fc
commit 9cef8fc8cd

View file

@ -1334,6 +1334,8 @@ The following commands are accepted by the client:
;; inhibit-quit flag, which is good since `commands' (as well as
;; find-file-noselect via the major-mode) can run arbitrary code,
;; including code that needs to wait.
(when (and frame server-raise-frame)
(select-frame-set-input-focus frame))
(with-local-quit
(condition-case err
(let ((buffers (server-visit-files files proc nowait)))
@ -1686,9 +1688,7 @@ be a cons cell (LINENUMBER . COLUMNNUMBER)."
(switch-to-buffer next-buffer))
;; After all the above, we might still have ended up with
;; a minibuffer/dedicated-window (if there's no other).
(error (pop-to-buffer next-buffer)))))))
(when server-raise-frame
(select-frame-set-input-focus (window-frame)))))
(error (pop-to-buffer next-buffer)))))))))
;;;###autoload
(defun server-save-buffers-kill-terminal (arg)