GNU bug report logs -
#68050
29.1; Pixel scroll doesn't work on platforms that do not expose device-class.
Previous Next
Reported by: Jared Finder <jared <at> finder.org>
Date: Tue, 26 Dec 2023 21:02:01 UTC
Severity: normal
Found in version 29.1
Done: Po Lu <luangruo <at> yahoo.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
On 2023-12-26 17:25, Po Lu wrote:
> Jared Finder <jared <at> finder.org> writes:
>
>> Pixel scroll does not work on many platforms, such as Windows and Mac
>> as
>> they only expose device classes core-keyboard and core-pointer.
>> Additionally, I have found that for Wayland under WSL on the emacs-29
>> branch, both the touchpad and the mouse are reported with device-class
>> 'mouse on my Thinkpad laptop.
>
> Incidentally we don't support WSL, as circumventing their bugs for a
> proprietary platform which Emacs already supports through the Cygwin
> and
> native Windows builds is an unjustified burden.
Understood. However, I see the same issue on pure Windows and on Mac as
well.
>> The attached patch enables a user to specify arbitrary device classes
>> that should cause interpolated scrolling so they can fix any issues.
>> This enables a user to customize this to the behavior of their local
>> machine.
>>
>> I am undecided if this should involve renaming the existing
>> pixel-scroll-precision-interpolate-mice option or if it is important
>> to
>> stay backward compatible with customizations that changed that option
>> from its default, t, to some other non-nil value. Please give
>> feedback
>> here.
>>
>> Otherwise, this is a straightforward change that I think would be good
>> for the Emacs 29 branch so all platforms can get the smoothness of
>> interpolated pixel scrolling.
>
> pixel-scroll-precision-mode is first and foremost designed for devices
> such as touchpads, for which interpolation is unnecessary as detailed
> scrolling deltas are always reported within events they generate.
>
> Interpolation for wheel mice is an afterthought, so to speak, and if
> the
> code responsible for interfacing with the window system cannot detect
> wheel mice by itself, then the option
> pixel-scroll-precision-large-scroll-height might be set to a value
> suitable for wheel mice to be distinguished from touchpads and for
> interpolation to be applied to them.
>
> When a predicated fallback mechanism is already in place, there's no
> need for one that's far more coarse. Furthermore, p-s-p-l-s-h can be
> set to 0, which would be identical to setting this variable to t.
>
> Thanks, but this isn't necessary. Closing.
I'm a bit confused by the "this isn't necessary" response. What should
I be doing on Mac or on Windows, where Emacs doesn't distinguish between
touchpads and mice currently? Is there a fix in the works for these
OSes?
-- MJF
This bug report was last modified 1 year and 239 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.