unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Alan Mackenzie <acm@muc.de>
To: martin rudalics <rudalics@gmx.at>
Cc: 56305@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org>,
	monnier@iro.umontreal.ca, acm@muc.de
Subject: bug#56305: 29.0.50; 'yes-or-no-p' deselects minibuffer frame
Date: Fri, 8 Jul 2022 10:55:07 +0000	[thread overview]
Message-ID: <YsgNC6meyQ7XHAkp@ACM> (raw)
In-Reply-To: <c7a72562-1993-196e-d1a7-64ef70e4c775@gmx.at>

Hello, Martin.

On Fri, Jul 08, 2022 at 09:01:43 +0200, martin rudalics wrote:
>  > I don't follow.  If the WM does "Raise on focus", surely it will
>  > raise the frame no matter how it acquires the focus.  Such focus is
>  > here essential for the working of the minibuffer.

> It should not deliberately raise a frame that already has focus.

OK.  We could add an extra check for the frame already having the focus.
Is there anything else suboptimal about that proposed fix to emacs-28?

>  > Is it not the case that acquiring the focus with Fx_focus_frame
>  > would be better than not doing so?

> It does not restore the Emacs 26 behavior.  If you look at the reports
> for Bug#8856, Bug#11566 or Bug#11939, you might be able to imagine how
> much time I spent to get the behavior right for Drew's setup back then.
> It's quite sobering to see my efforts from that period get wasted now.

If there are bugs, we fix them.  You're surely not saying that the Emacs
26 behaviour was ideal, are you?  I'll take a look at these bug reports
this evening.

Part of the problem is that this desired behaviour is not formulated
anywhere, and there don't appear to be tests in 'make check' for it.

In the mean time, how well does the change to master work?  It attempts
to fix the cause of (rather than just working around) bug #56305.

>  >> AFAICT the most simple approach appears to restore the Emacs 26
>  >> behavior for sessions with separate minibuffer frames.

>  > I'm not sure how simple that would be.  Have you a patch to propose?

> No.  I think you should trace all 'minibuffer-follows-selected-frame'
> related changes and make them pertinent to the value of that variable.
> Then people who need the old behavior could get it back by setting that
> variable to nil.

That would be an enormous amount of work, since the code was to a
significant extent in a chaotic state when I made those changes.  I think
it is now in a less chaotic state.  We surely do not wish to restore the
chaos.

Even If I were to do that, I doubt Eli would accept the result for Emacs
28.2, since it would be too large a change.

Again, how well does my change made last night to master fix the bug?

