jcheng
dfd0a3cb5f
feat(RadioListTile):ensure that 'isThreeLine' can be configured through the ( #166964 )
...
This PR is a continuation of
[165481](https://github.com/flutter/flutter/pull/165481 )
Related items also include:
[SwitchListTile](https://github.com/flutter/flutter/pull/166820 ),
[CheckboxListTile](https://github.com/flutter/flutter/pull/166826 )
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
---------
Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-05-06 01:47:26 +00:00
engine-flutter-autoroll
0d2ee2c49c
Roll Fuchsia Linux SDK from hjXORaFgiSd6QjK3D... to SOlRUoAtzxSsarx-6... ( #168347 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter
Please CC jsimmons@google.com ,zra@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-06 00:00:57 +00:00
Qun Cheng
826d065919
Revert "Wire up MenuAnchor, MenuBar, MenuItem-related widgets to aria roles ( #165596 )" ( #168339 )
...
This reverts commit 417f47fda55e5ef0505a84ca9ce558ac287a5d25.
Fixes https://github.com/flutter/flutter/issues/168185
## Pre-launch Checklist
- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-05 23:57:33 +00:00
jesswrd
9cd0c083c7
Bumping framework Template Defaults to Android 16 (API 36) ( #166464 )
...
Updating framework to Android 16 (API 36). This involves updating
template versions to:
`compilesdk` 36
AGP 8.9.1
gradle 8.11.1
They are the recommended minimum versions outlined in the android docs
[here](https://developer.android.com/build/releases/gradle-plugin ).
Note: I will bump `targetsdk` in a different PR. Infra changes may be
necessary when bumping `targetsdk`, so rolling it back would be easier
if the change is in a separate PR.
Partially Addresses https://github.com/flutter/flutter/issues/163071
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-05 23:46:34 +00:00
engine-flutter-autoroll
da6cfc79e0
Roll Skia from c0404ac7ea67 to 65fd10118ec2 (3 revisions) ( #168346 )
...
https://skia.googlesource.com/skia.git/+log/c0404ac7ea67..65fd10118ec2
2025-05-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-05-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-05-05 robertphillips@google.com Fix ChromePrecompileTest for Intel
Macs
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC
jsimmons@google.com ,kjlubick@google.com,robertphillips@google.com on the
revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-05 23:32:28 +00:00
Chris Bracken
2ae0dd195d
macOS: Support writing Swift in the macOS embedder ( #168174 )
...
Enables the `swift` tool in the gn mac toolchain and wires up support
for Swift `source_set` targets. Ports `FlutterRunLoop` to Swift.
* Adds `//flutter/build/config/mac:compiler` config that sets up
`swiftflags` for the `swift` tool in the toolchain for macOS, and adds
it to the default configs on `is_mac` builds.
* Adds `mac_swift_lib_paths` in
`engine/src/build/config/apple/apple_sdk.gni` which holds the path of
Swift shared libraries for macOS targets. This is within the appropriate
`macosx` SDK directory within Xcode.
Finally, this code adds Swift code to the embedder and embedder tests as
proof of concept and to prevent regressions. This ports `FlutterRunLoop`
to Swift in order to verify Objective-C imports of Swift via the
bridging header.
Issue: https://github.com/flutter/flutter/issues/144791
## Pre-launch Checklist
- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-05 21:19:24 +00:00
Jason Simmons
da738f3142
Copy Dart SDK _internal/vm/bin sources into the sky_engine package ( #168238 )
...
Fixes https://github.com/flutter/flutter/issues/168004
2025-05-05 20:38:52 +00:00
MarkZ
f794a58262
Using headless=new for Chrome macrobenchmarks ( #168256 )
...
My newly added DDC macrobenchmarks tests have been timing out on the
test infra. It turns out that `headless` Chrome is significantly slower
than headful Chrome (reasons unknown, but perhaps related to hardware
acceleration). Using `--headless=new` instead of `flutter run`'s
headless flag (which uses the old headless mode) makes my local runs
significantly (10x+) faster.
*This time for sure*
2025-05-05 20:38:51 +00:00
engine-flutter-autoroll
2ef49e7735
Roll Dart SDK from a1e1e2770c1e to 8dc0ecee5adc (1 revision) ( #168338 )
...
https://dart.googlesource.com/sdk.git/+log/a1e1e2770c1e..8dc0ecee5adc
2025-05-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-97.0.dev
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter
Please CC dart-vm-team@google.com ,jsimmons@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-05 20:37:08 +00:00
Jason Simmons
0f769d3e21
Check for duplicate archive paths in the engine build configuration JSON files ( #168248 )
...
The intent is to catch issues like
https://github.com/flutter/flutter/issues/168180 where multiple builders
are uploading artifacts to the same paths on cloud storage.
2025-05-05 20:30:20 +00:00
Elliott Brooks
78a2a3fa67
[Widget Inspector] Add on-device button for changing default "tap" behavior ( #167677 )
...
Fixes https://github.com/flutter/flutter/issues/166118
Adds a second button to the on-device inspector that allows a developer
to temporarily disable the default "tap triggers widget selection"
behavior without fully exiting out of widget selection mode. Fixes an
issue where enabling/disabling widget selection is destructive for some
app set-ups, causing the developer's app to lose state.
## Demo

## Material screenshots
### Dark mode
<img width="130" alt="Screenshot 2025-04-23 at 12 22 41 PM"
src="https://github.com/user-attachments/assets/e643fd26-6bcb-43a2-a718-191e1831345f "
/>
<img width="113" alt="Screenshot 2025-04-23 at 12 22 48 PM"
src="https://github.com/user-attachments/assets/5ac81455-64f0-4f07-9b36-b8fd498a9669 "
/>
### Light mode
<img width="105" alt="Screenshot 2025-04-23 at 12 21 46 PM"
src="https://github.com/user-attachments/assets/49c67f6f-7d90-4758-83e9-ed8bf5505bae "
/>
<img width="108" alt="Screenshot 2025-04-23 at 12 21 55 PM"
src="https://github.com/user-attachments/assets/aeca0178-872d-441e-ae5f-e9b469d83d60 "
/>
## Cupertino screenshots
<img width="399" alt="Screenshot 2025-04-22 at 2 21 46 PM"
src="https://github.com/user-attachments/assets/0ad45cee-15cf-45af-9fa0-c0955296aa29 "
/>
### Dark mode
<img width="134" alt="Screenshot 2025-04-23 at 12 20 19 PM"
src="https://github.com/user-attachments/assets/9b34a6c2-5308-465e-b842-0fb180d25865 "
/>
<img width="123" alt="Screenshot 2025-04-23 at 12 20 26 PM"
src="https://github.com/user-attachments/assets/7c601831-91c8-440e-98ae-070444574ff9 "
/>
### Light mode
<img width="106" alt="Screenshot 2025-04-22 at 2 21 38 PM"
src="https://github.com/user-attachments/assets/517839d5-25d8-42e7-a9b9-f35a77725afc "
/>
<img width="103" alt="Screenshot 2025-04-22 at 2 21 55 PM"
src="https://github.com/user-attachments/assets/390f0b0f-1a9b-4880-b686-fabe102fe7b6 "
/>
2025-05-05 19:58:23 +00:00
MarkZ
2e455eb59a
Adding utf-8 encoding to hello world's html template ( #168162 )
...
Found this while running `hello_world` with web hot reload. DDC's new
module system expects 'utf-8' encoding.
2025-05-05 19:42:24 +00:00
Reid Baker
bd130eaf53
Update goldens.dart error to point to moved file ( #168319 )
...
No issue, found while debugging goldens.
The file path referenced does not exist. I think the replacement file is
the correct one because it referenced the image that appear related.
https://github.com/search?q=repo%3Aflutter%2Fflutter%20dev%2Ftools%2Fandroid_engine_test%2FREADME.md&type=code
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-05-05 19:09:25 +00:00
Jackson Gardner
2b5ef64fc4
Skwasm heavy ( #166619 )
...
This produces a build of Skwasm that works on Firefox and Safari. This
means we use `SkAnimatedImage` for animated gifs and webps and use
builtin ICU data in Skia.
I have unit test suites for Safari and Firefox with dart2wasm and both
`ui` and `engine` test sets. However, there are a few issues with
running these on CI:
* Safari+dart2wasm doesn't work yet until the CI bots are upgraded to
macOS 15, so these have been disabled on CI for now (but you can run the
unit test suite locally).
* Firefox+ui doesn't work because our Linux bots have no GPU and
therefore no WebGL2 support, so that one is disabled. Firefox+dart2wasm
with the `engine` suite is enabled on CI though.
I did make some changes to the host page for our unit test harness so
that Safari actually works though. Even though we're not running on CI,
you can still run locally if you have macOS 15.
2025-05-05 17:56:26 +00:00
Jason Simmons
018c6d44df
Manual roll of Dart from 5c535a368799 to a1e1e2770c1e ( #168317 )
2025-05-05 17:38:12 +00:00
engine-flutter-autoroll
fa0c0e08a0
Roll Skia from 9e23a55870e9 to c0404ac7ea67 (1 revision) ( #168321 )
...
https://skia.googlesource.com/skia.git/+log/9e23a55870e9..c0404ac7ea67
2025-05-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE
from d4c83ace2cdc to c60d98cef658 (7 revisions)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC
jsimmons@google.com ,kjlubick@google.com,robertphillips@google.com on the
revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-05 17:32:32 +00:00
Sebastine Odeh
7326addb6a
Cupertino sheet MediaQuery values ( #168041 )
...
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->
There's an issue with the Cupertino sheet route in the current stable
version of Flutter. However, it was partly fixed in master. This PR
addresses passing the appropriate bottom padding values to the page
content, which ensures widgets placed in Safe Areas are laid out
correctly.
Before

After

Fixes [#167943 ](https://github.com/flutter/flutter/issues/167943 )
## Pre-launch Checklist
- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-05 17:15:34 +00:00
Gray Mackall
ce4aae7fad
Change FGP unit test expect to match on process result instead of exit code ( #168278 )
...
Change FGP unit test `expect` to match on process result instead of exit
code. Should give actionable logs on failure.
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
Co-authored-by: Gray Mackall <mackall@google.com>
2025-05-05 17:08:14 +00:00
Jim Graham
c1775a78a7
[Impeller] Use StrokeParameters anywhere stroke is described ( #168276 )
...
https://github.com/flutter/flutter/pull/168125 introduced
StrokeParameters to hold all of the stroke-related values, but was only
used in the rendering code. We now use it across Impeller to describe
stroke decorations.
2025-05-05 16:55:23 +00:00
engine-flutter-autoroll
cfa98599e9
Roll Packages from afa43aea03d5 to e064b0400657 (2 revisions) ( #168314 )
...
afa43aea03...e064b04006
2025-05-05 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump io.mockk:mockk from 1.14.0 to 1.14.2 in
/packages/shared_preferences/shared_preferences_android/android in the
test-dependencies group across 1 directory (flutter/packages#9201 )
2025-05-02 63247997+jmiller-pwi@users.noreply.github.com
[flutter_adaptive_scaffold] allow users to override navigation rail
padding from AdaptiveScaffold constructor (flutter/packages#8433 )
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-05 16:08:27 +00:00
Ben Konyi
3d0c18b550
[ Widget Preview ] Add typedefs, replace height and width with size ( #168063 )
...
Addresses some comments from
[flutter.dev/go/widget-previews-architecture](flutter.dev/go/widget-previews-architecture).
2025-05-05 15:51:14 +00:00
engine-flutter-autoroll
7e9462cdcd
Roll Skia from a72f57a515d5 to 9e23a55870e9 (2 revisions) ( #168295 )
...
https://skia.googlesource.com/skia.git/+log/a72f57a515d5..9e23a55870e9
2025-05-04 skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
Update SKP version
2025-05-03
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC
jsimmons@google.com ,kjlubick@google.com,robertphillips@google.com on the
revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-05 15:08:11 +00:00
Qun Cheng
14c45d944e
Revert "Fix hit-testing order in semantics ( #167522 )" ( #168235 )
...
This reverts commit d9cbff29bca75c8e1cf6a9fe24da44857de9445f.
Fixes https://github.com/flutter/flutter/issues/168164
2025-05-05 01:28:40 +00:00
engine-flutter-autoroll
16e11dbc49
Roll Fuchsia Linux SDK from UVdwr2sfg9MUYIC2S... to hjXORaFgiSd6QjK3D... ( #168286 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter
Please CC jsimmons@google.com ,zra@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-04 21:21:33 +00:00
yim
bdb36c50d2
Fix the incorrect position of SliverTree child nodes. ( #167928 )
...
Run the code below:
```dart
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
void main() => runApp(const MaterialApp(home: MyApp()));
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
final GlobalKey _key = GlobalKey();
final GlobalKey _childNodeKey = GlobalKey();
late final List<TreeSliverNode<GlobalKey>> tree = [
TreeSliverNode<GlobalKey>(_key, expanded: true, children: [
TreeSliverNode<GlobalKey>(_childNodeKey),
]),
];
@override
Widget build(BuildContext context) {
return Scaffold(
body: CustomScrollView(
slivers: [
TreeSliver(
tree: tree,
indentation: TreeSliverIndentationType.custom(40),
treeRowExtentBuilder: (node, dimensions) => 40,
treeNodeBuilder: (context, node, animationStyle) {
return Container(
key: node.content as Key,
color: node.content == _key ? Colors.blue : Colors.green,
);
},
),
],
),
floatingActionButton: FloatingActionButton(
onPressed: () {
final RenderBox rb = _childNodeKey.currentContext!.findRenderObject() as RenderBox;
print(rb.localToGlobal(Offset.zero));
},
child: const Icon(Icons.add),
),
);
}
}
```
Get the screen:

When the `floatingActionButton` is clicked, it should print the position
of the green `Container`. The expected result is `Offset(40.0, 40.0)`,
but the actual result is `Offset(0.0, 40.0)`. `hitTest` also produces
incorrect results. This PR fixes the issue.
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-03 14:07:32 +00:00
engine-flutter-autoroll
c36748ff48
Roll Fuchsia Linux SDK from vqWDpBRU-9GJgmjRr... to UVdwr2sfg9MUYIC2S... ( #168261 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter
Please CC jsimmons@google.com ,zra@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-03 07:42:30 +00:00
Jim Graham
619c02f2a0
[Impeller] Fill/StrokePathGeometry use geom objects as path sources ( #168125 )
...
When basic rendering operations end up in a "general case" situation in
Impeller, it converts the basic shape into a path and calls `DrawPath`.
But, the creation of the path is expensive and all the mechanisms behind
drawing a path now only need a `PathSource` object which can replay the
path to them.
We now have explicit lightweight path source generators which can feed
the path drawing operations directly from the source data without having
to create a full `impeller::Path` object.
2025-05-03 00:06:37 +00:00
Nick Sparks
bc0d3289cb
InputDecorator - animate between transparent hoverColor and hoverColor ( #168244 )
...
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->
As described in https://github.com/flutter/flutter/issues/155169 ,
TextFields with hoverColor set can have an issue where they flicker as
the mouse enters and exits their bounds.
_BorderContainerState uses a 15ms animation to transition between
non-hovered and hovered states. Part of this animation is a ColorTween
between Colors.transparent and a given hoverColor. Critically,
Colors.transparent is transparent black. On high refresh rate displays
(any display with faster than 60z), this can result in a frame being
rendered where the TextField fill color is a dark, semi-transparent
version of hoverColor.
The immediate solution to this is to animate between hoverColor and a
hoverColor with alpha 0.
Before:
https://github.com/user-attachments/assets/01d62c6a-015d-4dc7-9897-7c3a75ca8aa0
After:
https://github.com/user-attachments/assets/ff51a5b2-ba4a-4508-a111-4c915d31ac46
Fixes https://github.com/flutter/flutter/issues/155169
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
---------
Co-authored-by: Nick Sparks <6109599+nsparks@users.noreply.github.com>
2025-05-02 23:34:04 +00:00
Justin McCandless
9f42991d77
MediaQuery picks up view data changes ( #166498 )
...
This fixes a bug in MediaQuery's update logic and removes some
now-unnecessary workaround code.
Fixes https://github.com/flutter/flutter/issues/165519
Discovered in
https://github.com/flutter/flutter/pull/165354#discussion_r1999849170
2025-05-02 23:32:32 +00:00
sigmundch
8cffc5a881
[dyn_modules] enable ddm builds in the merge queue ( #168233 )
...
This changes the ddm builds to be part of the merge queue so they are
available on every commit and can be used for internal testing.
To be honest, I can't recall the meaning of bringup, but I updated it
together with backfill to match what I see in the other ci
configurations. Let me know if those changes still make sense or if we
should do something else here.
cc @jiahaog @jtmcdole
b/393719931
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
Co-authored-by: Sigmund Cherem < 2049220+sigmundch@users.noreply.github.com>
2025-05-02 22:17:01 +00:00
Ramon Farizel
7448418bb5
Set Dialog's maximum width to 560dp according to Material's guidelines ( #166643 )
...
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->
This commit introduces a `maxWidth` property to `Dialog` to allow
limiting the maximum width of the component. It is following the
[Material3
guidelines](https://m3.material.io/components/dialogs/specs#6771d107-624e-47cc-b6d8-2b7b620ba2f1 )
for Dialogs
No tests have been created yet. I'd like to get feedback on the
implementation approach before writing tests to ensure they are aligned
with the intended design
Issue: https://github.com/flutter/flutter/issues/163709
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
---------
Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
Co-authored-by: Qun Cheng <36861262+QuncCccccc@users.noreply.github.com>
2025-05-02 20:52:14 +00:00
Victoria Ashworth
071f62d937
Add engine build mode to Flutter and FlutterMacOS framework Info.plist ( #168024 )
...
This PR adds the build mode (debug, profile, release) to the
Flutter.framework, FlutterMacOS.framework, and FlutterEmbedder.framework
Info.plist.
It also adds the engine version to the FlutterMacOS.framework
Info.plist. The engine version is already in the Flutter.framework one.
Fixes https://github.com/flutter/flutter/issues/168028 .
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 20:39:50 +00:00
Victoria Ashworth
59537e1f66
Add link to SwiftPM manual integration instructions ( #168066 )
...
If SwiftPM integration fails, display a link to instructions on how to
integrate manually.
New error message will look like
```
An error occurred when adding Swift Package Manager integration:
Exception: Forced a throw
Swift Package Manager is currently an experimental feature, please file a bug at
https://github.com/flutter/flutter/issues/new?template=01_activation.yml
Consider including a copy of the following files in your bug report:
ios/Runner.xcodeproj/project.pbxproj
ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme (or the scheme for the flavor used)
To add Swift Package Manager integration manually, please use the following instructions:
https://docs.flutter.dev/packages-and-plugins/swift-package-manager/for-app-developers#add-to-a-flutter-app-manually
Alternatively, to avoid this failure, disable Flutter Swift Package Manager integration for the project
by adding the following in the project's pubspec.yaml under the "flutter" section:
"disable-swift-package-manager: true"
Or disable Flutter Swift Package Manager integration globally with the
following command:
"flutter config --no-enable-swift-package-manager"
```
Fixes https://github.com/flutter/flutter/issues/160214 .
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 20:39:50 +00:00
Chris Bracken
da166e8586
Remove availability checks for iOS 13, macOS 10.15 ( #168157 )
...
Flutter now builds with a minimum deployment target of iOS 13 and macOS
10.15, so these are no longer necessary.
Issue: https://github.com/flutter/flutter/issues/167735
Issue: https://github.com/flutter/flutter/issues/167745
## Pre-launch Checklist
- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 20:25:23 +00:00
Matt Boetger
fe1952ad78
Add metrics for android gradle plugin version ( #168181 )
...
Add android gradle plugin version to any events logging gradle builds.
Fixes : #164148
## Pre-launch Checklist
- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.
2025-05-02 20:02:15 +00:00
engine-flutter-autoroll
0c6b9bca07
Roll Skia from 00e00c9d9720 to a72f57a515d5 (6 revisions) ( #168232 )
...
https://skia.googlesource.com/skia.git/+log/00e00c9d9720..a72f57a515d5
2025-05-02 cairno@google.com [Ganesh] Add path to partially support
RenderDoc with SurfaceFlinger on Android.
2025-05-02 kylechar@google.com graphite: Enable SSBOs for Dawn/Vulkan
2025-05-02 michaelludwig@google.com Revert "[graphite] Lift solid color
shader expressions"
2025-05-02 jvanverth@google.com [graphite] Fix blur fallback for Android
shadows.
2025-05-02 aleksbgbg@google.com Add support for
VK_EXT_pipeline_creation_cache_control
2025-05-02 aleksbgbg@google.com Add a maxSize parameter to
storeVkPipelineCacheData
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC bungeman@google.com ,jsimmons@google.com,kjlubick@google.com on
the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-02 19:56:52 +00:00
Bruno Leroux
183b9ea27e
Add DropdownMenuFormField ( #163721 )
...
## Description
This PR introduces DropdownMenuFormField.
## Related Issue
Fixes [Create
DropdownMenuFormField](https://github.com/flutter/flutter/issues/141941 )
Fixes [Add validator to
DropdownMenu](https://github.com/flutter/flutter/issues/152131 )
## Tests
Adds 41 tests.
2025-05-02 19:41:10 +00:00
Kevin Moore
6ce1251e75
Omit service worker settings when service worker is disabled ( #168192 )
...
Omit the `serviceWorkerVersion` when the feature disabled, specifically
when `--pwa-strategy none`
2025-05-02 19:30:21 +00:00
Severin
f839918eb1
Add missing removeStatusListener for bottom sheets ( #167899 ) ( #167900 )
...
Fixes the missing `removeStatusListener` in `_StandardBottomSheetState`.
* Fixes : #167899
I was unsure about the test regarding this change and I couldn't find
any similar tests, so I improvised with a custom controller class.
Feel free to request/make changes to the test as required.
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 19:30:20 +00:00
Ben Konyi
e3db1bb721
[ Widget Preview ] Improve widget inspector support for widget previews ( #168013 )
...
In order to prevent the widget inspector from being able to select and
inspect elements of the widget previewer's scaffolding, this commit
consists of two notable changes:
1) A `debugWillManuallyInjectWidgetInspector` property has been added to
`WidgetsBinding`. Setting this property to true before running the
application will prevent `WidgetsApp` from injecting a `WidgetInspector`
instance into the widget tree, even if the widget inspector is enabled.
This means that the widget inspector will not be able to select and
highlight widgets by default, requiring `WidgetInspector` to be manually
wrapped around widget trees that should be inspectable.
2) The widget_preview_scaffold template has been updated to set
`debugWillManuallyInjectWidgetInspector` to true by default, and to wrap
individual previews provided by the developer with an instance of
`WidgetInspector` to restrict widget inspection to the contents of the
preview.
This change also includes a minor bug fix for situations where
`WidgetInspector` is inserted into an unconstrained context. Previously,
the `WidgetInspector`'s `_InspectorOverlay` would attempt to take up as
much space as possible, causing an overflow. To fix this, the
`_InspectorOverlay` is wrapped with `Positioned.fill(...)` to force it
to take on the same size as its parent `Stack`.
Work towards https://github.com/flutter/flutter/issues/166423
**Demo:**
https://github.com/user-attachments/assets/6d9d384c-5470-4828-983d-a6d9051a2282
2025-05-02 19:28:17 +00:00
Mouad Debbar
f454856afc
[WebParagraph] Initial wiring for the experimental WebParagraph implementation ( #167763 )
...
In this PR:
- `felt build --experimental-webparagraph` builds a 3rd variant of
CanvasKit to be used for `WebParagraph`.
- `felt test --suite=chrome-dart2js-experimental-webparagraph-ui` runs
`test/ui/` tests against `WebParagraph`.
- `felt test --suite=chrome-dart2js-experimental-webparagraph-ui` runs
Chrome with the extra flag:
- `--enable-experimental-web-platform-features`
In the future:
- Upgrade to Chrome@133.0.6943.53 or above.
- Actual implementation and tests of WebParagraph coming in
https://github.com/flutter/flutter/pull/167559
- Run the `chrome-dart2js-experimental-webparagraph-ui` suite in CI.
- Trim the new experimental build of CK to realize the reduction in
size.
2025-05-02 16:51:13 +00:00
Victoria Ashworth
07b0983657
Share common logic between UnpackMacOS and UnpackIOS build targets ( #168034 )
...
`UnpackIOS` and `UnpackMacOS` have shared logic, which is currently
basically duplicate code. We also plan to add more shared logic for
SwiftPM. To simply that, this PR creates an abstract `UnpackDarwin`
class with the shared logic.
No functionality is changed other than slightly changed error logs for
`UnpackMacOS`. Code is tested by:
-
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/general.shard/build_system/targets/ios_test.dart
-
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/general.shard/build_system/targets/macos_test.dart
Fixes https://github.com/flutter/flutter/issues/168029 .
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 16:09:41 +00:00
engine-flutter-autoroll
057a77b49e
Roll Packages from 250ee0d74817 to afa43aea03d5 (1 revision) ( #168215 )
...
250ee0d748...afa43aea03
2025-05-02 32538273+ValentinVignal@users.noreply.github.com
[go_router_builder] Add support for caseSensitive
(flutter/packages#9134 )
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-02 15:59:35 +00:00
engine-flutter-autoroll
9ffc2d9ef3
Roll Skia from f5cdbf60704a to 00e00c9d9720 (2 revisions) ( #168205 )
...
https://skia.googlesource.com/skia.git/+log/f5cdbf60704a..00e00c9d9720
2025-05-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE
from 3b77a177ba09 to d4c83ace2cdc (6 revisions)
2025-05-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
SwiftShader from fefba0024aa6 to 9dd03f2e4b03 (1 revision)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC bungeman@google.com ,jsimmons@google.com,kjlubick@google.com on
the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-02 15:41:42 +00:00
Daco Harkes
48f87a5fe7
[native assets] Roll dependencies ( #168139 )
...
Roll packages to the ones published today.
Note that `native_assets_cli` was split up into `hooks` and
`code_assets`, and `native_assets_builder` was renamed to
`hooks_runner`.
2025-05-02 08:19:21 +00:00
Valentin Vignal
c6ceffa2e7
Add documentation examples to KeepAlive AutomaticKeepAlive and AutomaticKeepAliveClientMixin ( #168137 )
...
Part of https://github.com/flutter/flutter/issues/153860
https://github.com/user-attachments/assets/8fd233da-d1b1-417a-8854-8d16c3ad195b
https://github.com/user-attachments/assets/93197949-b962-483e-bb8f-02db5206674c
https://github.com/user-attachments/assets/ad4f4091-6ed3-4a13-bcf3-f8572ce87481
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 07:03:35 +00:00
engine-flutter-autoroll
c795935606
Roll Skia from b63705f0539f to f5cdbf60704a (4 revisions) ( #168199 )
...
https://skia.googlesource.com/skia.git/+log/b63705f0539f..f5cdbf60704a
2025-05-02 zzyiwei@google.com Revert "Load Vulkan dynamic state entry
points"
2025-05-02
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-05-01 thomsmit@google.com [graphite] Fix ARM speculative vertex
execution bug.
2025-05-01
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC bungeman@google.com ,jsimmons@google.com,kjlubick@google.com on
the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-02 06:08:27 +00:00
Chris Bracken
e7d3223c61
macOS: Delete unused FlutterRenderBackingStore ( #168159 )
...
All usages of this code were removed in
ed9d9bf372ba9ebd97446fb8a8f8b03f0f42986a during the great macOS renderer
refactor of 2022.
## Pre-launch Checklist
- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 03:12:07 +00:00
engine-flutter-autoroll
27006f6e95
Roll Fuchsia Linux SDK from uRZ63_whHk5Gt6MSM... to vqWDpBRU-9GJgmjRr... ( #168187 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter
Please CC jsimmons@google.com ,zra@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-05-02 02:15:40 +00:00
zhongliugo
afb08bba88
Highlighting hour and minute input fields ( #167766 )
...
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->
This PR addresses the issue in time_picker.dart where pressing the TAB
key to navigate between the hour and minute fields in input mode doesn't
properly select the text in the newly focused field.
**What Changed**
- Added focus traversal logic in the _HourMinuteTextFieldState class's
initState method that:
1. Properly handles TAB key presses to move focus to the next field
2. Automatically selects all text when a field gains focus
- Added tests in time_picker_test.dart to verify that:
1. The hour field's text is selected when it gains focus
2. Pressing TAB moves focus to the minute field
3. The minute field's text is selected when it receives focus via TAB
key
**Why This Matters**
This change improves accessibility and usability of the time picker in
input mode. When users navigate using the keyboard (pressing TAB), they
expect the text in the newly focused field to be fully selected,
allowing them to immediately type a new value without having to manually
delete the existing text. This is standard behavior in form fields and
now the TimePicker component follows this expected pattern.
**Before the change:**
web:
https://time-picker-0423-before-change.web.app/
mobile:
https://github.com/user-attachments/assets/532c8aa2-4f8d-4118-9eaa-2fc6c2825486
**After the change:**
web:
https://time-picker-04232025.web.app/
mobile:
https://github.com/user-attachments/assets/9271b3b0-9ece-479e-a01e-a62e31b1d6c7
**Issue to fix:**
https://github.com/flutter/flutter/issues/165830
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-05-02 01:57:19 +00:00