|
From: | Dmitry Gutov |
Subject: | bug#55983: 29.0.50; If xref-goto-xref pops up a frame, it doesn't set its input focus |
Date: | Sun, 19 Jun 2022 03:01:56 +0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 |
Hi! Thanks for the report.On 14.06.2022 23:17, miha--- via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote:
To reproduce, customize pop-up-frames to non-nil and set up your window manager such that it doesn't automatically set input focus on newly created frames.
TBH I'm not sure how to setup GNOME Shell to do this.
Now in an xref-mode buffer, press RET on a search result (xref-goto-xref) and notice that the newly created frame doesn't receive input focus. That is because xref-goto-xref uses `display-buffer', followed by a `select-window'. To contrast this behaviour with grep-mode, pressing RET in a grep-mode buffer (compile-goto-error) does set input focus to the newly created frame. That is because compile-goto-error uses `pop-to-buffer`, which also calls `select-frame-set-input-focus'.
Window management in Emacs is a tricky business, and the current implementation is a result of https://debbugs.gnu.org/28814 which implemented a particular kind of behavior and https://debbugs.gnu.org/33870 which did try to make it more customizable through display-buffer-alist. See both discussions for more detail.
I don't have the time at the moment to try to rework it myself. Patches welcome, though. But please mind the original implementation intent.
[Prev in Thread] | Current Thread | [Next in Thread] |