• xubaolin's avatar
    [New feature]Introduce iOS multi-touch drag behavior (#141355) · c83237f3
    xubaolin authored
    Fixes #38926
    
    This patch implements the iOS behavior pointed out by @dkwingsmt at #38926 , which is also consistent with the performance of my settings application on the iPhone.
    
    ### iOS behavior (horizontal or vertical drag)
    
    ## Algorithm
    When dragging: delta(combined) = max(i of n that are positive) delta(i) - max(i of n that are negative) delta(i)
    It means that, if two fingers are moving +50 and +10 respectively, it will move +50; if they're moving at +50 and -10 respectively, it will move +40.
    
    ~~TODO~~
    ~~Write some test cases~~
    c83237f3
scrollable.dart 92.5 KB