As a matter of interest, the setting of minibuffer-follows-selected-frame
which gives behaviour closest to the old is non-nil, non-t (e.g. the
symbole `hybrid').

> It was an unwritten rule of Emacs development that a new feature that
> breaks established behavior should be (a) made optional and (b) by
> default turned off.  Maybe that rule doesn't apply any more but at
> least (a) should be still supported.

>  >> What would the semantics of 'minibuffer-follows-selected-frame' be for
>  >> such a session anyway?

>  > I've a vague memory of checking this was OK at the time of the change.
>  > I can't remember many of the details now, though.

> Then please try to remember.  AFAICT 'minibuffer-follows-selected-frame'
> should never impact the behavior of separate minibuffer frames.

Again, bug #56305 was not caused by the m-f-s-f changes, but by some
chaotic code in do_switch_frame which is hopefully now fixed (in master).

I don't agree with you that reverting the minibuffer-follows-select-frame
changes is a good way to fix the current bug, or any similar bugs.

If my last night's commit to master is satisfactory, perhaps it might
somehow be possibly to cherry-pick it into Emacs 28.2.

> martin

-- 
Alan Mackenzie (Nuremberg, Germany).





  reply	other threads:[~2022-07-08 10:55 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-29 17:54 bug#56305: 29.0.50; 'yes-or-no-p' deselects minibuffer frame martin rudalics
2022-06-29 19:10 ` Eli Zaretskii
2022-06-30 10:35   ` Alan Mackenzie
2022-06-30 20:32   ` Alan Mackenzie
2022-07-02 11:38   ` Alan Mackenzie
2022-07-03  8:16     ` martin rudalics
2022-07-03 16:09       ` Alan Mackenzie
2022-07-03 16:17         ` Eli Zaretskii
2022-07-04 19:10           ` Alan Mackenzie
2022-07-04 19:21             ` Eli Zaretskii
2022-07-04 19:43               ` Alan Mackenzie
2022-07-05  2:29                 ` Eli Zaretskii
2022-07-05 15:59                   ` Alan Mackenzie
2022-07-05 16:24                     ` Eli Zaretskii
2022-07-05 17:09                       ` Alan Mackenzie
2022-07-06 17:04                       ` Alan Mackenzie
2022-07-06 17:29                         ` Eli Zaretskii
2022-07-06 18:16                           ` Alan Mackenzie
2022-07-06 18:34                             ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-06 18:58                             ` Andreas Schwab
2022-07-06 19:05                               ` Alan Mackenzie
2022-07-06 19:09                                 ` Andreas Schwab
2022-07-06 19:22                                   ` Alan Mackenzie
2022-07-07 17:25                                   ` Alan Mackenzie
2022-07-07 18:57                                     ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-08 21:03                                       ` Alan Mackenzie
2022-07-09  2:15                                         ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-07  7:55                             ` martin rudalics
2022-07-07  9:12                               ` Alan Mackenzie
2022-07-08  7:01                                 ` martin rudalics
2022-07-08 10:55                                   ` Alan Mackenzie [this message]
2022-07-08 11:55                                     ` Eli Zaretskii
2022-07-08 18:31                                     ` Alan Mackenzie
2022-07-09  8:36                                       ` martin rudalics
2022-07-08 21:45                                     ` Gregory Heytings
2022-07-09  8:35                                     ` martin rudalics
2022-07-09 10:57                                       ` Alan Mackenzie
2022-07-10  8:07                                         ` martin rudalics
2022-07-10 11:34                                           ` Alan Mackenzie
2022-07-10 11:47                                             ` Eli Zaretskii
2022-07-10 12:41                                               ` Alan Mackenzie
2022-07-10 13:01                                                 ` Eli Zaretskii
2022-07-10 16:13                                             ` Drew Adams
2022-07-10 16:55                                               ` Alan Mackenzie
2022-07-11  7:45                                             ` martin rudalics
2022-07-11 11:12                                               ` Eli Zaretskii
2022-07-12  7:33                                                 ` martin rudalics
2022-07-12 16:02                                                   ` Eli Zaretskii
2022-07-11 16:22                                               ` Alan Mackenzie
2022-07-11 16:43                                                 ` Eli Zaretskii
2022-07-11 17:15                                                   ` Alan Mackenzie
2022-07-11 17:33                                                     ` Eli Zaretskii
2022-07-11 17:34                                                     ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-11 20:09                                                       ` Alan Mackenzie
2022-07-11 17:06                                                 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-11 20:01                                                   ` Alan Mackenzie
2022-07-12  7:35                                                 ` martin rudalics
2022-07-12 14:56                                                   ` Drew Adams
2022-07-16  7:06                                                     ` martin rudalics
2022-07-16 20:34                                                   ` Alan Mackenzie
2022-07-18  7:36                                                     ` martin rudalics
2022-07-18 14:44                                                       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-19  8:09                                                         ` martin rudalics
2022-07-19 16:04                                                           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-16 23:39                                                   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-17 11:29                                                     ` Alan Mackenzie
2022-07-17 14:03                                                       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-17 15:06                                                         ` Alan Mackenzie
2022-07-18  7:37                                                     ` martin rudalics
2022-07-18 14:58                                                       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-18 15:58                                                         ` Eli Zaretskii
2022-07-18 16:12                                                           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-18 16:50                                                             ` Eli Zaretskii
2022-07-19 20:48                                                               ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-20 12:17                                                                 ` Eli Zaretskii
2022-07-20 14:54                                                                   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-20 16:02                                                                     ` Eli Zaretskii
2022-07-21 15:07                                                                       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-21 15:58                                                                         ` Eli Zaretskii
2022-07-19  8:09                                                         ` martin rudalics
2022-07-07 15:54                           ` Alan Mackenzie
2022-07-04 19:46             ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-07-04 19:59               ` Alan Mackenzie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YsgNC6meyQ7XHAkp@ACM \
    --to=acm@muc.de \
    --cc=56305@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rudalics@gmx.at \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).