• Adam Barth's avatar
    Add GestureArenaTeam (#7481) · 0139c69c
    Adam Barth authored
    Previously, the Slider used a drag gesture recognizer to move the head
    of the slider, but when the slider was in a vertical scroller, the
    recognizer would wait until the user moved the pointer by enough pixels
    to disambiguate between sliding the slider and scrolling the scroller.
    
    That worked fine for actual drags, but the slider should also move when
    the user taps the track. This patch introduces a tap recognizer to
    handle that behavior.
    
    To avoid the slider's drag and tap recognizers from competing with each
    other in the arena, this patch introduces the notion of a
    GestureArenaTeam, which lets several recognizers combine to form one
    entry in the arena.  If that entry wins, the team picks the first of its
    recognizers as the winner, avoiding latency.
    
    Fixes #7454
    0139c69c
recognizer.dart 10.6 KB