Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-97844

Logitech mice and touchpads that send lots of events with small angleDelta cause overreaction

    XMLWordPrintable

    Details

    • Platform/s:
      Linux/X11

      Description

      On X11 this is a relatively new feature; on other platforms maybe it has been happening for a while. Some Logitech mice with smooth-scrolling-capable wheels (like MX Master 2S and others) have fine-grained encoders that can send a lot of events with small angleDelta. In various places in widgets (at least QTabBar) we have code that just handles each QWheelEvent as if it was a full "click" of a clicky mouse wheel; but we may rather need to accumulate the deltas until a threshold of 120 is reached, to avoid reacting too soon; or else react in proportion to the angleDelta each time (i.e. scroll something by a shorter distance than we do for the usual 120 delta).

      If the mouse provides pixelDelta but does not have the new PixelScroll flag, then we can consider the pixelDelta to be more synthetic in some sense, and perhaps rely only on angleDelta. (I'm not 100% sure about that.)

      event->device()->capabilities().testFlag(QInputDevice::Capability::PixelScroll)
      

      Likewise I think maybe WheelHandler is overreacting; needs investigation.

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              ndavis Noah Davis
              Reporter:
              srutledg Shawn Rutledge
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:

                  Gerrit Reviews

                  There are no open Gerrit changes