Tk Source Code

Ticket Change Details
Login
Overview

Artifact ID: 70c596e4f4ee5dc0d1c045c3d1d661e0ace8859b5277b763717da9835000e882
Ticket: 75d38f860837911ecdde21941bde0bc2c3f17392
touchpad two finger scroll does not work correctly
User & Date: fvogel 2018-03-19 04:47:54
Changes

  1. assignee changed to: "fvogel"
  2. icomment:
    Thanks for all the explanations, and for the suggested fix.
    
    From [https://msdn.microsoft.com/fr-fr/library/windows/desktop/ms645617(v=vs.85).aspx|the WM_MOUSEWHEEL documentation on MSDN]:
    
    <verbatim>
    The wheel rotation will be a multiple of WHEEL_DELTA, which is set at 120. This is the threshold for action to be taken, and one such action (for example, scrolling one increment) should occur for each delta.
    
    The delta was set to 120 to allow Microsoft or other vendors to build finer-resolution wheels (a freely-rotating wheel with no notches) to send more messages per rotation, but with a smaller value in each message. To use this feature, you can either add the incoming delta values until WHEEL_DELTA is reached (so for a delta-rotation you get the same response), or scroll partial lines in response to the more frequent messages. You can also choose your scroll granularity and accumulate deltas until it is reached.
    </verbatim>
    
    Since one of the options (scroll partial lines) is not available with the listbox (scroll units can only be pages or units aka lines), I conclude that you have proposed the right fix by accumulating the deltas.
    
    I'll commit this in a bugfix branch soon. I have figure out whether other <MouseWheel> bindings need to be changed accordingly or not.
    
  3. login: "fvogel"
  4. mimetype: "text/x-fossil-wiki"