Update the Slider and RangeSlider to the latest Material spec. This introduces an updated track, updated thumbs, updated tick marks, and a new value indicator shape. The old paddle value indicator shape is also updated so that text scaling works consistently.
Before this change, it was possible to move the focus onto a control that was no longer in the view using focus traversal. This changes that, so that when a control is focused, it makes sure that if it is the child of a scrollable, that the scrollable attempts to keep it in view. If it is already in view, then nothing scrolls.
When asked to move in a direction, the focus traversal code tries to find a control to move to inside the scrollable first, and then looks for things outside of the scrollable only once the scrollable has reached its limit in that direction.
f4fba66 Adding opacity -> alpha method to Color class (flutter/engine#13902)
86e82fc Roll src/third_party/skia d3ddcb403993..c5e528e15b1f (1 commits) (flutter/engine#13916)
84ed7be [web] Implement PathMetrics.length (flutter/engine#13909)
2b007ed Roll fuchsia/sdk/core/mac-amd64 from 8X5fE... to bC9Qy... (flutter/engine#13919)
ad0cbdc Roll src/third_party/dart 5b72c1c669..d9d5fbc109 (5 commits) (flutter/engine#13917)
c4c1e57 Roll src/third_party/skia d4fb7c7b140d..d3ddcb403993 (21 commits) (flutter/engine#13915)
38147fa Roll fuchsia/sdk/core/linux-amd64 from kSMF7... to T9BAw... (flutter/engine#13914)
7c5ed6c Roll src/third_party/dart 62c67e40dc..5b72c1c669 (17 commits)
72b6a7e Roll buildroot to a985f7f63ac. (flutter/engine#13910)
e16a4b7 Roll fuchsia/sdk/core/mac-amd64 from Oo6E_... to 8X5fE... (flutter/engine#13912)
47e1026 Roll src/third_party/skia c9d263c1213e..d4fb7c7b140d (7 commits) (flutter/engine#13897)
This fixes the sample code analysis to treat dartpad snippets in the same way as snippet snippets, which it wasn't until now (the snippet generator was treating them as "samples"), and some errors crept in. This PR also fixes those errors.
Also, added a --verbose option to the sample analyzer.
* Allow web server device to use extension if started with --start-paused
* Fix comment
* Remove browser-launch option that allowed using Chrome without launching Chrome
The web-server device should now be used if you don't want to launch a browser.
* Add tests for WebServerDevice with --start-paused
* Fixes from rebase
* More fixes from rebase
* Fix from rebase
* Fix condition for page refresh in non-debug builds
* Make dwds conditions match with a new getter
* Add missing .device
I updated the build files for manual_tests, as well as adding in a macos and web directory to allow the manual tests to be run on the web or on desktop.
The main change here are the parts that I added to the files in manual_tests/lib/... (the addition of kIsWeb to "if (!kIsWeb && Platform.isMacOS) {") The rest is just an update of the auto-generated code from flutter create.
This adds a FocusableActionDetector, a widget which combines the functionality of Actions, Shortcuts, MouseRegion and a Focus widget to create a detector that defines actions and key bindings, and will notify that the focus or hover highlights should be shown or not. This widget can be used to give a control the required detection modes for focus and hover handling on desktop and web platforms.
I replaced a bunch of similar code in many of our widgets with this widget, and found that pretty much any control that wants to be focusable wants all of these features as well: focus highlights, hover highlights, and actions to activate it.
Also eliminated an extra _hasFocus variable in FocusState that wasn't being used.
While building the iOS platform views support we only enabled it when the app developer explicitly specified it with a flag, the main reasons were using an untested thread configuration, and taking a performance hit (even when no platform view is used due to disabled raster cache).
Now that we are using the same dynamic thread configuration whether platform views is used or not, and that raster cache works with platform views in the tree as well, we are almost ready to enabled the platform views support by default.
As a first step, I'm enabling it for the Flutter Gallery app on which we run benchmarks. After monitoring the benchmarks and making sure the gallery takes no hit we should be more confident to enabled platform views by default.
This change is expected to have no performance effect on the Gallery app at all.
GLFW key events set modifier flags based on what the modifier state was before the event, unlike every other platform. This modifies the GLFW key support to take that into account.
As a small cleanup, I fixed a documentation macro reference for the modifier flags that was duplicate
This adds support for the command key for text selection/editing on macOS. I had ported the text editing code (in #42879), but forgot to add support for the command key itself. This also adds a test that tests the text editing on multiple platforms instead of just testing Android.
There appears to still be a bug (filed #44135) where we're losing key events sometimes on macOS, leaving some keys "stuck" on, but this PR at least allows the right key combinations to be used.