Loïc Sharma
19ff5c9419
[Tool] Add all enabled features property ( #171547 )
...
https://github.com/flutter/flutter/pull/168437 was reverted as it broke
google3. This adds a `FeatureFlags.allEnabledFeatures` property to the
Flutter tool, which google3 will override to inject its custom feature
flag logic.
[Example google3
failure](https://inspector.corp.google.com/testview;invocationId=0097882f-0362-4cd4-8e82-5e00043b9027;targetId=%2F%2Fmobile%2Fflutter%2Ftests%2Fapp:outside_lib_hot_reload_attach_ios_test_IPHONE_11_15_5;configurationId=8f5d940a576e21051acb7c86f3e612ecc6fed1fab8f179d5a1df840fb4dd05bb;actionId=test_shard0_run0_attempt0;testCase=%23can%20hot%20reload%20the%20app ).
## 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-07-02 22:52:42 +00:00
chunhtai
2b6b9d1258
Adds semantics locale support for web ( #171196 )
...
<!--
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
-->
toward https://github.com/flutter/flutter/issues/98948
This sets the ground work for framework and web
still need to implement:
1. Android and iOS support
2. set application locale.
## 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-07-02 21:46:09 +00:00
Harry Terkelsen
96d6ce0e65
Set width and height when creating <img> platform view for NetworkImage ( #171474 )
...
Fixes a console warning from Flutter Web engine when creating a platform
view without setting `width` and `height`.
Fixes https://github.com/flutter/flutter/issues/170567
## 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-07-02 20:57:22 +00:00
auto-submit[bot]
c2cd71309f
Reverts "Add feature flags to the framework ( #168437 )" ( #171542 )
...
<!-- start_original_pr_link -->
Reverts: flutter/flutter#168437
<!-- end_original_pr_link -->
<!-- start_initiating_author -->
Initiated by: chingjun
<!-- end_initiating_author -->
<!-- start_revert_reason -->
Reason for reverting: broke internal customers
<!-- end_revert_reason -->
<!-- start_original_pr_author -->
Original PR Author: loic-sharma
<!-- end_original_pr_author -->
<!-- start_reviewers -->
Reviewed By: {bkonyi, justinmc, matanlurey}
<!-- end_reviewers -->
<!-- start_revert_body -->
This change reverts the following previous change:
## Motivation
We'd like to let users opt-in to experimental features so that they can
give early feedback while we iterate on the feature. For example:
Example feature flags:
1. Android sensitive content:
https://github.com/flutter/flutter/pull/158473 . When enabled, Flutter
will tell Android when the view contains sensitive content like a
password.
2. Desktop multi-window. When enabled, Flutter will use child windows to
allow things like a context menu to "escape" outside of the current
window.
### Use case
Users will be able to turn on features by:
* **Option 1**: Run `flutter config --enable-my-feature`. This enables
the feature for all projects on the machine
* **Option 2**: Add `enable-my-feature: true` in their `pubspec.yaml`,
under the `flutter` section. This would enable the for a single project
on the machine.
Turning on a feature affects _both_ development-time (`flutter run`) and
deployment-time (`flutter build x`). For example, I can `flutter build
windows` to create an `.exe` with multi-window features enabled.
## How this works
This adds a new
[`runtimeId`](https://github.com/flutter/flutter/pull/168437/files#diff-0ded384225f19a4c34d43c7c11f7cb084ff3db947cfa82d8d52fc94c112bb2a7R243-R247 )
property to the tool's `Feature` class. If a feature is on and has a
`runtimeId`, its `runtimeId` will be [stamped into the Dart application
as a Dart
define](https://github.com/flutter/flutter/pull/168437/files#diff-bd662448bdc2e6f50e47cd3b20b22b41a828561bce65cb4d54ea4f5011cc604eR293-R327 ).
The framework uses this Dart define to [determine which features are
enabled](https://github.com/flutter/flutter/pull/168437/files#diff-c8dbd5cd3103bc5be53c4ac5be8bdb9bf73e10cd5d8e4ac34e737fd1f8602d45 ).
### Multi-window example
https://github.com/flutter/flutter/pull/168697 shows how this new
feature flag system can be used to add a multi-window feature flag:
1. It adds a new [multi-window
feature](https://github.com/flutter/flutter/pull/168697/files#diff-0ded384225f19a4c34d43c7c11f7cb084ff3db947cfa82d8d52fc94c112bb2a7R189-R198 )
to the Flutter tool. This can be turned on using `flutter config
--enable-multi-window` or by putting `enable-multi-window: true` in an
app's .pubspec, under the `flutter` section.
2. It adds a new
[`isMultiWindowEnabled`](https://github.com/flutter/flutter/pull/168697/files#diff-c8dbd5cd3103bc5be53c4ac5be8bdb9bf73e10cd5d8e4ac34e737fd1f8602d45R7-R11 )
property to the framework.
3. The Material library can use this new property to determine whether
it should create a new window.
[Example](https://github.com/flutter/flutter/pull/168697/files#diff-2cbc1634ed6b61d61dfa090e7bfbbb7c60b74c8abc3a28df6f79eee691fd1b73 ).
## Limitations
### Tool and framework only
For now, these feature flags are available only to the Flutter tool and
Flutter framework. The flags are not automatically available to the
embedder or the engine.
For example, embedders need to configure their surfaces differently if
Impeller is enabled. This configuration must happen before the Dart
isolate is launched. As a result, the framework's feature flags is not a
viable solution for this scenario for now. For these kinds of scenarios,
we should continue to use platform-specific configuration like the
`AndroidManifest.xml` or `Info.plist` files.
This is a fixable limitation, we just need to invest in this plumbing :)
### Tree shaking
Feature flags are not designed to help tree shaking. For example, you
cannot conditionally import Dart code depending on the enabled feature
flags. Code that is feature flagged off will still be imported into
user's apps.
## 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
<!-- end_revert_body -->
Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>
2025-07-02 20:31:18 +00:00
gaaclarke
681b73940f
License cpp 701 ( #171487 )
...
changes:
1) Lots of data file updates
1) Added command line arg to just scan one file to speed up development
(this also cleaned up the code)
1) Started removing trailing asterisks from c style comments
The compare tool is saying we are at 700 copyrights versus 900 now. The
IBM headers in icu are really tricky.
## 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-07-02 20:14:56 +00:00
engine-flutter-autoroll
61ef3d944f
Roll Skia from ddb944ebd78c to 4f0c615b19f3 (9 revisions) ( #171539 )
...
https://skia.googlesource.com/skia.git/+log/ddb944ebd78c..4f0c615b19f3
2025-07-02 chengyangyang-hf@loongson.cn Make ARGB32 blitting more
consistent on loongarch codepath.
2025-07-02 thomsmit@google.com [graphite] Catch notifyInUse edge case
2025-07-02 fmalita@google.com Update gn_to_bp
2025-07-02 lukasza@chromium.org [rust png] Extra verification of
dimensions of the first `fcTL` chunk.
2025-07-02 danieldilan@google.com Fix stream decoding Webp from
unrewindable stream
2025-07-02 lukasza@chromium.org [rust png] Explicitly ignore text
chunks.
2025-07-02 kjlubick@google.com Address clang-tidy empty() suggestions
2025-07-02 mike@reedtribe.org Simplify internals: replace path* with
bool
2025-07-02 fmalita@google.com Reland "Optional PathOps"
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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-02 19:42:26 +00:00
Valentin Vignal
bf3e8566eb
Add backgroundColor to RadioThemeData ( #171326 )
...
Part of https://github.com/flutter/flutter/issues/168787
Follow-up of https://github.com/flutter/flutter/pull/171204
## 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-07-02 18:38:08 +00:00
Valentin Vignal
10298edaab
Add innerRadius to Radio ( #171331 )
...
Part of https://github.com/flutter/flutter/issues/168787
Add the ability to customize the inner radius of the `Radio` button
https://github.com/user-attachments/assets/234fffda-f42f-463f-bc97-284c160c86ef
<img width="274" alt="Screenshot 2025-06-28 at 6 23 11 PM"
src="https://github.com/user-attachments/assets/45a0525d-ff94-4fb3-85d3-0d2353b39e98 "
/>
## 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-07-02 18:38:06 +00:00
Kishan Rathore
59ba3087e4
Deprecate: Mark AppBarTheme & AppBarThemeData color parameter as deprecated in favor of backgroundColor ( #170624 )
...
Deprecate: Mark AppBarTheme color parameter as deprecated in favor of
backgroundColor
fixes : #169918
## 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: Qun Cheng <36861262+QuncCccccc@users.noreply.github.com>
2025-07-02 18:22:32 +00:00
Loïc Sharma
c6f9e801b2
Add feature flags to the framework ( #168437 )
...
## Motivation
We'd like to let users opt-in to experimental features so that they can
give early feedback while we iterate on the feature. For example:
Example feature flags:
1. Android sensitive content:
https://github.com/flutter/flutter/pull/158473 . When enabled, Flutter
will tell Android when the view contains sensitive content like a
password.
2. Desktop multi-window. When enabled, Flutter will use child windows to
allow things like a context menu to "escape" outside of the current
window.
### Use case
Users will be able to turn on features by:
* **Option 1**: Run `flutter config --enable-my-feature`. This enables
the feature for all projects on the machine
* **Option 2**: Add `enable-my-feature: true` in their `pubspec.yaml`,
under the `flutter` section. This would enable the for a single project
on the machine.
Turning on a feature affects _both_ development-time (`flutter run`) and
deployment-time (`flutter build x`). For example, I can `flutter build
windows` to create an `.exe` with multi-window features enabled.
## How this works
This adds a new
[`runtimeId`](https://github.com/flutter/flutter/pull/168437/files#diff-0ded384225f19a4c34d43c7c11f7cb084ff3db947cfa82d8d52fc94c112bb2a7R243-R247 )
property to the tool's `Feature` class. If a feature is on and has a
`runtimeId`, its `runtimeId` will be [stamped into the Dart application
as a Dart
define](https://github.com/flutter/flutter/pull/168437/files#diff-bd662448bdc2e6f50e47cd3b20b22b41a828561bce65cb4d54ea4f5011cc604eR293-R327 ).
The framework uses this Dart define to [determine which features are
enabled](https://github.com/flutter/flutter/pull/168437/files#diff-c8dbd5cd3103bc5be53c4ac5be8bdb9bf73e10cd5d8e4ac34e737fd1f8602d45 ).
### Multi-window example
https://github.com/flutter/flutter/pull/168697 shows how this new
feature flag system can be used to add a multi-window feature flag:
1. It adds a new [multi-window
feature](https://github.com/flutter/flutter/pull/168697/files#diff-0ded384225f19a4c34d43c7c11f7cb084ff3db947cfa82d8d52fc94c112bb2a7R189-R198 )
to the Flutter tool. This can be turned on using `flutter config
--enable-multi-window` or by putting `enable-multi-window: true` in an
app's .pubspec, under the `flutter` section.
2. It adds a new
[`isMultiWindowEnabled`](https://github.com/flutter/flutter/pull/168697/files#diff-c8dbd5cd3103bc5be53c4ac5be8bdb9bf73e10cd5d8e4ac34e737fd1f8602d45R7-R11 )
property to the framework.
3. The Material library can use this new property to determine whether
it should create a new window.
[Example](https://github.com/flutter/flutter/pull/168697/files#diff-2cbc1634ed6b61d61dfa090e7bfbbb7c60b74c8abc3a28df6f79eee691fd1b73 ).
## Limitations
### Tool and framework only
For now, these feature flags are available only to the Flutter tool and
Flutter framework. The flags are not automatically available to the
embedder or the engine.
For example, embedders need to configure their surfaces differently if
Impeller is enabled. This configuration must happen before the Dart
isolate is launched. As a result, the framework's feature flags is not a
viable solution for this scenario for now. For these kinds of scenarios,
we should continue to use platform-specific configuration like the
`AndroidManifest.xml` or `Info.plist` files.
This is a fixable limitation, we just need to invest in this plumbing :)
### Tree shaking
Feature flags are not designed to help tree shaking. For example, you
cannot conditionally import Dart code depending on the enabled feature
flags. Code that is feature flagged off will still be imported into
user's apps.
## 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-07-02 17:13:53 +00:00
Pranav
a69ba5da50
fix: time selector separator in timepicker is not centered vertically ( #168441 )
...
PR Description
This PR addresses an issue in the Flutter time picker where the
separator between the hour and minute selectors (:) was not centered
vertically. The change ensures that the separator is now vertically
centered, improving the overall UI alignment and consistency.
Previously, the separator used only the TextAlign.center property, which
did not fully address the vertical alignment issue. The updated code
wraps the separator text in a Center widget to ensure proper centering
both horizontally and vertically.
Before:
The separator (:) was horizontally centered but not aligned vertically.
After:
The separator is now both horizontally and vertically centered within
the time picker.


Issues Fixed
This PR fixes issue https://github.com/flutter/flutter/pull/157402
(Vertical alignment issue in the time picker separator).
---------
Co-authored-by: Mitchell Goodwin <58190796+MitchellGoodwin@users.noreply.github.com>
Co-authored-by: Chris Bracken <chris@bracken.jp>
2025-07-02 16:31:59 +00:00
engine-flutter-autoroll
17848992dc
Roll Packages from 3dc682deffb4 to 205c50f07ec7 (3 revisions) ( #171526 )
...
3dc682deff...205c50f07e
2025-07-01 stuartmorgan@google.com [google_sign_in] Add
`GoogleSignInExceptionCode` export (flutter/packages#9545 )
2025-07-01 10687576+bparrishMines@users.noreply.github.com
[interactive_media_ads] Adds wrappers for native IMA settings
(flutter/packages#9481 )
2025-07-01 47866232+chunhtai@users.noreply.github.com [go_router] bump
breaking change release to v16 (flutter/packages#9480 )
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-07-02 15:44:22 +00:00
Reid Baker
1dfb59d281
Android min sdk 24 part 1 ( #170882 )
...
- **bump template version, update migration code to handle api 21-23 and
expand it to cover multiple min api level definitions**
- **bump add to app project to minimum api level 24**
- **PathUtilsTest converted to using config, removed test code that
branched on versions older than 24**
- **Update additional build.gradle files to have minsdk 24 and
documenation**
Related to #170807
G3 cls
- espresso https://critique.corp.google.com/cl/776592881
- integration tests cl/778034198
- removal of pre api 23 samples tests cl/777652802
## 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: Gray Mackall <34871572+gmackall@users.noreply.github.com>
2025-07-02 14:30:22 +00:00
Ben Konyi
4937e469d6
[ Tool ] Update validator of NO_PROXY to explicitly match detected hosts ( #171385 )
...
Fixes https://github.com/flutter/flutter/issues/35598
2025-07-02 13:59:09 +00:00
Ben Konyi
8d58596bd9
[ Tool ] Change name of test classes that don't extend Mock from Mock* to Fake* ( #171380 )
...
Fixes https://github.com/flutter/flutter/issues/33274
2025-07-02 13:59:09 +00:00
engine-flutter-autoroll
64e1e4311e
Roll Skia from a502da560b25 to ddb944ebd78c (1 revision) ( #171513 )
...
https://skia.googlesource.com/skia.git/+log/a502da560b25..ddb944ebd78c
2025-07-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from fae54fc27fa8 to fa631dc17664 (4 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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-02 11:19:26 +00:00
engine-flutter-autoroll
d954b223a4
Roll Skia from 2c3984a63a42 to a502da560b25 (2 revisions) ( #171503 )
...
https://skia.googlesource.com/skia.git/+log/2c3984a63a42..a502da560b25
2025-07-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from ef6b3564f12e to c45c84ffa29e (6 revisions)
2025-07-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn
from 3e03a4fc77a2 to 490e8b437551 (14 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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-02 07:56:37 +00:00
engine-flutter-autoroll
b4bdbbaea9
Roll Skia from af6f29c7a9e3 to 2c3984a63a42 (2 revisions) ( #171497 )
...
https://skia.googlesource.com/skia.git/+log/af6f29c7a9e3..2c3984a63a42
2025-07-01
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-07-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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-02 05:48:16 +00:00
Gray Mackall
7677f1a7bd
Increase per-step timeout for build_android_host_app_with_module_source targets ( #171241 )
...
These targets have a 60m overall timeout, but a per step timeout of 30m.
Almost all of the time is spent in one of the steps, see
https://ci.chromium.org/ui/p/flutter/builders/prod/Windows%20build_android_host_app_with_module_source/3321/overview
Increase the per-step timeout to 45, as it is doing a lot of work and
does occasionally hit the 30m timeout.
Fixes https://github.com/flutter/flutter/issues/170788 for now (in that
it will get it below flake threshold).
## 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: Gray Mackall <mackall@google.com>
2025-07-02 04:55:19 +00:00
Matan Lurey
1c3afdf630
Address some comments from #38632 (2019) if they still apply ( #171461 )
...
Closes https://github.com/flutter/flutter/pull/38632 .
Mostly clarifies how validation works, and reuses some code.
2025-07-02 03:10:20 +00:00
Huy
c2aa5180f0
Fix DropdownMenu does not apply opacity to the selected value when disabled ( #170336 )
...
Fix https://github.com/flutter/flutter/issues/169942
### Description
The bug is about the
[effectiveTextStyle](b086fe7b79/packages/flutter/lib/src/material/dropdown_menu.dart (L979) )
being applied to the inner
[TextField](b086fe7b79/packages/flutter/lib/src/material/dropdown_menu.dart (L1049) )
inside DropdownMenu fails to reflect the disabled style based on the
[enabled
property](b086fe7b79/packages/flutter/lib/src/material/dropdown_menu.dart (L209) ).
The fix for this is simply to check the `enabled` property and override
the TextField's TextStyle.
### Demo of the fix
| before | after |
| --------------- | --------------- |
<video
src="https://github.com/user-attachments/assets/0c56577b-301a-4369-bb1c-280643521cab "/>
| <video
src="https://github.com/user-attachments/assets/7e806fc7-4b90-49e5-b91b-8779454c8e60 "/>
## 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
---------
Signed-off-by: huycozy <huy@nevercode.io>
2025-07-02 01:10:33 +00:00
engine-flutter-autoroll
0b2810862c
Roll Skia from 7917d3922342 to af6f29c7a9e3 (1 revision) ( #171482 )
...
https://skia.googlesource.com/skia.git/+log/7917d3922342..af6f29c7a9e3
2025-07-01 bungeman@google.com Further fix up fiddle_example
requirements
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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-02 00:04:07 +00:00
Bruno Leroux
a7bfe6e498
Add tests for some local InputDecorationTheme properties ( #171435 )
...
## Description
This PR adds tests for `InputDecorationThemeData.floatingLabelBehavior`,
`InputDecorationThemeData.floatingLabelAlignment`, and
`InputDecorationThemeData.contentPadding`.
## Related Issue
Related to https://github.com/flutter/flutter/pull/168981
## Tests
Adds 3 tests, moves one.
2025-07-01 23:48:25 +00:00
engine-flutter-autoroll
ab6101449a
Roll Fuchsia Linux SDK from paQphLeTdjksq0VgK... to sIXAJH-dBt0-F5XwX... ( #171481 )
...
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 codefu@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-07-01 23:25:08 +00:00
Alex Medinsh
906084a9db
Update CupertinoPicker docs ( #170960 )
...
This PR updates the docs after the changes introduced in
https://github.com/flutter/flutter/pull/170202 .
## 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.
2025-07-01 22:17:21 +00:00
engine-flutter-autoroll
4dcd1f12b9
Roll Skia from 97c3c984a17e to 7917d3922342 (5 revisions) ( #171478 )
...
https://skia.googlesource.com/skia.git/+log/97c3c984a17e..7917d3922342
2025-07-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from ae9b2969a750 to fae54fc27fa8 (2 revisions)
2025-07-01 lukasza@chromium.org [rust png] Prefer `SkASSERT_RELEASE`
over `SkASSERT`.
2025-07-01 mike@reedtribe.org SkTypeface virtuals to take SkSpan
2025-07-01 bungeman@google.com Remove fontations dep on pathops
2025-07-01 bungeman@google.com Only build fiddle_examples when possible
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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-01 22:00:09 +00:00
Mohellebi abdessalem
d3e5417310
remove x86 unused codepaths ( #170191 )
...
Towards #170142
## 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 `///`).
- [ ] 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.
- [ ] 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: Reid Baker <1063596+reidbaker@users.noreply.github.com>
2025-07-01 21:24:52 +00:00
matasb-google
f2814ddfe6
Fix crash when editableText is not mounted ( #171159 )
...
Fix issue when text_selection crashes due to editableText not being
mounted.
No issue filled (internal b/425840577)
Likely introduced by https://github.com/flutter/flutter/pull/167881
## 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-07-01 21:23:47 +00:00
Brandon DeRosier
a0711824a5
Add --enable-flutter-gpu flag to flutter_tool & FLTEnableFlutterGPU to the macOS embedder ( #171404 )
...
Resolves https://github.com/flutter/flutter/issues/168126
Resolves https://github.com/flutter/flutter/issues/171361
Resolves https://github.com/bdero/flutter-scene-example/issues/9
FLTEnableFlutterGPU was added for iOS and Android in
https://github.com/flutter/flutter/pull/165337 along with a setting in
the engine. This patch adds macOS support and allows the flag to be
overridden by passing `--enable-flutter-gpu` to the Flutter tool.
2025-07-01 18:27:50 +00:00
engine-flutter-autoroll
7386eb897e
Roll Packages from 471bfd305f4e to 3dc682deffb4 (2 revisions) ( #171458 )
...
471bfd305f...3dc682deff
2025-07-01 stuartmorgan@google.com [video_player] Use CADisplayLink on
macOS 14.0+ (flutter/packages#9533 )
2025-06-30 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump exoplayer_version from 1.4.1 to 1.5.1 in
/packages/video_player/video_player_android/android
(flutter/packages#8414 )
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-07-01 18:26:07 +00:00
engine-flutter-autoroll
a4170daf0e
Roll Skia from 2580675b46d5 to 97c3c984a17e (5 revisions) ( #171457 )
...
https://skia.googlesource.com/skia.git/+log/2580675b46d5..97c3c984a17e
2025-07-01 mike@reedtribe.org Change patheffect's virtual to take
pathbuilder
2025-07-01 thomsmit@google.com [graphite] DrawContext calls Image::Copy
2025-07-01 kaylee.lubick@gmail.com Add Skia pride example
2025-07-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll
Dawn from 3a5d9945a673 to 3e03a4fc77a2 (188 revisions)
2025-07-01 robertphillips@google.com [graphite] Improve error message in
Precompilation tools
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 codefu@google.com ,kjlubick@google.com,michaelludwig@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-07-01 18:23:59 +00:00
Victor Sanni
a58caa3346
Focused search field hides prefix in higher accessibility text scale modes ( #171406 )
...
### Flutter
https://github.com/user-attachments/assets/231a2e93-5fa8-4d67-933b-5d5585d05fb5
### Native
https://github.com/user-attachments/assets/94cbc0c1-1326-47db-a902-d91e8009318b
Fixes [Focused CupertinoSearchTextField does not hide prefix in higher
accessibility text scale
modes](https://github.com/flutter/flutter/issues/168255 )
2025-07-01 18:21:18 +00:00
Matan Lurey
ad722a2973
Add -v to flutter doctor for crash reporting ( #171308 )
...
Towards https://github.com/flutter/flutter/issues/38901 .
2025-07-01 17:48:00 +00:00
Klemen Tusar
6ffa9dab3e
Fix infinite loop in CupertinoSliverNavigationBar collapse animation by adding bounds check for target scroll position ( #170210 )
...
This pull request includes a fix to the
`CupertinoSliverNavigationBarState` class in the `nav_bar.dart` file.
The change ensures that the `animateTo` method is only called when the
`target` is within the valid scroll extent range, i.e. `target <=
position.maxScrollExtent`.
Fixes https://github.com/flutter/flutter/issues/164458
## 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: Victor Sanni <victorsanniay@gmail.com>
2025-07-01 17:33:50 +00:00
engine-flutter-autoroll
a9f718335e
Roll Skia from 8de238c050fb to 2580675b46d5 (21 revisions) ( #171444 )
...
https://skia.googlesource.com/skia.git/+log/8de238c050fb..2580675b46d5
2025-07-01 bungeman@google.com Allow fiddle_examples in shared builds
2025-07-01 mike@reedtribe.org Propagate volatile between path and
builder
2025-07-01
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-07-01
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-07-01
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-07-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from f835be5aa629 to ae9b2969a750 (11 revisions)
2025-07-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
SwiftShader from 436722b39118 to 96a63130d839 (1 revision)
2025-07-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from 686cc37642f5 to ef6b3564f12e (9 revisions)
2025-06-30 bungeman@google.com Fix more skia_component warnings
2025-06-30 robertphillips@google.com [graphite] More Android
PaintOptions
2025-06-30 rafael.cintron@microsoft.com Force Dawn to load components
from system folders
2025-06-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll
Dawn from 772f77165cdf to 3a5d9945a673 (0 revision)
2025-06-30 thomsmit@google.com [graphite] Remove TintIR option and jobs
2025-06-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from 9a4e8ded41e3 to f835be5aa629 (1 revision)
2025-06-30 bungeman@google.com Fix some component to be skia_component
2025-06-30 michaelludwig@google.com [graphite] Use correct working
context for precompile's withWorkingColorSpace/format
2025-06-30 fmalita@google.com Revert "Optional PathOps"
2025-06-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from 8acd0e40f584 to 686cc37642f5 (7 revisions)
2025-06-30 fmalita@google.com Optional PathOps
2025-06-30 bungeman@google.com Rename :fontmgr_android_freetype
:fontmgr_android
2025-06-29 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from d90e098a4598 to 9a4e8ded41e3 (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
jonahwilliams@google.com ,kjlubick@google.com,michaelludwig@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-07-01 15:47:15 +00:00
Matan Lurey
4fbc812a47
Add feature flags to flutter doctor -v ( #171307 )
...
Towards https://github.com/flutter/flutter/issues/38901 .
2025-07-01 15:44:09 +00:00
Matan Lurey
b524df28bd
Report feature flags enabled if the flutter tool crashes on a bot. ( #171304 )
...
Towards https://github.com/flutter/flutter/issues/38901 .
Next PR will also add feature flags to `flutter doctor`.
2025-07-01 15:44:09 +00:00
Matan Lurey
1a967e0d63
Remove a doctor event from the package:usage-era. ( #171305 )
...
No test because it's just unused.
2025-07-01 15:44:09 +00:00
Reid Baker
1b075f6b18
Android gradle use lowercase instead of toLowerCase in preparation for removal in v9 ( #171397 )
...
partial resolution for #170791 (lowercase but not filemode)
This is the first time I have used the experimental api annotation. Most
users should have lowercase available without the annotation only the
oldest kotlin/agp versions should need the annotation.
## 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-07-01 15:10:12 +00:00
Zachary Anderson
253cae121e
Re-pin package:intl ( #171438 )
...
Reverts https://github.com/flutter/flutter/pull/169286 .
I am in agreement with the goal of unpinning packages dependencies, but
a change of this significance should have a fleshed out design doc and
plan, and be presented at the Dash forum so that the whole team is aware
of the changes.
2025-07-01 14:39:04 +00:00
engine-flutter-autoroll
975f6d8bef
Roll Dart SDK from 8d3120f38d52 to 8d69b07b9d9d (1 revision) ( #171416 )
...
https://dart.googlesource.com/sdk.git/+log/8d3120f38d52..8d69b07b9d9d
2025-07-01 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-293.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-07-01 06:29:09 +00:00
flutter-pub-roller-bot
4106752a92
Roll pub packages ( #171415 )
...
This PR was generated by `flutter update-packages --force-upgrade`.
2025-07-01 05:35:23 +00:00
Victor Sanni
5e6115d959
Correct position for an open CupertinoContextMenu ( #170943 )
...
## Larger-sized child
### Flutter
https://github.com/user-attachments/assets/e120bdda-4236-480d-a85f-183b176bc2a9
### Native
https://github.com/user-attachments/assets/7577b0a0-9111-47e0-ad5d-f533a14310ea
## Smaller-sized child
### Flutter
https://github.com/user-attachments/assets/98ba9ffe-715f-4ec6-8d33-e10a8ae69d7d
### Native
https://github.com/user-attachments/assets/b6dbc891-5e01-4ac5-a362-d714328e46d3
## Landscape mode
### Flutter
https://github.com/user-attachments/assets/9191b8ba-e80a-4d88-b6c4-75876704c2aa
### Native
https://github.com/user-attachments/assets/bb7dfe21-a87b-4eab-a2d2-fab35a7a4c70
<details>
<summary>Flutter sample code</summary>
```dart
import 'package:flutter/cupertino.dart';
void main() => runApp(const ContextMenuApp());
class ContextMenuApp extends StatelessWidget {
const ContextMenuApp({super.key});
@override
Widget build(BuildContext context) {
return CupertinoApp(
home: MyStatelessWidget(),
);
}
}
/// This is the stateless widget that the main application instantiates.
class MyStatelessWidget extends StatelessWidget {
const MyStatelessWidget({super.key});
List<String> getDataList() {
List<String> list = [];
for (int i = 0; i < 15; i++) {
list.add(i.toString());
}
return list;
}
List<Widget> getWidgetList(BuildContext context) {
return getDataList()
.map((item) => getItemContainer(context, item))
.toList();
}
Widget getItemContainer(BuildContext context, String item) {
return CupertinoContextMenu(
actions: List<Widget>.generate(
4,
(index) {
return CupertinoContextMenuAction(
child: Text('Action ${index + 1}'),
onPressed: () {
Navigator.pop(context);
},
);
},
),
child: SizedBox.square(
dimension:
350, // Change to increase the size of the context menu's child.
child: ColoredBox(
color: CupertinoColors.destructiveRed,
child: Align(
alignment: Alignment.center,
child: Text(
item,
style: TextStyle(color: CupertinoColors.white, fontSize: 20),
),
),
),
),
);
}
@override
Widget build(BuildContext context) {
return CupertinoPageScaffold(
navigationBar: CupertinoNavigationBar(
middle: Text('Context Menu Demo'),
),
child: SafeArea(
child: GridView.count(
crossAxisSpacing: 5.0,
mainAxisSpacing: 5.0,
padding: EdgeInsets.all(10.0),
crossAxisCount: 3,
childAspectRatio: 1.0,
children: getWidgetList(context),
),
),
);
}
}
```
</details>
<details>
<summary>Native sample code</summary>
```swift
import SwiftUI
struct ContentView: View {
let colors: [Color] = [.red, .orange, .blue, .green]
var body: some View {
NavigationView {
ScrollView {
LazyVGrid(columns: Array(repeating: GridItem(.flexible()), count: 3), spacing: 5) {
ForEach(0..<15) { index in
ContextMenuItem(item: "\(index)", color: colors.randomElement()!)
}
}
.padding(10)
}
.navigationTitle("Context Menu Demo")
.navigationBarTitleDisplayMode(.inline)
}
}
}
struct ContextMenuItem: View {
let item: String
let color: Color
var body: some View {
Text(item)
.font(.system(size: 20))
.foregroundColor(.white)
.frame(width: 220, height: 220)
.background(color)
.cornerRadius(8)
.contextMenu {
ForEach(1..<5) { i in
Button("Action \(i)") {
print("Action \(i) tapped for item: \(item)")
}
}
} preview: {
Text(item)
.font(.system(size: 20))
.foregroundColor(.white)
.frame(width: 250, height: 500)
.background(color)
.cornerRadius(8)
}
}
}
```
</details>
Fixes [iOS Context Menus incorrectly moves to the center between
screens](https://github.com/flutter/flutter/issues/60334 )
2025-07-01 03:58:18 +00:00
engine-flutter-autoroll
2bbebd865f
Roll Dart SDK from d95798161a18 to 8d3120f38d52 (1 revision) ( #171411 )
...
https://dart.googlesource.com/sdk.git/+log/d95798161a18..8d3120f38d52
2025-06-30 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-292.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-07-01 01:24:25 +00:00
Brandon DeRosier
152cbfc2c7
Remove impeller-cmake build rules ( #171407 )
...
We no longer have any stakeholders relying on the impeller-cmake build,
and I am no longer maintaining it.
Developers who wish to use the Impeller renderer in native applications
should consider using the awesome [Impeller Standalone C
SDK](https://github.com/flutter/flutter/tree/master/engine/src/flutter/impeller/toolkit/interop#impeller-standalone-sdk )
built by @chinmaygarde instead.
2025-06-30 22:57:27 +00:00
Brandon DeRosier
2c970ccee1
Remove --enable-impeller-3d gn flag ( #171405 )
...
This flag is no longer used. Impeller Scene was removed a while back and
has been rewritten as [dart
package](https://pub.dev/packages/flutter_scene ) that runs on Flutter
GPU.
2025-06-30 22:36:42 +00:00
Ramon Farizel
319bd1109c
Add WidgetStatesController to ListTile ( #168878 )
...
Add WidgetStatesController to ListTile
Fixes https://github.com/flutter/flutter/issues/166611
## 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-06-30 22:35:17 +00:00
zhongliugo
bb784b983b
feat(web): Add navigation focus handler for assistive technology focus restoration ( #170046 )
...
**Description**
This pull request adds a navigation focus handler to the Flutter web
engine that bridges assistive technology activations with Flutter's
focus tracking system. The listener intercepts screen reader activations
(VoiceOver, NVDA, JAWS, etc.) and forces DOM focus on the activated
elements, ensuring they integrate properly with Flutter's navigation
focus restoration.
**Before**
When using VoiceOver or other screen readers to navigate between pages
in a Flutter web app, focus restoration would fail because assistive
technology activations don't naturally trigger the DOM focus events that
Flutter's navigation system expects. Users would lose their navigation
context, with focus jumping to default elements instead of returning to
the previously activated button.
**Before behavior demo**
https://focus-demo-0529-before.web.app
On mac os, Use command + F5 to activate voice over.
Use control + option + arrow right to focus on "Go to page two" button.
Use control + option + space to click the "Go to page two" button.
Then in page two, use control + option + arrow right to focus on "Back
to page one" button.
The focus will be on "Page one" heading instead of "Go to page two"
button. This is not expected
**After**
Screen reader users can now navigate between pages and have their focus
properly restored to the previously activated element (e.g., "Go to Page
Two" button) when returning to a previous page, providing a consistent
and accessible navigation experience across all assistive technologies.
**After behavior demo**
https://focus-demo-0529-after.web.app
On mac os, Use command + F5 to activate voice over.
Use control + option + arrow right to focus on "Go to page two" button.
Use control + option + space to click the "Go to page two" button.
Then in page two, use control + option + arrow right to focus on "Back
to page one" button.
The focus will be on "Go to page two" button. This is expected.
**Issue Fixed**
This PR addresses GitHub Issue #140483 , which reports that VoiceOver
focus restoration doesn't work in Flutter web applications during
navigation.
## 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-06-30 22:20:26 +00:00
engine-flutter-autoroll
0287384953
Roll Dart SDK from 3061dd665885 to d95798161a18 (1 revision) ( #171400 )
...
https://dart.googlesource.com/sdk.git/+log/3061dd665885..d95798161a18
2025-06-30 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-291.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-06-30 20:16:27 +00:00
Mohellebi abdessalem
9ba6aafb94
remove x86 in BUILD.gn ( #170965 )
...
based on [this
comment](https://github.com/flutter/flutter/pull/170191#pullrequestreview-2910139454 )
Towards #170142
## 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] All existing and new tests are passing.
- [ ] 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.
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-06-30 18:16:29 +00:00