Subject: bug#45844: 27.1; unwanted raising of other frame when emacs is in the backgound and switch-to-buffer is used in a dedicated frame

From: emacser <[email-masked]>
Date: Wed, 13 Jan 2021 17:08:15 +0000

If I have a separate info frame beside my main emacs frame and the info frame is

(set-frame-parameter nil 'unsplittable t)
(set-window-dedicated-p nil t)

and I switch to this info frame, eval the below code (M-:) and
switch to an other app then my main emacs frame is raised
automatically to the foreground when the timer runs.

switch-to-buffer should not cause emacs bringing a frame to the
foreground (and thereby interrupting the user) without the user
asking for this behavior.

GNU Emacs 27.1 (build 1, x86_64-w64-mingw32) of 2020-08-12

(run-with-timer
3 nil
(lambda ()
(with-current-buffer "*test*"
(erase-buffer))

(set-process-sentinel
(start-process-shell-command
"test" "*test*" "dir d:")

(lambda (process event)
(switch-to-buffer "*test*")
(goto-char (point-min))
))))