Subject: bug#74361: [PATCH] New option xref-navigation-display-window-action

From: martin rudalics <[email-masked]>
Date: Thu, 28 Nov 2024 10:27:11 +0100

> It does seem like it will switch to the "mru" kind of placement
 > though: as soon as "some" other window is used for xref-jump once, all
 > the following similar calls will follow it.

"mru" is a user option, the default is "lru".  Once "mru" was chosen for
a specific category, it will be chosen again until the user changes it.
But it is true that the default "lru", once overridden by a category,
will be overridden again - for 'xref-jump' iff the same window is not
suitable.  Still ...

 > Might be an improvement, but definitely an incompatible change.

... this is true.

 >> Is there any other 'display-buffer' call in xref.el that would set up a
 >> category and prefer any other but the selected window?
 >
 > By default, you mean?

If default stands for using the ACTION argument of 'display-buffer',
then "yes".

 > We want to select the new window in relation the "original" window
 > (with a file-visiting buffer), while avoiding touching the "results
 > list" window as well. E.g. when the original command was
 > xref-find-definitions-other-window.

Let's see what Juri thinks of an

(unsuitable . window-or-list-of-windows)

alist entry.

 > It's probably not an ideal solution, but one settled on over several tries.

It is a pain for the caller.

 > Either seems reasonable to me, just as long as the choices can be
 > anticipated in advance by the user.

Agreed.

martin