86339 Commits

Author SHA1 Message Date
engine-flutter-autoroll
dc6fbf6fea
Roll Dart SDK from d88d8bf2b53c to 65b171958c93 (3 revisions) (#176871)
https://dart.googlesource.com/sdk.git/+log/d88d8bf2b53c..65b171958c93

2025-10-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-16.0.dev
2025-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-15.0.dev
2025-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-14.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 aaclarke@google.com,dart-vm-team@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-10-11 02:39:19 +00:00
Kishan Rathore
ee991b3a78
feat: apply radioGroup role to segmented control widgets (#176157)
feat: apply radioGroup role to segmented control widgets
fixes: #164589

## 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-10-11 01:11:05 +00:00
Ahmed Mohamed Sameh
eab2fb02cc
Make sure that a CheckboxMenuButton doesn't crash in 0x0 environment (#176450)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the
CheckboxMenuButton widget.
2025-10-10 21:35:25 +00:00
Rusino
cce24b8a9d
[WebParagraph] Support for more styles, placeholders, decorations, etc (#172853)
This is the second version of WebParagraph. It includes pretty much all
SkParagraph functionality except struts and justifications (eventually
they will be implemented, too).

Part of https://github.com/flutter/flutter/issues/172561

---------

Co-authored-by: Mouad Debbar <mdebbar@google.com>
2025-10-10 16:38:29 +00:00
Jason Simmons
75caa52df1
Set up a version of build_ios_framework_module_test that only runs on x64 machines and extend its timeout (#176811)
The "Mac build_ios_framework_module_test" builder was being scheduled on
either x64 or arm64 machines. The test takes longer when run on an x64
machine and would sometimes exceed the default 30 minute timeout.

This PR changes that builder to only run on x64 and use a 45 minute
timeout. (There is already a separate "Mac_arm64
build_ios_framework_module_test" that runs only on arm64)
2025-10-10 16:34:19 +00:00
engine-flutter-autoroll
fbfaf35e21
Roll Packages from 0b41de3a61ec to e319c40960a5 (1 revision) (#176833)
0b41de3a61...e319c40960

2025-10-09 1063596+reidbaker@users.noreply.github.com [many} Update all
examples apps to use java 17 complile options (flutter/packages#10195)

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-10-10 15:52:10 +00:00
Danny Tuppeny
54ac6899b6
[tool/dap] Forward app.warning events from Flutter to DAP client (#176827)
This change is to support
https://github.com/Dart-Code/Dart-Code/issues/5730. It ensures the
`app.warning` event emitted by `flutter run` (added for
https://github.com/flutter/flutter/issues/176206) is forwarded through
the debug adapter to the client (for ex. the VS Code extension) where it
can be displayed.

With the corresponding Dart-Code changes, it will allow the warning to
show up like this (instead of just in text output that scrolls past in
the terminal):

<img width="602" height="343" alt="image"
src="https://github.com/user-attachments/assets/eac199ad-e562-4e98-b8f0-ee51103cc166"
/>

## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-10 14:56:27 +00:00
engine-flutter-autoroll
e7980672ba
Roll Dart SDK from 70c00d3ceb3a to d88d8bf2b53c (1 revision) (#176830)
https://dart.googlesource.com/sdk.git/+log/70c00d3ceb3a..d88d8bf2b53c

2025-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-13.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 aaclarke@google.com,dart-vm-team@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-10-10 14:24:24 +00:00
Kostia Sokolovskyi
309bde139a
Remove unnecessary nullable types in examples. (#176713)
### Description

- Removes unnecessary `bool?` usage in examples

## 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 `///`).
- [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.


<!-- 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-10-10 11:16:19 +00:00
engine-flutter-autoroll
2aca931ec1
Roll Fuchsia Linux SDK from xArtL4DH0FsdwSqG_... to JpiUsek1hU5r9QVKP... (#176822)
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 aaclarke@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-10-10 10:52:07 +00:00
Bruno Leroux
75df48ba1e
Cleanup OutlinedButton.icon documentation and implementation (#176630)
## Description

This PR cleanup `OutlinedButton.icon` documentation and recent logic
change from https://github.com/flutter/flutter/pull/175810.
2025-10-10 09:39:18 +00:00
Gray Mackall
1969110cb6
[HCPP] Properly remove hcpp views that are no longer visible (#176742)
Fixes https://github.com/flutter/flutter/issues/175882.

This ended up being a very similar bug to
https://github.com/flutter/flutter/pull/173881, and in my understanding
comes from the same incorrect assumption. In old PV land these views
would stop displaying if we stopped sending updates to them. But in HCPP
the underlying implementation ends up using an Android SurfaceFlinger
which continues displaying what it was last told to. So again we have a
bug here were we aren't taking the new responsibility of clearing that
we need to. See
https://github.com/flutter/flutter/pull/173881#discussion_r2283287104

Other solutions would be to just always call hide on the set of (keys of
view_params which are not in composition order) on every frame (which
would avoid this mirroring of state), or to modify the jni here to pass
over one big bundle with all the information required to do all the
existing calls as well as determine which views need to be hidden. But
we are already doing this same mirroring of visibility state for the
overlay layer (see Hide/ShowOverlayLayerIfNeeded()), so I think it is
reasonable to take the same approach here.

This is sort of a follow up to
https://github.com/flutter/flutter/pull/162908 as well, this PR properly
removes the view when it is the last platform view, but does not fix the
case that this PR attempts to more generally fix where we go from 2->1
(or n->n-1 > 0) pvs.

## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-10 07:00:11 +00:00
Ahmed Mohamed Sameh
ef158c39a3
Make sure that an InputChip doesn't crash in 0x0 environment (#175930)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the InputChip widget.

---------

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-10 05:42:24 +00:00
Loïc Sharma
6d541a1c67
Update Flutter templates' Dart style (#175963)
This updates Flutter's templates to reduce the number of changes
triggered by running `dart format` immediately after `flutter create`.

I will get a test exemption: this is a refactoring with no semantic
changes.

<details>
<summary>Steps to check for stale templates...</summary>

```shell
# Create a directory to test the templates
rm -rf templates_test
mkdir templates_test
cd templates_test

# Create the templates
flutter create counter_app
flutter create empty_app --empty
flutter create my_package --template=package
flutter create my_plugin --template=plugin --platforms=android,ios,linux,macos,windows
flutter create my_ffi_package --template=package_ffi
flutter create my_ffi_plugin --template=plugin_ffi
flutter create my_module --template module

# Use git to check for changes
git init
git add .
git commit -m "Start"

# Format the templates
dart format .

# Check for "unexpected" changes:
git diff
```

</details>

Part of https://github.com/flutter/flutter/issues/175960

## 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 `///`).
- [ ] 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-10 05:38:08 +00:00
Ahmed Mohamed Sameh
b402dfa2a1
Make sure that a DropdownButtonFormField doesn't crash in 0x0 environ… (#174958)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the
DropdownButtonFormField widget.

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-10 05:27:50 +00:00
Ahmed Mohamed Sameh
bfb0be2167
Make sure that an InkWell doesn't crash in 0x0 environment (#175871)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the InkWell widget.

Co-authored-by: Victor Sanni <victorsanniay@gmail.com>
2025-10-10 04:58:52 +00:00
Ahmed Mohamed Sameh
6a424a63e3
Handle#6537 end drawer button (#173026)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the EndDrawerButton
UI control.

---------

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-10 04:44:14 +00:00
engine-flutter-autoroll
d6c3f1b0ba
Roll Dart SDK from a9b7bd4b0b32 to 70c00d3ceb3a (4 revisions) (#176815)
https://dart.googlesource.com/sdk.git/+log/a9b7bd4b0b32..70c00d3ceb3a

2025-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-12.0.dev
2025-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-11.0.dev
2025-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-10.0.dev
2025-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-9.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 aaclarke@google.com,dart-vm-team@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-10-10 03:43:10 +00:00
Robert Ancell
26499cf904
Change default Linux thread policy to merge platform and UI threads. (#176759)
This matches the other platforms who have already done this migration
(Android and iOS in 3.32, Windows and MacOS in 3.33).

Applications may opt-out of this change by setting the thread policy to
unmerged with:
```c
fl_dart_project_set_ui_thread_policy(project, FL_UI_THREAD_POLICY_RUN_ON_SEPARATE_THREAD);
```
in `linux/runner/my_application.cc`
2025-10-10 03:18:24 +00:00
Ben Konyi
bea9e8206c
[ Tool ] Roll package:dwds to 26.0.0 (#176808)
Fixes https://github.com/dart-lang/sdk/issues/61560
2025-10-09 23:29:37 +00:00
Camille Simon
498545a341
Update CHANGELOG to include 3.35.6 notes (#176803)
Add notes on the 3.35.6 release.

## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-09 22:34:03 +00:00
Qun Cheng
e89075c112
Announce text and button together when DropdownMenu is treated as a button (#176428)
Fixes https://github.com/flutter/flutter/issues/175950.

This PR is to make screen reader announce the text field content and the
trailing button together on `DropdownMenu`. When the `DropdownMenu`
cannot be focused (`canRequestFocus()` is set to false), the "text
field" should be treated as if it is a button, and the trailing button
should **not** be announced separately. When the text field is
focusable, it's reasonable to separate text field and the trailing
button, so I leave it as is.

The native app doesn't announce "expanded"/"collapsed", so I use
`Semantics.hint` to achieve the goal.

This demo is to show the screen reader announcement.


https://github.com/user-attachments/assets/e7a9da8f-acf8-4018-a778-1ded1b07103c




## 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-10-09 21:35:21 +00:00
Gregory Conrad
903effa715
[native_assets] create macOS CCompilerConfig via xcrun --find (#175717)
Previously, the macOS `CCompilerConfig` for native assets was created
via running `xcrun clang --version`, but this is not always reliable
(i.e., when running under Nix on macOS). Thus, this commit introduces a
new mechanism to find the CCompilerConfig binaries using `xcrun --find`,
which is a more standard way of finding development-related binaries on
macOS (and is also properly supported in Nix's `xcrun` wrapper).

Fixes #175553

CC @dcharkes -- I think this is the last of the changes needed for Nix
support in Native Assets (as far as I can tell...)

## 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.

<!-- 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-10-09 20:52:48 +00:00
Chinmay Garde
d64282028b
[Impeller] Fix broken links in README. (#176770)
Regression introduced in https://github.com/flutter/flutter/pull/175195
2025-10-09 20:07:12 +00:00
Chinmay Garde
9bc4416614
Fix links to Custom Flutter Engine Embedders in README. (#175807)
The wiki just redirects to the page in this same repo, so point to it
directly. The wiki also redirected to a 404 (which I've now fixed).
2025-10-09 20:07:12 +00:00
b-luk
597f07b268
Update engine setup docs. (#176750)
- Move "gclient bootstrap" out of engine/README.md into a section in the
"Setting up the Engine development environment" doc.
- In the "gclient bootstrap" section, instruct Googlers to follow the
RBE setup docs.
- Update the "Additional Steps for Web Engine" to reflect the fact that
the user's gclient file is copied from a template that contains a
commented-out web engine entry.
- Link to the "Engine Tool" docs instead of to "Compiling the engine"
for the next steps.
- In the RBE doc:
- Update the gclient instructions to reflect that the gclient file may
be copied from rbe.gclient.
- Move the "gcloud" section into the "Getting started" parent section.
The gcloud setup is required before any of the next steps.
- Instead of suggested the "gcloud auth application-default login"
command in case of an error, directly instruct the user to run this
command. It's required for things to work.
- Add a "Too many open files" section to the Troubleshooting parent
section.

<!--
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
-->

*Replace this paragraph with a description of what this PR is changing
or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one
issue. An issue is not required if the PR fixes something trivial like a
typo.*

*If you had to change anything in the [flutter/tests] repo, include a
link to the migration guide as per the [breaking change policy].*

## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-09 19:44:25 +00:00
Elijah Okoroh
e04f0bcfc3
Fix Xcode cache errors (#175659)
This PR fixes a race condition that causes intermittent build failures
on iOS with errors like no such file or directory. These failures were
frequently observed in CI tests running on macOS.

The root cause is that the background wireless device discovery process,
which uses `devicectl`, was not being terminated after a target device
was selected. This background process could then delete Xcode's module
caches while `xcodebuild` was actively using them, leading to a build
failure.

The fix ensures that the wireless device discovery process is explicitly
stopped at all logical exit points of the device discovery flow. This is
achieved by calling stopExtendedWirelessDeviceDiscovery() as soon as:

- A single specified device is found and validated.

- An ephemeral device is chosen.

- A user interactively selects a device from a list.

- The discovery process concludes in a non-interactive environment (like
CI).

This change prevents the devicectl process from running concurrently
with the app build, thus resolving the race condition and improving the
reliability of iOS builds.

### Testing: 

- This is tested by checking the bringup to make sure the following
tests are passing:
* [Mac_arm64_ios
integration_test_test_ios](https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_arm64_ios%20integration_test_test_ios?limit=200)
* [Mac_ios
wide_gamut_ios](https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20wide_gamut_ios?limit=200)
* [Mac_ios
native_assets_ios](https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20native_assets_ios?limit=200)
* [Mac_ios
spell_check_test](https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20spell_check_test?limit=200)
* [Mac_ios
channels_integration_test_ios](https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20channels_integration_test_ios?limit=200)


fixes #174444 

## 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.
- [ ] 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].
- [ ] 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-09 19:18:12 +00:00
Ahmed Mohamed Sameh
9b8f242e9c
Make sure that a MenuBar doesn't crash in 0x0 environment (#176368)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the MenuBar widget.
2025-10-09 19:14:55 +00:00
engine-flutter-autoroll
238db3574b
Roll Packages from 260f381ad1e6 to 0b41de3a61ec (2 revisions) (#176787)
260f381ad1...0b41de3a61

2025-10-09 github@alexv525.com [animations]  Make `OpenContainerState`
public (flutter/packages#9924)
2025-10-08 engine-flutter-autoroll@skia.org Roll Flutter from
908012d58baa to e11e2c11288b (39 revisions) (flutter/packages#10192)

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-10-09 16:28:06 +00:00
zhongliugo
681e34124b
Improve menu item accessibility semantics (#176255)
This PR addresses issue #171231 by enhancing the accessibility semantics
for `MenuItemButton` and `SubmenuButton`. Previously, screen readers did
not correctly announce the disabled state of these menu items.

This ensures that menu items are correctly identified as buttons and
their enabled/disabled state is communicated to assistive technologies.

**Before change**
https://button-0923-before.web.app/

**After change**
https://button-0923-after.web.app/
2025-10-09 15:05:45 +00:00
engine-flutter-autoroll
cd189a18da
Roll Dart SDK from 1d2975778da6 to a9b7bd4b0b32 (1 revision) (#176782)
https://dart.googlesource.com/sdk.git/+log/1d2975778da6..a9b7bd4b0b32

2025-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-8.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 aaclarke@google.com,dart-vm-team@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-10-09 14:26:55 +00:00
engine-flutter-autoroll
76dbf9113d
Roll Fuchsia Linux SDK from xrIAL91ngrd-wNr9S... to xArtL4DH0FsdwSqG_... (#176767)
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 aaclarke@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-10-09 07:21:12 +00:00
flutter-pub-roller-bot
115ac1894d
Roll pub packages (#176764)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-10-09 06:02:06 +00:00
Huy
aa9c1c86a7
Fix ExpansionTile semantics hint for mismatched platforms (#176689)
- Address a partial issue within
https://github.com/flutter/flutter/issues/176566
- This PR proposes using `defaultTargetPlatform` instead of platform
from theme for Semantics hint in ExpansionTile widget (see use case at
https://github.com/flutter/flutter/issues/176566#issue-3486244630); also
add a test for it.

## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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

---------

Signed-off-by: huycozy <huy@nevercode.io>
2025-10-09 04:48:39 +00:00
Bruno Leroux
127519422a
Fix TextField does not inherit local InputDecorationTheme (#176300)
## Description

This PR replaces global `ThemeData.inputDecorationTheme` usage in
`TextField` with `InputDecorationTheme.of ` which returns the ambient
`InputDecorationTheme`.
It is a follow up to https://github.com/flutter/flutter/pull/168981
which introduces `InputDecorationTheme.of `.

## Related Issue

Fixes [[SearchBar] Inconsistent inheritance of
InputDecorationTheme](https://github.com/flutter/flutter/issues/176198)

## Tests

- Adds 1 test
- Updates 1 test
2025-10-09 04:47:04 +00:00
Bruno Leroux
45637be5ce
Fix DropdownButtonFormField does not inherit local InputDecorationTheme (#176564)
## Description

This PR replaces global `ThemeData.inputDecorationTheme` usage in
`DropdownButtonFormField` with `InputDecorationTheme.of ` which returns
the ambient `InputDecorationTheme`.
It is a follow up to https://github.com/flutter/flutter/pull/168981
which introduces `InputDecorationTheme.of `.

## Related Issue

Fixes [DropdownButtonFormField does not inherit local
InputDecorationTheme](https://github.com/flutter/flutter/issues/176561)

## Tests

- Adds 1 test
2025-10-09 04:38:46 +00:00
Ahmed Mohamed Sameh
294961296a
Make sure that a MenuItemButton doesn't crash in 0x0 environment (#176419)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the MenuItemButton
widget.

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-09 03:40:15 +00:00
Ahmed Mohamed Sameh
444420e688
Make sure that a NavigationBar doesn't crash in 0x0 environment (#176731)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the NavigationBar
widget.

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-09 03:38:11 +00:00
Ahmed Mohamed Sameh
600cb9c49e
Make sure that a Material doesn't crash in 0x0 environment (#176231)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the Material widget.

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-09 03:34:14 +00:00
engine-flutter-autoroll
29f1be0c2c
Roll Dart SDK from 94670bffc27d to 1d2975778da6 (8 revisions) (#176752)
https://dart.googlesource.com/sdk.git/+log/94670bffc27d..1d2975778da6

2025-10-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-7.0.dev
2025-10-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-6.0.dev
2025-10-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-5.0.dev
2025-10-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-4.0.dev
2025-10-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-3.0.dev
2025-10-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-2.0.dev
2025-10-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-1.0.dev
2025-10-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.11.0-0.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 aaclarke@google.com,dart-vm-team@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-10-09 01:49:09 +00:00
Ahmed Mohamed Sameh
1126dc3793
Make sure that a FloatingActionButton doesn't crash in 0x0 environment (#175272)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the
FloatingActionButton widget.
2025-10-09 00:16:54 +00:00
Huy
c5228651d0
Fix RadioButton is not vocalized as unselected by VoiceOver (#175926)
### Issue
- Fix https://github.com/flutter/flutter/issues/170422

### Description

This PR proposes a fix by adding a hint to Semantics here:


b220f5a2ab/packages/flutter/lib/src/widgets/raw_radio.dart (L217-L222)

The hint is only available on iOS &macOS platforms with a localized
string for `unselected` state to prevent regression on Android, which
works as expected currently and this seems to be the only solution as
investigated below ⬇️

<details open>
<summary>Demo the fix</summary>


https://github.com/user-attachments/assets/56c1c6c9-5178-45be-a633-47145a0543d6

</details>

#### Why can't we make it simpler with Semantics flags only?

- I looked at
[UIAccessibilityTraits](https://developer.apple.com/documentation/uikit/uiaccessibilitytraits),
it seems the
[selected](https://developer.apple.com/documentation/uikit/uiaccessibilitytraits/selected)
property does announce `selected` state, but it does not mention or give
hints for `unselected` state.
-
[L824-L828](e8bef98051/engine/src/flutter/shell/platform/darwin/ios/framework/Source/SemanticsObject.mm (L824-L828))
in Flutter source code does mention radio button: Looks like I can try
marking both toggle and check, but it's impossible, due to an assertion:
[A semantics node cannot be toggled and checked at the same
time](35375e43fb/packages/flutter/lib/src/rendering/object.dart (L4807-L4809))

➡️ Not sure which flags can trigger `unselected` state implicitly.

#### How do iOS native apps work?

I did test with two approaches:

1. iOS Reminders app: 
VoiceOver vocalizes as follows:
Unchecked radio: "...Incomplete..."
checked radio:"...Completed..."

<details>
<summary>Demo video</summary>


https://github.com/user-attachments/assets/6bed5d14-ded8-47c2-9c09-7afc266898cc

</details>

2. Build Radio with SwiftUI

Looks like [there is no built-in widget for Radio provided by
Apple](https://www.reddit.com/r/SwiftUI/comments/1gsh7zo/does_swiftui_have_a_builtin_radiobutton_in_2024/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button).
[Is it really a native iOS
component?](https://www.reddit.com/r/SwiftUI/comments/1gsh7zo/comment/lxea1uf/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button)

Most of results I have found suggest building radio from a button with
changing image source(selected/unselected, respectively), as I do in
this SwiftUI code here:
https://gist.github.com/huycozy/93b12c030651c4fde6fe8fceda1ba1ee. We can
control what the reader vocalizes by setting traits and value for it
manually. This being said, setting accessibility hint or value from
Flutter side makes sense in this case. Please let me know if I am
missing something.

<details>
<summary>Demo video</summary>


https://github.com/user-attachments/assets/118c89c5-46a3-497f-8b2a-6f7c5ae8edf3

</details>


## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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

---------

Signed-off-by: huycozy <huy@nevercode.io>
Co-authored-by: chunhtai <47866232+chunhtai@users.noreply.github.com>
2025-10-09 00:12:33 +00:00
Ahmed Mohamed Sameh
e055ca0b91
Make sure that a RadioMenuButton doesn't crash in 0x0 environment (#176516)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the RadioMenuButton
widget.

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-09 00:07:14 +00:00
Ahmed Mohamed Sameh
a2a56c2939
Make sure that an InputDecorator doesn't crash in 0x0 environment (#176116)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the InputDecorator
widget.

---------

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-09 00:05:58 +00:00
PurplePolyhedron
07928d5f89
Fix Scaffold having status bar when primary is false (#175156)
When primary is false, `Scaffold` is not at the top of screen, so it
should not have a status bar.
fixes https://github.com/flutter/flutter/issues/175062

## 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.


**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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-10-09 00:04:12 +00:00
flutter-pub-roller-bot
18f1a2a334
Roll pub packages (#176743)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-10-09 00:04:10 +00:00
John "codefu" McDole
1c6c6f4611
fix: build windows_arm artifacts for cah (#176723)
Adds target to merge queue, the only place that the CAH is used to
produce artifacts. Today this is built in post submit and only uploads
to the githash artifact.

This should not add these artifacts to release builders as the
`enabled_branches` is set to "master"

fixes #176603
2025-10-08 20:04:01 +00:00
Ahmed Mohamed Sameh
112f859bfe
Make sure that a Divider doesn't crash in 0x0 environment (#174709)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the Divider widget.

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-08 19:20:10 +00:00
Valentin Vignal
6e5d0079d5
Simplify if-else block into single return statement (#175574)
Follow up of https://github.com/flutter/flutter/pull/175396

This PR applies the code change suggestion from gemini review

## 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].

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- 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>
2025-10-08 19:18:58 +00:00
Ahmed Mohamed Sameh
a345163616
Make sure that a DesktopTextSelectionToolbarButton doesn't crash in 0… (#173827)
This is my attempt to handle
https://github.com/flutter/flutter/issues/6537 for the
DesktopTextSelectionToolbarButton UI control.

---------

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2025-10-08 19:17:21 +00:00