From fb3dea96b7930a83bba156b5ad9f6fdca72fa7d8 Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Fri, 15 Nov 2019 09:43:02 +0100 Subject: [PATCH] In 'dframe-frame-mode' avoid 'switch-to-buffer' (Bug#37840) MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit * 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). --- lisp/dframe.el | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) 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) -- 2.39.5