-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add engine support for scrollwheel events #7494
Conversation
Renamed the new fields to use "signal" instead of "gesture" per feedback on flutter/flutter#22762 |
@@ -228,7 +258,9 @@ class PointerData { | |||
'radiusMax: $radiusMax, ' | |||
'orientation: $orientation, ' | |||
'tilt: $tilt, ' | |||
'platformData: $platformData' | |||
'platformData: $platformData, ' | |||
'scrollDeltaX: $scrollDeltaX, ' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what is physicalX set to when scrollDeltaX is non null / nonzero?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hm, i see, that's where the point is.
Will any future signals involve more than two linear dimensions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would expect swipe to use these fields; pinch zoom and rotate would need different fields.
5c9efd6
to
2628378
Compare
@Hixie Let me know if anyone else should review this as well. |
design seems reasonable; i'll defer to @jason-simmons or someone else on the engine team for detailed review |
Thanks @Hixie. @jason-simmons if there's anything Stuart or I can do to move this along, let us know. We're eagerly awaiting the land of this change :) |
LGTM |
flutter/engine@f4951df...471a2c8 git log f4951df..471a2c8 --no-merges --oneline 471a2c8 Send scroll events from the macOS shell (flutter/engine#8056) 2fe9c9b Roll src/third_party/skia 72542816cadb..801a9c16d81e (46 commits) (flutter/engine#8060) 3335764 Skip skp files in license check (flutter/engine#8050) 7f16789 Remove redundant thread checker in FML. (flutter/engine#8053) 840c523 Correct URL for Cirrus CI build status badge (flutter/engine#8054) 57c120a remove extra source files (flutter/engine#8052) 4773375 Used named conditionals for platform specific dependencies and suppress Android and Windows hooks on Mac. (flutter/engine#8051) 70a18b5 Add clang static analysis support to gn wrapper (flutter/engine#8047) b30f989 Improve elevation bounds for physical shape layers (flutter/engine#8044) e37bd27 Fix weak pointer use violations in shell and platform view. (flutter/engine#8046) dd80fc9 Add engine support for scrollwheel events (flutter/engine#7494) The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff (mklim@google.com), and stop the roller if necessary.
…ine (19 commits) (#28688) git log --oneline --no-merges f4951df..a48cd16 a48cd16 Update a11y word forward/back enum names (flutter/engine#8073) b5f59ed Delay the vsync callback till the frame start time specified by embedder. (flutter/engine#8072) 7426305 Mark const extern (flutter/engine#8077) d3f6d7a only partial rule revert (flutter/engine#8078) d71bfe5 Only build a full Dart SDK when building for the host system (flutter/engine#8071) de90dbf Refactor web configuration/ Add dartdevc (flutter/engine#7978) ff46dd3 Roll src/third_party/skia 4c1ea43a79b5..88b8d1124b72 (8 commits) (flutter/engine#8070) 80c6dd2 Roll src/third_party/skia 692122e3ef23..4c1ea43a79b5 (3 commits) (flutter/engine#8069) 68ed654 Roll src/third_party/skia 3c957d575c58..692122e3ef23 (6 commits) (flutter/engine#8067) ca0bac4 Revert "add signal to pointer kinds" (flutter/engine#8066) 3fb627f add signal to pointer kinds (flutter/engine#8065) 5a06afa Roll src/third_party/skia 801a9c16d81e..3c957d575c58 (19 commits) (flutter/engine#8063) a93d99d A11y callback (flutter/engine#8005) 3661d5e Re-land "Buffer lifecycle in WindowData" (flutter/engine#8032) 471a2c8 Send scroll events from the macOS shell (flutter/engine#8056) 2fe9c9b Roll src/third_party/skia 72542816cadb..801a9c16d81e (46 commits) (flutter/engine#8060) 3335764 Skip skp files in license check (flutter/engine#8050) 7f16789 Remove redundant thread checker in FML. (flutter/engine#8053) 840c523 Correct URL for Cirrus CI build status badge (flutter/engine#8054) 57c120a remove extra source files (flutter/engine#8052) 4773375 Used named conditionals for platform specific dependencies and suppress Android and Windows hooks on Mac. (flutter/engine#8051) 70a18b5 Add clang static analysis support to gn wrapper (flutter/engine#8047) b30f989 Improve elevation bounds for physical shape layers (flutter/engine#8044) e37bd27 Fix weak pointer use violations in shell and platform view. (flutter/engine#8046) dd80fc9 Add engine support for scrollwheel events (flutter/engine#7494)
Adds support for pointer gestures, in a way that will support both discrete events (e.g., scroll wheels, flutter/flutter#22762) and continuous gestures (e.g., trackpad scroll, flutter/flutter#21953). It's also extensible for other kinds of gestures (pinch, swipe, etc.)
Also exposes these new options to the embedder.