Subject: bug#42150: 28.0.50; Bad mouse interaction in the scroll-margin region

From: Yuri D'Elia <[email-masked]>
Date: Wed, 01 Jul 2020 14:30:14 +0200

The combined behavior of the mouse and "scroll-margin" is a bit odd
currently.

If you have a buffer which has "scroll-margin" enabled, and you click
anywhere in the scroll-margin region, the point is moved and the buffer
is immediately scrolled.

This in turn often results in the click becoming a "drag" instead,
selecting parts of the buffer.

I rarely use the mouse, but when I do (usually in customize groups, or
when using eww), it trips me all the time since I use a rather large
scroll-margin.

If feels like that moving the point when using the mouse shouldn't
trigger scroll-margin ever, since any action that causes a scroll would
immediately move the current target away and result in unintended
behavior. I can see the same effect when performing a selection by
dragging: once you reach the scroll-margin area every single motion
events selects half the visible buffer, which is also broken.

In GNU Emacs 28.0.50 (build 36, x86_64-pc-linux-gnu, X toolkit, cairo version 1.16.0, Xaw scroll bars)
 of 2020-06-30 built on eab18045nb
Repository revision: bc8089a3fa11161428c51439fd3b26fd6583345d
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12008000
System Description: Debian GNU/Linux bullseye/sid

Configured using:
 'configure --with-x-toolkit=lucid --with-modules --without-gsettings
 --with-cairo CC=gcc 'CFLAGS=-O3 -march=native -pipe '
 LDFLAGS=-fwhole-program'

Configured features:
XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND DBUS GLIB NOTIFY INOTIFY ACL
LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ LIBOTF ZLIB
TOOLKIT_SCROLL_BARS LUCID X11 XDBE XIM MODULES THREADS LIBSYSTEMD JSON
PDUMPER LCMS2 GMP