eager.dart 1.32 KB
Newer Older
Ian Hickson's avatar
Ian Hickson committed
1
// Copyright 2014 The Flutter Authors. All rights reserved.
2 3 4 5 6
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'recognizer.dart';

7 8 9 10
export 'dart:ui' show PointerDeviceKind;

export 'events.dart' show PointerDownEvent, PointerEvent;

11 12 13 14 15 16
/// A gesture recognizer that eagerly claims victory in all gesture arenas.
///
/// This is typically passed in [AndroidView.gestureRecognizers] in order to immediately dispatch
/// all touch events inside the view bounds to the embedded Android view.
/// See [AndroidView.gestureRecognizers] for more details.
class EagerGestureRecognizer extends OneSequenceGestureRecognizer {
17 18
  /// Create an eager gesture recognizer.
  ///
19 20 21 22 23 24
  /// {@macro flutter.gestures.GestureRecognizer.supportedDevices}
  EagerGestureRecognizer({
    @Deprecated(
      'Migrate to supportedDevices. '
      'This feature was deprecated after v2.3.0-1.0.pre.',
    )
25 26 27
    super.kind,
    super.supportedDevices,
  });
28

29
  @override
30
  void addAllowedPointer(PointerDownEvent event) {
31
    super.addAllowedPointer(event);
32 33 34 35 36 37 38 39
    resolve(GestureDisposition.accepted);
    stopTrackingPointer(event.pointer);
  }

  @override
  String get debugDescription => 'eager';

  @override
40
  void didStopTrackingLastPointer(int pointer) { }
41 42

  @override
43
  void handleEvent(PointerEvent event) { }
44
}