import 'package:flutter/gestures.dart' show ScaleGestureRecognizer, RecognizerCallback, GestureRecognizer; mixin PlayerGestureMixin on GestureRecognizer { bool isPosAllowed = true; @override T? invokeCallback( String name, RecognizerCallback callback, { String Function()? debugReport, }) { if (!isPosAllowed) return null; return super.invokeCallback(name, callback, debugReport: debugReport); } } class PlayerScaleGestureRecognizer extends ScaleGestureRecognizer with PlayerGestureMixin { PlayerScaleGestureRecognizer({ super.debugOwner, super.supportedDevices, super.allowedButtonsFilter, super.dragStartBehavior, super.trackpadScrollCausesScale, super.trackpadScrollToScaleFactor, }); }