Subject: bug#23478: 25.0.93; Mouse region selection asymmetry

From: Stephen Berman <[email-masked]>
Date: Mon, 04 Jul 2016 10:45:43 +0200

On Mon, 04 Jul 2016 05:38:51 +0300 Eli Zaretskii <[email-masked]> wrote:

>> From: Stephen Berman <[email-masked]>
>> Cc: [email-masked],  [email-masked]
>> Date: Mon, 04 Jul 2016 00:24:51 +0200
>> 
>> > I think backward-incompatible behavior should almost always be opt-in,
>> > unless we have no choice.
>> 
>> Opting in does, however, have the problem of discoverability (a NEWS
>> entry notwithstanding).
>
> Since this is age-old behavior that no one complained about until now,
> we can assume most users won't need it.

If by "it" you mean the new behavior, then I agree nobody needs it, in
the sense that it doesn't provide any functionality you can't get
another way (e.g. by selecting a region by means of key combinations by
dragging the mouse instead of by double-clicking).  Nevertheless, I've
always been slightly annoyed when I've encountered the issue, just never
enough to try and do anything about it till now.

>> I think opting in is best in cases where it's
>> likely that some people may prefer (or some code may depend on) the
>> existing behavior, or where the new behavior may bring a disadvantage in
>> some case.  But I don't think any of that is likely in this case
>> (indeed, I really think the existing behavior is a misfeature).  Your
>> concern about the interaction with scroll-conservatively applied to my
>> initial patch, but you yourself suggested a better alternative that
>> allays this concern.  Given that, I ask again, and not rhetorically, do
>> you see a strong downside to having the new behavior be the default?
>
> Let's make one step back and describe the exact change in behavior
> with the last patch, OK?  Maybe some of us (e.g., me) don't really
> understand what is the change.

It simply makes selecting a region by double-clicking with the mouse
more uniform; as I wrote in my OP, the current behavior is this:

   When you select a region by double-clicking with mouse-1 and the end
   of the region is below the last visible line of the window, Emacs
   recenters the display, making the entire selected region visible
   (unless it's larger than half the window's height).  But when you
   select a region by double-clicking with mouse-1 and the beginning of
   the region is above the first visible line of the window, Emacs does
   not recenter the display, so the entire selected region is not
   visible.

With the patch the behavior is now simply this:

   When you select a region by double-clicking with mouse-1, Emacs
   recenters the display, making the entire selected region visible
   (unless it's larger than half the window's height).

To me (and I think Noam agrees), this is the behavior I would expect,
while the current behavior is less user-friendly; I can't think of a
reason why anyone would dislike the new behavior or prefer the current
behavior, but maybe someone can provide a use case.

Steve Berman