From: Martin Rudalics Date: Fri, 15 Nov 2019 08:43:02 +0000 (+0100) Subject: In 'dframe-frame-mode' avoid 'switch-to-buffer' (Bug#37840) X-Git-Tag: emacs-27.0.90~612 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=fb3dea96b7930a83bba156b5ad9f6fdca72fa7d8;p=emacs.git In 'dframe-frame-mode' avoid 'switch-to-buffer' (Bug#37840) * lisp/dframe.el (dframe-frame-mode): Use 'set-window-buffer' instead of 'switch-to-buffer’ to avoid that 'switch-to-buffer-obey-display-actions' butts in (Bug#37840). --- diff --git a/lisp/dframe.el b/lisp/dframe.el index 91f89e1705f..dc9b30add5d 100644 --- a/lisp/dframe.el +++ b/lisp/dframe.el @@ -309,8 +309,10 @@ CREATE-HOOK is a hook to run after creating a frame." (make-frame-visible (symbol-value frame-var)) (select-frame (symbol-value frame-var)) (set-window-dedicated-p (selected-window) nil) - (if (not (eq (current-buffer) (symbol-value buffer-var))) - (switch-to-buffer (symbol-value buffer-var))) + (unless (eq (current-buffer) (symbol-value buffer-var)) + ;; To avoid that 'switch-to-buffer-obey-display-actions' + ;; butts in, use plain 'set-window-buffer' (Bug#37840). + (set-window-buffer nil (symbol-value buffer-var))) (set-window-dedicated-p (selected-window) t) (raise-frame (symbol-value frame-var)) ) @@ -346,7 +348,9 @@ CREATE-HOOK is a hook to run after creating a frame." ;; Put the buffer into the frame (save-excursion (select-frame (symbol-value frame-var)) - (switch-to-buffer (symbol-value buffer-var)) + ;; To avoid that 'switch-to-buffer-obey-display-actions' + ;; butts in, use plain 'set-window-buffer' (Bug#37840). + (set-window-buffer nil (symbol-value buffer-var)) (set-window-dedicated-p (selected-window) t)) ;; Run hooks (like reposition) (run-hooks create-hook)