opt image recognizer

Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-02-15 22:16:43 +08:00
parent 807de41ff0
commit 3209ecd0ba
2 changed files with 26 additions and 37 deletions

View File

@@ -1,7 +1,25 @@
import 'package:flutter/gestures.dart'
show TapGestureRecognizer, PointerDownEvent, DoubleTapGestureRecognizer;
show
GestureRecognizer,
TapGestureRecognizer,
DoubleTapGestureRecognizer,
PointerDownEvent;
class ImageTapGestureRecognizer extends TapGestureRecognizer {
mixin ImageGestureRecognizerMixin on GestureRecognizer {
int? _pointer;
@override
void addPointer(PointerDownEvent event) {
if (_pointer == event.pointer) {
return;
}
_pointer = event.pointer;
super.addPointer(event);
}
}
class ImageTapGestureRecognizer extends TapGestureRecognizer
with ImageGestureRecognizerMixin {
ImageTapGestureRecognizer({
super.debugOwner,
super.supportedDevices,
@@ -9,34 +27,13 @@ class ImageTapGestureRecognizer extends TapGestureRecognizer {
super.preAcceptSlopTolerance,
super.postAcceptSlopTolerance,
});
int? _pointer;
@override
void addPointer(PointerDownEvent event) {
if (_pointer == event.pointer) {
return;
}
_pointer = event.pointer;
super.addPointer(event);
}
}
class ImageDoubleTapGestureRecognizer extends DoubleTapGestureRecognizer {
class ImageDoubleTapGestureRecognizer extends DoubleTapGestureRecognizer
with ImageGestureRecognizerMixin {
ImageDoubleTapGestureRecognizer({
super.debugOwner,
super.supportedDevices,
super.allowedButtonsFilter,
});
int? _pointer;
@override
void addPointer(PointerDownEvent event) {
if (_pointer == event.pointer) {
return;
}
_pointer = event.pointer;
super.addPointer(event);
}
}