bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#47894: 28.0.50; isearch does not work if enable-recursive-minibuffer


From: Gregory Heytings
Subject: bug#47894: 28.0.50; isearch does not work if enable-recursive-minibuffers is on and some input method is set.
Date: Wed, 21 Apr 2021 07:49:28 +0000


Okay, thanks for the clarification. IIUC the right way to determine what the "current buffer" is (from a user's point of view: in which buffer will "a" be added if I press "a") is what I do: (window-buffer (selected-window)) and not what I did: (current-buffer)?

For users (eq (current-buffer) (window-buffer)) _should_ be invariant. When and if an application temporarily violates that invariant, it should reestablish it before the user can see it. So if an application calls `display-buffer' in a state where the invariant does not hold, it should handle that case including the complication that `display-buffer' might have selected another window. And it goes without saying that a display buffer action should never violate that invariant.


I see. So in this case the bug was elsewhere as I thought, it's display-buffer-select which was wrong (as you said it should have used pop-to-buffer) and not the code I added in isearch-post-command-hook. Anyway using (window-buffer (selected-window)) should not harm, and is an extra safety against display buffer actions doing something weird.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]