Package: emacs;
Reported by: Tassilo Horn <tsdh <at> gnu.org>
Date: Thu, 1 Sep 2022 14:48:02 UTC
Severity: normal
Found in version 29.0.50
To reply to this bug, email your comments to 57526 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Thu, 01 Sep 2022 14:48:02 GMT) Full text and rfc822 format available.Tassilo Horn <tsdh <at> gnu.org>
:bug-gnu-emacs <at> gnu.org
.
(Thu, 01 Sep 2022 14:48:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Tassilo Horn <tsdh <at> gnu.org> To: bug-gnu-emacs <at> gnu.org Subject: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Thu, 01 Sep 2022 15:48:43 +0200
1. emacs -Q 2. In *scratch* evaluate (pixel-scroll-mode 1) (setq pixel-scroll-precision-use-momentum t) (pixel-scroll-precision-mode 1) The result for me is that scrolling with my notebook's touchpad is precise and uses momentum. But scrolling with the mouse wheel seems to scroll about 8 lines with each "click" of the wheel in one redisplay (so it's not smooth at all) and there seems to be no momentum (which is probably correct because the wheel doesn't give the ability to stop momentum scrolling). C-h k reports that wheel-down/up are bound to pixel-scroll-precision. On the touchpad it seems next to wheel-down/up events a final touch-end event is generated starting the momentum scrolling. The reason for the difference is that the EVENTs passed to pixel-scroll-precision have very different delta values. The touchpad events command emacs to scroll about 20 pixels, the mouse wheel events command it to scroll 150 pixels. I see there's some interpolation feature which might be relevant but I don't get into that code path because (device-class last-event-frame last-event-device) returns core-keyboard instead of mouse. I get that value in both the case where I scrolled using touchpad as well as mouse. When I typed something with the real keyboard, it says just keyboard. In GNU Emacs 29.0.50 (build 13, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.17.6) of 2022-09-01 built on thinkpad-t440p Repository revision: 67b85decc7702c24f2904e60e3eecfc2bfca5ab6 Repository branch: master System Description: Arch Linux Configured using: 'configure --with-pgtk --with-native-compilation --with-xinput2' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP XIM GTK3 ZLIB Important settings: value of $LC_MONETARY: de_DE.utf8 value of $LC_NUMERIC: de_DE.utf8 value of $LC_TIME: de_DE.utf8 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: symbol-overlay-mode: t display-fill-column-indicator-mode: t editorconfig-mode: t debbugs-browse-mode: t hl-todo-mode: t global-aggressive-indent-mode: t aggressive-indent-mode: t pdf-occur-global-minor-mode: t dirvish-override-dired-mode: t diredfl-global-mode: t which-key-mode: t highlight-parentheses-mode: t global-corfu-mode: t corfu-mode: t yas-global-mode: t yas-minor-mode: t outline-minor-mode: t global-git-commit-mode: t magit-auto-revert-mode: t auto-revert-mode: t bug-reference-prog-mode: t vertico-mode: t marginalia-mode: t minibuffer-depth-indicate-mode: t electric-pair-mode: t recentf-mode: t pixel-scroll-precision-mode: t pixel-scroll-mode: t override-global-mode: t save-place-mode: t savehist-mode: t shell-dirtrack-mode: t puni-global-mode: t puni-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: ~/Repos/el/mu/build/mu4e/mu4e hides ~/Repos/el/mu/mu4e/mu4e ~/Repos/el/mu/build/mu4e/mu4e-main hides ~/Repos/el/mu/mu4e/mu4e-main ~/Repos/el/mu/build/mu4e/mu4e-view hides ~/Repos/el/mu/mu4e/mu4e-view ~/Repos/el/mu/build/mu4e/mu4e-org hides ~/Repos/el/mu/mu4e/mu4e-org ~/Repos/el/mu/build/mu4e/mu4e-lists hides ~/Repos/el/mu/mu4e/mu4e-lists ~/Repos/el/mu/build/mu4e/mu4e-actions hides ~/Repos/el/mu/mu4e/mu4e-actions ~/Repos/el/mu/build/mu4e/mu4e-helpers hides ~/Repos/el/mu/mu4e/mu4e-helpers ~/Repos/el/mu/build/mu4e/mu4e-search hides ~/Repos/el/mu/mu4e/mu4e-search ~/Repos/el/mu/build/mu4e/mu4e-server hides ~/Repos/el/mu/mu4e/mu4e-server ~/Repos/el/mu/build/mu4e/mu4e-obsolete hides ~/Repos/el/mu/mu4e/mu4e-obsolete ~/Repos/el/mu/build/mu4e/mu4e-update hides ~/Repos/el/mu/mu4e/mu4e-update ~/Repos/el/mu/build/mu4e/mu4e-context hides ~/Repos/el/mu/mu4e/mu4e-context ~/Repos/el/mu/build/mu4e/mu4e-draft hides ~/Repos/el/mu/mu4e/mu4e-draft ~/Repos/el/mu/build/mu4e/mu4e-bookmarks hides ~/Repos/el/mu/mu4e/mu4e-bookmarks ~/Repos/el/mu/build/mu4e/mu4e-message hides ~/Repos/el/mu/mu4e/mu4e-message ~/Repos/el/mu/build/mu4e/mu4e-compose hides ~/Repos/el/mu/mu4e/mu4e-compose ~/Repos/el/mu/build/mu4e/mu4e-headers hides ~/Repos/el/mu/mu4e/mu4e-headers ~/Repos/el/mu/build/mu4e/mu4e-mark hides ~/Repos/el/mu/mu4e/mu4e-mark ~/Repos/el/mu/build/mu4e/mu4e-contacts hides ~/Repos/el/mu/mu4e/mu4e-contacts ~/Repos/el/mu/build/mu4e/mu4e-icalendar hides ~/Repos/el/mu/mu4e/mu4e-icalendar ~/Repos/el/mu/build/mu4e/mu4e-folders hides ~/Repos/el/mu/mu4e/mu4e-folders ~/Repos/el/mu/build/mu4e/mu4e-speedbar hides ~/Repos/el/mu/mu4e/mu4e-speedbar ~/Repos/el/mu/build/mu4e/mu4e-contrib hides ~/Repos/el/mu/mu4e/mu4e-contrib ~/Repos/el/mu/build/mu4e/mu4e-vars hides ~/Repos/el/mu/mu4e/mu4e-vars /home/horn/.emacs.d/elpa/transient-20220806.2224/transient hides /home/horn/Repos/el/emacs/lisp/transient Features: (shadow emacsbug xref gnus-fun dabbrev cursor-sensor cape-keyword cape shortdoc rect delsel executable symbol-overlay misearch multi-isearch editorconfig-core editorconfig-core-handle editorconfig-fnmatch project consult-vertico consult-icomplete consult compat-28 cl-print sort gnus-cite mm-archive mail-extr qp textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check view puni pulse display-fill-column-indicator generic yaml-mode fish-mode cargo cargo-process rust-utils rust-mode rust-rustfmt rust-playpen rust-compile rust-cargo web-mode disp-table preview-latex tex-site editorconfig elfeed-show elfeed-search vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view debbugs-browse elfeed-csv elfeed elfeed-curl elfeed-log elfeed-db elfeed-lib avl-tree generator url-queue xml-query socks elpher hl-todo aggressive-indent rainbow-mode pdf-occur tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local cedet pdf-isearch pdf-misc pdf-tools pdf-view jka-compr pdf-cache pdf-info tq pdf-util pdf-macs image-mode exif vc-git vc-dir ewoc epa-file rdictcc dirvish so-long diredfl dired-x mu4e-icalendar gnus-icalendar org-capture org-refile icalendar diary-lib diary-loaddefs mu4e mu4e-org org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete org-list org-faces org-entities org-version ob-emacs-lisp ob-core ob-eval org-table oc-basic bibtex ol org-keys oc org-compat org-macs org-loaddefs mu4e-main mu4e-view cal-menu calendar cal-loaddefs mu4e-headers mu4e-compose mu4e-draft mu4e-actions smtpmail mu4e-search mu4e-lists mu4e-bookmarks mu4e-mark mu4e-message flow-fill mule-util hl-line mu4e-contacts mu4e-update mu4e-folders mu4e-server mu4e-context mu4e-obsolete mu4e-vars mu4e-helpers mu4e-config magit-bookmark bookmark ido ecomplete auto-dictionary flyspell ispell tramp-smb which-key highlight-parentheses restclient kind-icon svg-lib corfu yasnippet forge-list forge-commands forge-semi forge-bitbucket buck forge-gogs gogs forge-gitea gtea forge-gitlab glab forge-github ghub-graphql treepy gsexp ghub let-alist forge-notify forge-revnote forge-pullreq forge-issue forge-topic yaml forge-post markdown-mode color thingatpt noutline outline forge-repo forge forge-core forge-db closql emacsql-sqlite emacsql emacsql-compiler magit-submodule magit-obsolete magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log which-func imenu edebug debug backtrace find-func magit-diff smerge-mode diff diff-mode git-commit log-edit pcvs-util add-log magit-core magit-autorevert autorevert filenotify magit-margin magit-transient magit-process with-editor server magit-mode magit-git magit-base magit-section crm dash compat-27 compat-26 pcase visual-filename-abbrev rg vc vc-dispatcher rg-info-hack advice rg-menu transient comp comp-cstr compat compat-macs rg-ibuffer rg-result wgrep-rg wgrep rg-history rg-header ibuf-ext ibuffer ibuffer-loaddefs grep compile debbugs soap-client url-http url-auth url-gw nsm warnings rng-xsd rng-dt rng-util xsd-regexp bug-reference vertico marginalia icomplete mb-depth use-package-diminish ace-window avy elec-pair recentf tree-widget pixel-scroll cua-base edmacro kmacro use-package-bind-key bind-key diminish saveplace savehist smiley gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config mailabbrev gmm-utils mailheader gnus-win gnus nnheader gnus-util text-property-search mail-utils range doom-themes-ext-org doom-themes-ext-visual-bell face-remap doom-Iosvkem-theme doom-themes doom-themes-base use-package-ensure quelpa-use-package cl-extra use-package-core quelpa mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr lisp-mnt help-fns radix-tree help-mode finder-inf tramp rx tramp-loaddefs trampver tramp-integration cus-edit pp cus-load icons wid-edit files-x tramp-compat shell pcomplete comint ansi-color ring parse-time iso8601 time-date ls-lisp format-spec aggressive-indent-autoloads cape-autoloads cargo-autoloads clojure-mode-autoloads consult-eglot-autoloads consult-autoloads corfu-autoloads csv-mode-autoloads debbugs-autoloads diredfl-autoloads dirvish-autoloads doom-themes-autoloads editorconfig-autoloads eglot-autoloads elfeed-autoloads elpher-autoloads ement-autoloads expand-region-autoloads fish-mode-autoloads forge-autoloads closql-autoloads ghub-autoloads hl-todo-autoloads magit-autoloads git-commit-autoloads marginalia-autoloads markdown-mode-autoloads pdf-tools-autoloads plz-autoloads puni-autoloads easy-mmode quelpa-autoloads rainbow-mode-autoloads rcirc-color-autoloads rust-mode-autoloads symbol-overlay-autoloads tablist-autoloads taxy-magit-section-autoloads taxy-autoloads magit-section-autoloads transient-autoloads use-package-autoloads bind-key-autoloads vertico-autoloads web-mode-autoloads which-key-autoloads with-editor-autoloads info compat-autoloads yaml-autoloads yaml-mode-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x map byte-opt gv bytecomp byte-compile cconv url-vars cl-loaddefs cl-lib rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 1145563 194767) (symbols 48 53673 11) (strings 32 285446 22601) (string-bytes 1 8850372) (vectors 16 150139) (vector-slots 8 3141153 227342) (floats 8 1206 1149) (intervals 56 28710 8078) (buffers 1000 40))
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Fri, 02 Sep 2022 01:16:01 GMT) Full text and rfc822 format available.Message #8 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Tassilo Horn <tsdh <at> gnu.org> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Fri, 02 Sep 2022 09:15:00 +0800
Tassilo Horn <tsdh <at> gnu.org> writes: > The reason for the difference is that the EVENTs passed to > pixel-scroll-precision have very different delta values. The touchpad > events command emacs to scroll about 20 pixels, the mouse wheel events > command it to scroll 150 pixels. Try playing with pixel-scroll-precision-large-scroll-height; start with a value of 30, and adjust it upwards if it interferes with trackpad scrolling. > I see there's some interpolation feature which might be relevant but I > don't get into that code path because (device-class last-event-frame > last-event-device) returns core-keyboard instead of mouse. I get that > value in both the case where I scrolled using touchpad as well as mouse. > When I typed something with the real keyboard, it says just keyboard. That part of the code will be reworked soon in accordance with an earlier discussion, and you can assist with that by sending the result of running "xinput list --long", which will help determine why your mouse is not being recognized by Emacs. Unfortunately momentum will not work with any non-trackpad mice other than Apple's "Magic Mouse 2" (which recently gained driver support on the kernel side), since the necessary tactile information is not reported to programs by their hardware.
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Fri, 02 Sep 2022 05:23:01 GMT) Full text and rfc822 format available.Message #11 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Tassilo Horn <tsdh <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Fri, 02 Sep 2022 06:57:15 +0200
[Message part 1 (text/plain, inline)]
Po Lu <luangruo <at> yahoo.com> writes: >> The reason for the difference is that the EVENTs passed to >> pixel-scroll-precision have very different delta values. The >> touchpad events command emacs to scroll about 20 pixels, the mouse >> wheel events command it to scroll 150 pixels. > > Try playing with pixel-scroll-precision-large-scroll-height; start > with a value of 30, and adjust it upwards if it interferes with > trackpad scrolling. Oh, yes, that does the trick. I don't actually feel much of a difference (if any) no matter if I set it to 10 vs. 140. It seems it must be at least smaller as the delta in the mouse wheel events (150) in order to have any effect but that's it. So I went with 140. >> I see there's some interpolation feature which might be relevant but >> I don't get into that code path because (device-class >> last-event-frame last-event-device) returns core-keyboard instead of >> mouse. I get that value in both the case where I scrolled using >> touchpad as well as mouse. When I typed something with the real >> keyboard, it says just keyboard. > > That part of the code will be reworked soon in accordance with an > earlier discussion, and you can assist with that by sending the result > of running "xinput list --long", which will help determine why your > mouse is not being recognized by Emacs. The short list is: --8<---------------cut here---------------start------------->8--- ❯ xinput list WARNING: running xinput against an Xwayland server. See the xinput man page for details. ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ xwayland-pointer:39 id=6 [slave pointer (2)] ⎜ ↳ xwayland-relative-pointer:39 id=7 [slave pointer (2)] ⎜ ↳ xwayland-pointer-gestures:39 id=8 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ xwayland-keyboard:39 id=9 [slave keyboard (3)] --8<---------------cut here---------------end--------------->8--- Interestingly, that list is the same no matter if I plugged my mouse into my notebook's USB slot or if it is not connected. The long list is attached.
[xinput-list-long.txt (text/plain, attachment)]
[Message part 3 (text/plain, inline)]
Bye, Tassilo
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Fri, 02 Sep 2022 09:31:02 GMT) Full text and rfc822 format available.Message #14 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Tassilo Horn <tsdh <at> gnu.org> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Fri, 02 Sep 2022 17:30:41 +0800
Tassilo Horn <tsdh <at> gnu.org> writes: > The short list is: > > ❯ xinput list > WARNING: running xinput against an Xwayland server. See the xinput man page for details. > ⎡ Virtual core pointer id=2 [master pointer (3)] > ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] > ⎜ ↳ xwayland-pointer:39 id=6 [slave pointer (2)] > ⎜ ↳ xwayland-relative-pointer:39 id=7 [slave pointer (2)] > ⎜ ↳ xwayland-pointer-gestures:39 id=8 [slave pointer (2)] > ⎣ Virtual core keyboard id=3 [master keyboard (2)] > ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] > ↳ xwayland-keyboard:39 id=9 [slave keyboard (3)] > > Interestingly, that list is the same no matter if I plugged my mouse > into my notebook's USB slot or if it is not connected. Ah, you're using Xwayland. Unfortunately, that X server is not implemented properly, so the X build of Emacs cannot determine the source of wheel movement correctly.
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Fri, 02 Sep 2022 11:49:01 GMT) Full text and rfc822 format available.Message #17 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Tassilo Horn <tsdh <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Fri, 02 Sep 2022 13:41:08 +0200
[Message part 1 (text/plain, inline)]
Po Lu <luangruo <at> yahoo.com> writes: >> The short list is: >> >> ❯ xinput list >> WARNING: running xinput against an Xwayland server. See the xinput man page >> for details. >> ⎡ Virtual core pointer id=2 [master pointer (3)] >> ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] >> ⎜ ↳ xwayland-pointer:39 id=6 [slave pointer (2)] >> ⎜ ↳ xwayland-relative-pointer:39 id=7 [slave pointer (2)] >> ⎜ ↳ xwayland-pointer-gestures:39 id=8 [slave pointer (2)] >> ⎣ Virtual core keyboard id=3 [master keyboard (2)] >> ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] >> ↳ xwayland-keyboard:39 id=9 [slave keyboard (3)] >> >> Interestingly, that list is the same no matter if I plugged my mouse >> into my notebook's USB slot or if it is not connected. > > Ah, you're using Xwayland. Actually, I use pgtk so that emacs runs as native wayland client but I guess that doesn't make a difference here. AFAIK, X and wayland use libinput for device handling by default and "libinput list-devices" knows about touchpad AND USB mouse. Of course I have no clue if that has any relevance wrt. emacs.
[libinput-list-devices.txt (text/plain, attachment)]
[Message part 3 (text/plain, inline)]
Bye, Tassilo
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Fri, 02 Sep 2022 12:34:02 GMT) Full text and rfc822 format available.Message #20 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Tassilo Horn <tsdh <at> gnu.org> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Fri, 02 Sep 2022 20:33:05 +0800
Tassilo Horn <tsdh <at> gnu.org> writes: > Actually, I use pgtk so that emacs runs as native wayland client but I > guess that doesn't make a difference here. Hmm, please show what message is displayed when you scroll with the mouse, after running this: (while t (read-event) (message "Device: %s" last-event-device)) > AFAIK, X and wayland use libinput for device handling by default and > "libinput list-devices" knows about touchpad AND USB mouse. Of course I > have no clue if that has any relevance wrt. emacs. X doesn't necessarily use libinput for input handling. It all depends on the input drivers in use. Most Wayland compositors do, however. Thanks.
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Fri, 02 Sep 2022 12:49:02 GMT) Full text and rfc822 format available.Message #23 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Tassilo Horn <tsdh <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Fri, 02 Sep 2022 14:39:29 +0200
Po Lu <luangruo <at> yahoo.com> writes: >> Actually, I use pgtk so that emacs runs as native wayland client but >> I guess that doesn't make a difference here. > > Hmm, please show what message is displayed when you scroll with the > mouse, after running this: > > (while t (read-event) (message "Device: %s" last-event-device)) Device: Virtual core pointer [24 times] >> AFAIK, X and wayland use libinput for device handling by default and >> "libinput list-devices" knows about touchpad AND USB mouse. Of >> course I have no clue if that has any relevance wrt. emacs. > > X doesn't necessarily use libinput for input handling. It all depends > on the input drivers in use. > > Most Wayland compositors do, however. I use sway and also have only xf86-input-libinput and xf86-input-synaptics installed. When I run "sudo libinput debug-events" and click and scroll with the USB mouse, I get: event6 POINTER_MOTION +34.209s 0.00/ 0.41 ( +0.00/ +1.00) event6 POINTER_BUTTON +34.209s BTN_LEFT (272) released, seat count: 0 event6 POINTER_SCROLL_WHEEL +35.425s vert -15.00/-120.0* horiz 0.00/0.0 (wheel) With the touchpad I get: -event18 GESTURE_HOLD_BEGIN +0.041s 2 event18 GESTURE_HOLD_END +2.254s 2 event18 POINTER_MOTION +3.456s -0.12/ 0.41 ( -1.00/ +3.32) event18 POINTER_MOTION +3.465s -0.24/ 1.60 ( -1.00/ +6.65) event18 POINTER_MOTION +3.475s -0.51/ 1.42 ( -2.00/ +5.54) event18 POINTER_MOTION +3.484s 0.00/ 2.85 ( +0.00/+11.08) event18 GESTURE_HOLD_BEGIN +4.527s 1 event18 GESTURE_HOLD_END +4.545s 1 In both cases, event6 and event18 are the devices shown by "sudo libinput list-devices". Bye, Tassilo
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Sat, 03 Sep 2022 01:05:01 GMT) Full text and rfc822 format available.Message #26 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Tassilo Horn <tsdh <at> gnu.org> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Sat, 03 Sep 2022 09:04:36 +0800
Tassilo Horn <tsdh <at> gnu.org> writes: > Device: Virtual core pointer [24 times] Thanks. Please evaluate "(x-gtk-debug)", go to the "General" tab in the debugger window that will pop up, and show what is displayed under "Seat 0" (you might have to scroll down a bit). > I use sway and also have only xf86-input-libinput and > xf86-input-synaptics installed. Well, since you aren't using X by itself, that information is not very meaningful.
bug-gnu-emacs <at> gnu.org
:bug#57526
; Package emacs
.
(Sat, 03 Sep 2022 07:08:02 GMT) Full text and rfc822 format available.Message #29 received at 57526 <at> debbugs.gnu.org (full text, mbox):
From: Tassilo Horn <tsdh <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: 57526 <at> debbugs.gnu.org Subject: Re: bug#57526: 29.0.50; Precise pixel-scrolling works great with touchpad but not with mouse wheel Date: Sat, 03 Sep 2022 09:04:01 +0200
Po Lu <luangruo <at> yahoo.com> writes: >> Device: Virtual core pointer [24 times] > > Thanks. Please evaluate "(x-gtk-debug)", go to the "General" tab in > the debugger window that will pop up, and show what is displayed under > "Seat 0" (you might have to scroll down a bit). Seat 0 Pointer, Keyboard Wayland Keyboard Keyboard Wayland pointer Mouse Axes X, Y >> I use sway and also have only xf86-input-libinput and >> xf86-input-synaptics installed. > > Well, since you aren't using X by itself, that information is not very > meaningful. Ah, ok, I've had the impression that the drivers are used by both X11 and Wayland. Bye, Tassilo
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.