• 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
Name
Last commit
Last update
..
arena.dart Loading commit data...
binding.dart Loading commit data...
constants.dart Loading commit data...
converter.dart Loading commit data...
debug.dart Loading commit data...
drag.dart Loading commit data...
drag_details.dart Loading commit data...
eager.dart Loading commit data...
events.dart Loading commit data...
force_press.dart Loading commit data...
gesture_settings.dart Loading commit data...
hit_test.dart Loading commit data...
long_press.dart Loading commit data...
lsq_solver.dart Loading commit data...
monodrag.dart Loading commit data...
multidrag.dart Loading commit data...
multitap.dart Loading commit data...
pointer_router.dart Loading commit data...
pointer_signal_resolver.dart Loading commit data...
recognizer.dart Loading commit data...
resampler.dart Loading commit data...
scale.dart Loading commit data...
tap.dart Loading commit data...
tap_and_drag.dart Loading commit data...
team.dart Loading commit data...
velocity_tracker.dart Loading commit data...