Limpieza de GestureRecognizer
Las subclases de OneSequenceGestureRecognizer deben sobrescribir `addAllowedPointer` para recibir un `PointerDownEvent`
Resumen
#Se cambió OneSequenceGestureRecognizer.addAllowedPointer() para recibir un
PointerDownEvent, al igual que su superclase. Anteriormente, aceptaba el tipo
más general PointerEvent, lo cual era incorrecto.
Contexto
#El framework únicamente pasa objetos PointerDownEvent a
addAllowedPointer(). Declarar
que OneSequenceGestureRecognizer.addAllowedPointer() recibe el tipo más general
era confuso, y obligaba a las subclases de OneSequenceGestureRecognizer a
realizar un cast de su argumento a la clase correcta.
Descripción del cambio
#La declaración anterior obligaba a los descendientes de OneSequenceGestureRecognizer a
sobrescribir addAllowedPointer() de la siguiente manera:
class CustomGestureRecognizer extends ScaleGestureRecognizer {
@override
void addAllowedPointer(PointerEvent event) {
// insert custom handling of event here...
super.addAllowedPointer(event);
}
}
La nueva declaración del método hará que este código falle con el siguiente mensaje de error:
super.addAllowedPointer(event); The argument type 'PointerEvent' can't be assigned to the parameter type 'PointerDownEvent'.
#argument_type_not_assignable
Guía de migración
#Código antes de la migración:
class CustomGestureRecognizer extends ScaleGestureRecognizer {
@override
void addAllowedPointer(PointerEvent event) {
// insert custom handling of event here...
super.addAllowedPointer(event);
}
}
Código después de la migración:
class CustomGestureRecognizer extends ScaleGestureRecognizer {
@override
void addAllowedPointer(PointerDownEvent event) {
// insert custom handling of event here...
super.addAllowedPointer(event);
}
}
Timeline
#Introducido en la versión: 2.3.0-13.0.pre
En el lanzamiento estable: 2.5
Referencias
#Documentación de la API:
PR relevante:
A menos que se indique lo contrario, la documentación de este sitio refleja Flutter 3.44.0. Página actualizada por última vez el 2026-05-05. Ver código fuente oreportar un problema.