- 26 Sep, 2019 1 commit
-
-
Greg Spencer authored
This fixes the mouse hover code to not schedule frames with every mouse move. Before this, it would schedule a post frame callback, and then schedule a frame immediately, even if there was nothing that needed to be updated. Now it will schedule checks for mouse position updates synchronously, unless there's a new annotation, and skip scheduling a new frame in all cases. It has to be async in the case of a new annotation (i.e. a new MouseRegion is added), since when the annotation is added, it hasn't yet painted, and it can't hit test against the new layer until after the paint, so in that case it schedules a post frame callback, but since it's already building a frame when it does that, it doesn't need to schedule a frame. The code also used to do mouse position checks for all mice if only one mouse changed position. I fixed this part too, so that it will only check position for the mouse that changed.
-
- 24 Sep, 2019 2 commits
-
-
Mehmet Fidanboylu authored
-
Greg Spencer authored
There were four or five different implementations in various tests for sendFakeKeyEvent, which roughly all did the same thing. I was going to add yet another one, and decided that it needed to be generalized and centralized. This replaces those instances with something that just takes a LogicalKeyboardKey so that it's self-documenting, and can be used with multiple platforms. This adds two functions to widget tester: sendKeyDownEvent and sendKeyUpEvent which simulate key up/down from a physical keyboard. It also adds global functions simulateKeyDownEvent and simulateKeyUpEvent that can be called without a widget tester. All are async functions protected by the async guard.
-
- 13 Sep, 2019 1 commit
-
-
Jonah Williams authored
-
- 11 Sep, 2019 1 commit
-
-
Jonah Williams authored
-
- 06 Sep, 2019 2 commits
-
-
chunhtai authored
-
Michael Goderbauer authored
-
- 27 Aug, 2019 1 commit
-
-
adazh authored
-
- 21 Aug, 2019 1 commit
-
- 20 Aug, 2019 1 commit
-
-
James D. Lin authored
Flutter widget tests assert if a test completes with timers still pending. However, it can be hard to diagnose where a pending timer came from. For example, a widget might consume a third-party library that internally uses a timer. I added a FakeAsync.pendingTimersDebugInfo getter to quiver (https://github.com/google/quiver-dart/pull/500). Make flutter_test use it. Additionally modify Flutter's debugPrintStack to take an optional StackTrace argument instead of always printing StackTrace.current. Fixes #4237.
-
- 16 Aug, 2019 1 commit
-
-
Nurhan Turgut authored
* Broadcasting popRoute and pushRoute methods via SystemChannels.navigation. These messages will be used in flutter_web to detect the route * Broadcasting popRoute and pushRoute methods via SystemChannels.navigation. These messages will be used in flutter_web to detect the route * Reverting all unrelated formatting changes. * Adding unit tests. Adding more comments. * Changing string method names with constant strings. * Fixing a constant strings. * Fixing analyzer error. * Fixing more white space. * Changing the method names. Adding comments to the SystemChannels * Comment and code name fixes * replacing the comment with reviewer suggestion. * addinf systemchannels.navigation mock to test bindings * Adding a new class for sending route change notrifications. The nottifications are only sent on web. This should fix breaking android/ios * using new class RouteNotificationMessages in navigator * Fixing analyzer issues. * fixing cycle dependency * fixing github analyze error * dartfmt two new classes. trying to fix anayze errors * Update route_notification_messages.dart * trying to fix white space errors
-
- 09 Aug, 2019 2 commits
-
-
Michael Klimushyn authored
This reverts commit 92ef2b9c. This requires either runApp() or WidgetsFlutterBinding.ensureInitialized() to have been called before using any MethodChannels. Plugins broadly rely on MethodChannels and right now there's no general requirements that they be constructed within the runApp call, so the ecosystem breakages from this are broader than originally thought. Reverting for now.
-
adazh authored
-
- 19 Jul, 2019 1 commit
-
-
Lau Ching Jun authored
-
- 16 Jul, 2019 1 commit
-
-
chunhtai authored
-
- 02 Jul, 2019 1 commit
-
-
Alexandre Ardhuin authored
* more ui-as-code * address review comments
-
- 28 Jun, 2019 1 commit
-
-
David Shuckerow authored
* Make it possible to override the FLUTTER_TEST env variable without unsetting it. * Switch to using platform instead of Platform. * Document the bindings, and introduce tests that initialize multiple WidgetsBindings with different environments. * Add tests for the flutter platform test. * Add license headers * Fix lints * Remove trailing whitespace * Respond to Jonahs comments * Respond to Ians comments * Mock out the HttpServer in flutter_platform_test * Mock out the HttpServer in flutter_platform_test * Explain why we mock out the HttpServer in flutter_platform_test
-
- 26 Jun, 2019 1 commit
-
-
Todd Volkert authored
Follow-on change to https://github.com/flutter/flutter/pull/34863 (see that change for context), whereby we ensure that we're properly dealing in `Uint8List`. These necessary changes would have been caught by disabling implicit casts in our analysis options. dart-lang/sdk#36900 https://github.com/flutter/flutter/issues/13815
-
- 22 Jun, 2019 1 commit
-
-
Todd Volkert authored
* Prepare for HttpClientResponse Uint8List SDK change An upcoming change in the Dart SDK will change `HttpClientResponse` from implementing `Stream<List<int>>` to instead implement `Stream<Uint8List>`. This forwards-compatible change to `_MockHttpClientResponse` is being made to allow for a smooth rollout of that SDK breaking change. The current structure of the class is as follows: ```dart _MockHttpClientResponse extends Stream<List<int>> implements HttpClientResponse { ... } ``` This structure would require that the Dart SDK change land atomically a change to the class (`extends Stream<Uint8List>`). This atomic landing requirement doesn't play well at all with Flutter's roll model vis-a-vis the Dart SDK's roll model to Google's internal repo. As such, this commit changes the structure of `_MockHttpClientResponse` to be: ```dart _MockHttpClientResponse implements HttpClientResponse { final Stream<Uint8List> _delegate; ... } ``` Once the Dart SDK change has fully rolled out, we can simplify this class back to its former structure. https://github.com/dart-lang/sdk/issues/36900 * Review comment
-
- 13 Jun, 2019 1 commit
-
-
Ian Hickson authored
-
- 12 Jun, 2019 1 commit
-
-
Todd Volkert authored
This re-applies the changes that were made in #33697 and #33729, but which were reverted in #33792 and #33790, respectively due to the Dart SDK not having received the update within Google yet. The SDK has now rolled, so these changes can be re-applied. https://github.com/flutter/flutter/issues/32374 https://github.com/flutter/flutter/issues/33791
-
- 07 Jun, 2019 1 commit
-
-
Jonah Williams authored
-
- 03 Jun, 2019 1 commit
-
-
- 01 Jun, 2019 1 commit
-
-
Chris Bracken authored
https://github.com/flutter/engine/compare/69ebe5fb28fc..68a3ca46b40a git log 69ebe5fb28fca271b23010d43d4dc7f6e5286c4f..a4b7d1c2895d82228705a021cdb7fdb2f71ac2a5 --no-merges --oneline 4c6253cdd Copy the macOS podspec during builds (#9158) 68a3ca46b Roll src/third_party/dart 445a23a9bc..0e6b74543c (29 commits) (#9159) 1d1cff1fa Roll src/third_party/skia 3cd435eecf5e..09f5aedf2cc8 (3 commits) (#9160) 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 (cbracken@google.com), and stop the roller if necessary.
-
- 28 May, 2019 1 commit
-
-
Harry Terkelsen authored
* Deprecates `BinaryMessages` in favor of a default instance of `BinaryMessenger`, called `defaultBinaryMessenger` * Platform channels use the `defaultBinaryMessenger` for their binaryMessenger default argument.
-
- 20 May, 2019 1 commit
-
-
Sam Rawlins authored
-
- 17 May, 2019 1 commit
-
-
- 13 May, 2019 1 commit
-
-
Greg Spencer authored
This fixes #32525, because it now marks the compositing bits as needing to be recalculated if the mouse tracker changes its idea of whether or not a mouse is attached. This bug occurred because the test framework was leaking state from one test to the next (the state about whether a mouse pointer was active), and so even though there was a "passing" test when run in order with the other tests in the file, when the test was run individually (or first), it would have failed and caught the bug. This adds an assert to make sure that after each test there are no simulated mouse pointers connected, and now calls removePointer in all of the tests where this was a problem.
-
- 01 May, 2019 1 commit
-
-
Jacob Richman authored
Make FlutterError objects more structured so they can be displayed better in debugging tools such as Dart DevTools.
-
- 30 Apr, 2019 1 commit
-
-
chunhtai authored
-
- 25 Apr, 2019 2 commits
-
-
Greg Spencer authored
This re-lands the Focus changes in #30040. Correctness changes in routes.dart, and removes the automatic requesting of focus on reparent when there is no current focus, which caused undesirable selections. Addresses #11344, #1608, #13264, and #1678 Fixes #30084 Fixes #26704
-
sjindel-google authored
Previously benchmark_test.dart would break if run with --update-goldens. Now the entire test suite can be run with --update-goldens.
-
- 23 Apr, 2019 1 commit
-
-
Greg Spencer authored
This reverts commit 4218c0bc.
-
- 22 Apr, 2019 1 commit
-
-
Greg Spencer authored
Implements focus traversal for desktop platforms, including re-implementing the existing focus manager and focus tree. This implements a Focus widget that can be put into a widget tree to allow input focus to be given to a particular part of a widget tree. It incorporates with the existing FocusScope and FocusNode infrastructure, and has minimal breakage to the API, although FocusScope.reparentIfNeeded is removed, replaced by a call to FocusAttachment.reparent(), so this is a breaking change: FocusScopeNodes must now be attached to the focus tree using FocusScopeNode.attach, which takes a context and an optional onKey callback, and returns a FocusAttachment that should be kept by the widget that hosts the FocusScopeNode. This is necessary because of the need to make sure that the focus tree reflects the widget hierarchy. Callers that used to call FocusScope(context).reparentIfNeeded in their build method will call reparent on a FocusAttachment instead, which they will obtain by calling FocusScopeNode.attach in their initState method. Widgets that own FocusNodes will need to call dispose on the focus node in their dispose method. Addresses #11344, #1608, #13264, and #1678 Fixes #30084 Fixes #26704
-
- 18 Apr, 2019 1 commit
-
-
chunhtai authored
-
- 15 Apr, 2019 1 commit
-
-
Dan Field authored
-
- 10 Apr, 2019 1 commit
-
-
Sam Rawlins authored
-
- 22 Mar, 2019 1 commit
-
-
Alexandre Ardhuin authored
-
- 09 Mar, 2019 1 commit
-
-
Alexandre Ardhuin authored
-
- 08 Mar, 2019 1 commit
-
-
Gary Qian authored
git log --oneline --no-merges f4951df193a7966f9ed4da43d555eee0913d84d1..a48cd16e077778a7aa5908e4faa4da07714260f2 a48cd16e0 Update a11y word forward/back enum names (https://github.com/flutter/engine/pull/8073) b5f59ed89 Delay the vsync callback till the frame start time specified by embedder. (https://github.com/flutter/engine/pull/8072) 7426305f5 Mark const extern (https://github.com/flutter/engine/pull/8077) d3f6d7a21 only partial rule revert (https://github.com/flutter/engine/pull/8078) d71bfe58d Only build a full Dart SDK when building for the host system (https://github.com/flutter/engine/pull/8071) de90dbff7 Refactor web configuration/ Add dartdevc (https://github.com/flutter/engine/pull/7978) ff46dd38f Roll src/third_party/skia 4c1ea43a79b5..88b8d1124b72 (8 commits) (https://github.com/flutter/engine/pull/8070) 80c6dd286 Roll src/third_party/skia 692122e3ef23..4c1ea43a79b5 (3 commits) (https://github.com/flutter/engine/pull/8069) 68ed654ea Roll src/third_party/skia 3c957d575c58..692122e3ef23 (6 commits) (https://github.com/flutter/engine/pull/8067) ca0bac4fb Revert "add signal to pointer kinds" (https://github.com/flutter/engine/pull/8066) 3fb627f2c add signal to pointer kinds (https://github.com/flutter/engine/pull/8065) 5a06afa2a Roll src/third_party/skia 801a9c16d81e..3c957d575c58 (19 commits) (https://github.com/flutter/engine/pull/8063) a93d99db9 A11y callback (https://github.com/flutter/engine/pull/8005) 3661d5e43 Re-land "Buffer lifecycle in WindowData" (https://github.com/flutter/engine/pull/8032) 471a2c89a Send scroll events from the macOS shell (https://github.com/flutter/engine/pull/8056) 2fe9c9b5f Roll src/third_party/skia 72542816cadb..801a9c16d81e (46 commits) (https://github.com/flutter/engine/pull/8060) 3335764ae Skip skp files in license check (https://github.com/flutter/engine/pull/8050) 7f16789b2 Remove redundant thread checker in FML. (https://github.com/flutter/engine/pull/8053) 840c5233a Correct URL for Cirrus CI build status badge (https://github.com/flutter/engine/pull/8054) 57c120a29 remove extra source files (https://github.com/flutter/engine/pull/8052) 4773375c6 Used named conditionals for platform specific dependencies and suppress Android and Windows hooks on Mac. (https://github.com/flutter/engine/pull/8051) 70a18b515 Add clang static analysis support to gn wrapper (https://github.com/flutter/engine/pull/8047) b30f9897b Improve elevation bounds for physical shape layers (https://github.com/flutter/engine/pull/8044) e37bd27b4 Fix weak pointer use violations in shell and platform view. (https://github.com/flutter/engine/pull/8046) dd80fc9ff Add engine support for scrollwheel events (https://github.com/flutter/engine/pull/7494)
-