Subject: Re: bug#78945: 30.1; C-x 4 4 and C-x 5 5 do not work with `dired-mouse-find-file'

From: Eli Zaretskii <[email-masked]>
Date: Wed, 09 Jul 2025 13:57:47 +0300

> From: Juri Linkov <[email-masked]>
> Cc: [email-masked],  [email-masked],  [email-masked]
> Date: Mon, 07 Jul 2025 19:57:29 +0300
> 
> >> >> Looking at 'C-h l' (view-lossage) explains everything:
> >> >> 
> >> >>  C-x 5 5          ;; other-frame-prefix
> >> >>  <down-mouse-1>   ;; mouse-drag-region
> >> >>  <mouse-1>        ;; dired-mouse-find-file
> >> >
> >> > Sorry, it doesn't, not to me, probably because I don't understand well
> >> > enough what "C-x 4 4" does and how.  So please talk me through the
> >> > code which implements "C-x 4 4" and explain how down-mouse-1 in the
> >> > middle defeated it.  Without that, I cannot understand the fix and its
> >> > generality.
> >> 
> >> The docstring of "C-x 4 4" says:
> >> 
> >>   Display the buffer of the next command in a new window.
> >> 
> >> Clicking the mouse button runs two commands, so both should be handled here.
> >> Or do you think this special case should be mentioned in the docstring?
> >
> > We should probably document it once we agree and understand the full
> > effect of the change.
> >
> > Right now, I understand that:
> >
> >   . "C-x 4 4" etc. can affect more than just one next command -- as
> >     long as the commands have the 'down' modifier, we will keep the
> >     override in effect -- is this expected or TRT?
> 
> This is the right thing since it fixes the reported problem.

Then it should be documented.  Right now, we are talking about "the
next command", singular.

> >   . If some command is bound to mouse-down event, it might not be the
> >     only command affected by "C-x 4 4" -- do we want that?
> 
> Yes, we need to handle mouse-down and mouse-up commands.

Again, should be documented.

> >   . What about commands bound to double clicks and triple clicks?
> 
> This is doable.

I think we should do it, then, to avoid subtle inconsistencies (and
future bugs).

Thanks.