Now we use PointerDown and PointerMove, but...
This doesn't seem to work if you move it too far off from its original position?
diff --git a/lib/main.dart b/lib/main.dart
index 18790b9..8c1c226 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -18,27 +18,27 @@
child: new MyButton(
child: new Text('Engage'),
onPressed: _handleOnPressedCallback,
- onScrollStart: _handleOnScrollStartCallback,
- onScrollUpdate: _handleOnScrollUpdateCallback
+ onPointerDown: _handleOnPointerDownCallback,
+ onPointerMove: _handleOnPointerMoveCallback
),
- transform: new vector_math.Matrix4.identity().translate(-dx, dy)
+ transform: new vector_math.Matrix4.identity().translate(dx, dy)
);
}
void _handleOnPressedCallback(sky.Event e) {
setState(() {
counter++;
- sky.GestureEvent ge = e as sky.GestureEvent;
+ sky.PointerEvent ge = e as sky.PointerEvent;
debug = '(${ge.x.toStringAsFixed(3)}, ${ge.y.toStringAsFixed(3)})';//ge.toString();
});
}
- void _handleOnScrollStartCallback(sky.Event e) {
+ void _handleOnPointerDownCallback(sky.Event e) {
setState(() {
counter2++;
//dx = 0.0;
//dy = 0.0;
- //sky.GestureEvent ge = e as sky.GestureEvent;
+ //sky.PointerEvent ge = e as sky.PointerEvent;
//debug2 = '${ge.x} ${ge.y}';
// The field names were found from here: https://github.com/domokit/sky_engine/blob/01ff5c383fc88647c08f11a0d3392238b8bc99de/sky/engine/core/events/GestureEvent.h
//'${ge.x} ${ge.y}';
@@ -47,9 +47,9 @@
});
}
- void _handleOnScrollUpdateCallback(sky.Event e) {
+ void _handleOnPointerMoveCallback(sky.Event e) {
setState(() {
- sky.GestureEvent ge = e as sky.GestureEvent;
+ sky.PointerEvent ge = e as sky.PointerEvent;
dx += ge.dx;
dy += ge.dy;
// debug3 = '${ge.dx} ${ge.dy}'; // Was this one for scroll update then?
diff --git a/lib/my_button.dart b/lib/my_button.dart
index 132a141..22408a0 100644
--- a/lib/my_button.dart
+++ b/lib/my_button.dart
@@ -12,10 +12,10 @@
class MyButton extends Component {
final Widget child;
final Function onPressed;
- final Function onScrollStart;
- final Function onScrollUpdate;
+ final Function onPointerDown;
+ final Function onPointerMove;
- MyButton({this.child, this.onPressed, this.onScrollStart, this.onScrollUpdate});
+ MyButton({this.child, this.onPressed, this.onPointerDown, this.onPointerMove});
Container makeContainer() {
return new Container(
@@ -38,16 +38,16 @@
this.onPressed(e);
}
},
- onGestureScrollStart: (e) {
+ onPointerDown: (e) {
print('MyButton was scrolled!');
- if (this.onScrollStart != null) {
- this.onScrollStart(e);
+ if (this.onPointerDown != null) {
+ this.onPointerDown(e);
}
},
- onGestureScrollUpdate: (e) {
+ onPointerMove: (e) {
print('MyButton continues to be scrolled!');
- if (this.onScrollUpdate != null) {
- this.onScrollUpdate(e);
+ if (this.onPointerMove != null) {
+ this.onPointerMove(e);
}
},
child: makeContainer()