b1d0ffb6d2deda7ad0a67e1ef49e72b330c2fecb
83174 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
b1d0ffb6d2 |
[Windows] Make lifecycle manager updates atomic (#164872)
Required for multi-window. On windows the `LifecycleManager` currently sends the lifecycle event as soon as windows message is processed. This however causes problems when changing focus between application windows. When switching focus from HWND1 to HWND2, HWND1 first gets unfocused, followed by HWND2 getting focused. After HWND1 gets unfocused, `LifecycleManager` immediately notifies the framework that the application is inactive, which is wrong as the application never went into inactive state, followed by subsequent call to put the application in resumed state when HWND2 is focused. Because this happens very quickly, sometimes focus manager gets into inconsistent state. To resolve this `LifecycleManager` should gather the all the changes while window sends the messages and then notify the framework atomically in next run loop turn. This PR also simplifies the logic in `LifecycleManager` through which the application state is derived from window states. This PR removes engine forcing `resumed` lifecycle state at startup. I'm not entirely sure what the point of this was - the state can and should be determined solely from window states, this just seems to muddy the state logic. Also it happens before the framework is even listening to state changes. The mutex in `WindowsLifecycleManager` is removed. Not sure why it was there. ## 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: Matthew Kosarek <matt.kosarek@canonical.com> Co-authored-by: Harlen Batagelo <hbatagelo@gmail.com> Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> |
||
|
|
91d195f642 |
[macOS] Prepare TextInputPlugin for multi-view (#164014)
Notable changes: - `FlutterTextInputPlugin` is now owned by `FlutterEngine`. - `FlutterTextInputPlugin` is only associated with a `FlutterViewController` while having active IME connection. - Changed private state of `TextInputPlugin` from properties to ivars. There is no need for these to be properties, and the state was accessed both as ivars and properties which seemed inconsistent. - Updated test to reflect the changes I've also tested everything including voice-over to make sure accessibility didn't regress. ## 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 |
||
|
|
8c04b6fc9a |
Roll Skia from d1c5490ca749 to 9c42f62925a7 (1 revision) (#164965)
https://skia.googlesource.com/skia.git/+log/d1c5490ca749..9c42f62925a7 2025-03-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from a04b51ef7139 to 06dd9ef55ce2 (18 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 chinmaygarde@google.com,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
92fdf29e6f |
[Linux] Move rendering to raster thread (#161879)
Fixes https://github.com/flutter/flutter/issues/155045 *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 - [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: Robert Ancell <robert.ancell@canonical.com> |
||
|
|
7b07e597f5 |
Roll Skia from b9f4a95a5976 to d1c5490ca749 (1 revision) (#164961)
https://skia.googlesource.com/skia.git/+log/b9f4a95a5976..d1c5490ca749 2025-03-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 6c2737be88ac to f38a081cdea4 (6 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,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
b35c6be8c9 |
Add withDurationAndBounce to SpringDescription (#164411)
Part of https://github.com/flutter/flutter/issues/152587 ### Description: With `withDurationAndBounce` (we could also rename to `withDuration`), the user only has to worry about a single attribute: the bounce (and duration, but they would have to worry with duration anyway. If they don't, there is a default value already). The standard `SpringDescription` has 3 values, so it is way more abstract. This should help a lot people to make beautiful spring animations using Flutter. <img width="838" alt="image" src="https://github.com/user-attachments/assets/4d0dccc7-0f97-4a13-99a4-268228b87f08" /> ### Negative bounce: I didn't enable bounce to be negative because the behavior is super tricky. I don't know what formula Apple is using, but seems like it is not public. There are many different formulas we can use, including the one provided on the original issue, but then there is the risk of people complaining it works differently than SwiftUI. I need to check if other projects (react-spring, framer motion) support negative bounce, but feels like this is something 99.9999% of people wouldn't expect or use, so I think we are safe. I couldn't find a single usage of negative bounce on Swift in all GitHub (without a duration, using code-search, vs 5k cases with positive values). Not even sure the todo is needed, but won't hurt. ### Comparison <details> <summary>Dart vs Swift testing results</summary> ```dart testWidgets('Spring Simulation Tests - Matching SwiftUI', (WidgetTester tester) async { // Test cases matching the Swift code's ranges List<({Duration duration, double bounce})> testCases = [ (duration: const Duration(milliseconds: 100), bounce: 0.0), (duration: const Duration(milliseconds: 100), bounce: 0.3), (duration: const Duration(milliseconds: 100), bounce: 0.8), (duration: const Duration(milliseconds: 100), bounce: 1.0), (duration: const Duration(milliseconds: 500), bounce: 0.0), (duration: const Duration(milliseconds: 500), bounce: 0.3), (duration: const Duration(milliseconds: 500), bounce: 0.8), (duration: const Duration(milliseconds: 500), bounce: 1.0), (duration: const Duration(milliseconds: 1000), bounce: 0.0), (duration: const Duration(milliseconds: 1000), bounce: 0.3), (duration: const Duration(milliseconds: 1000), bounce: 0.8), (duration: const Duration(milliseconds: 1000), bounce: 1.0), (duration: const Duration(milliseconds: 2000), bounce: 0.0), (duration: const Duration(milliseconds: 2000), bounce: 0.3), (duration: const Duration(milliseconds: 2000), bounce: 0.8), (duration: const Duration(milliseconds: 2000), bounce: 1.0), ]; for (final testCase in testCases) { SpringDescription springDesc = SpringDescription.withDurationAndBounce( duration: testCase.duration, bounce: testCase.bounce, ); print( 'Duration: ${testCase.duration.inMilliseconds / 1000}, Bounce: ${testCase.bounce}, Mass: ${springDesc.mass}, Stiffness: ${springDesc.stiffness}, Damping: ${springDesc.damping}', ); } }); ``` Output: ``` Duration: 0.1, Bounce: 0.0, Mass: 1.0, Stiffness: 3947.8417604357423, Damping: 125.66370614359171 Duration: 0.1, Bounce: 0.3, Mass: 1.0, Stiffness: 3947.8417604357423, Damping: 87.9645943005142 Duration: 0.1, Bounce: 0.8, Mass: 1.0, Stiffness: 3947.8417604357423, Damping: 25.132741228718338 Duration: 0.1, Bounce: 1.0, Mass: 1.0, Stiffness: 3947.8417604357423, Damping: 0.0 Duration: 0.5, Bounce: 0.0, Mass: 1.0, Stiffness: 157.91367041742973, Damping: 25.132741228718345 Duration: 0.5, Bounce: 0.3, Mass: 1.0, Stiffness: 157.91367041742973, Damping: 17.59291886010284 Duration: 0.5, Bounce: 0.8, Mass: 1.0, Stiffness: 157.91367041742973, Damping: 5.026548245743668 Duration: 0.5, Bounce: 1.0, Mass: 1.0, Stiffness: 157.91367041742973, Damping: 0.0 Duration: 1.0, Bounce: 0.0, Mass: 1.0, Stiffness: 39.47841760435743, Damping: 12.566370614359172 Duration: 1.0, Bounce: 0.3, Mass: 1.0, Stiffness: 39.47841760435743, Damping: 8.79645943005142 Duration: 1.0, Bounce: 0.8, Mass: 1.0, Stiffness: 39.47841760435743, Damping: 2.513274122871834 Duration: 1.0, Bounce: 1.0, Mass: 1.0, Stiffness: 39.47841760435743, Damping: 0.0 Duration: 2.0, Bounce: 0.0, Mass: 1.0, Stiffness: 9.869604401089358, Damping: 6.283185307179586 Duration: 2.0, Bounce: 0.3, Mass: 1.0, Stiffness: 9.869604401089358, Damping: 4.39822971502571 Duration: 2.0, Bounce: 0.8, Mass: 1.0, Stiffness: 9.869604401089358, Damping: 1.256637061435917 Duration: 2.0, Bounce: 1.0, Mass: 1.0, Stiffness: 9.869604401089358, Damping: 0.0 ``` Swift: ```swift import SwiftUI import XCTest class SpringParameterTests: XCTestCase { func printSpringParameters(duration: Double, bounce: Double) { let spring = Spring(duration: duration, bounce: bounce) // Let SwiftUI do its thing print("Duration: \(duration), Bounce: \(bounce), Mass: \(spring.mass), Stiffness: \(spring.stiffness), Damping: \(spring.damping)") } func testParameterExtraction() { // Test a range of durations and bounces let durations: [Double] = [0.1, 0.5, 1.0, 2.0] let bounces: [Double] = [0.0, 0.3, 0.8, 1.0] for duration in durations { for bounce in bounces { printSpringParameters(duration: duration, bounce: bounce) } } } } ``` Output: ``` Duration: 0.1, Bounce: 0.0, Mass: 1.0, Stiffness: 3947.8417604357433, Damping: 125.66370614359172 Duration: 0.1, Bounce: 0.3, Mass: 1.0, Stiffness: 3947.841760435743, Damping: 87.96459430051421 Duration: 0.1, Bounce: 0.8, Mass: 1.0, Stiffness: 3947.8417604357423, Damping: 25.132741228718338 Duration: 0.1, Bounce: 1.0, Mass: 1.0, Stiffness: 3947.8417604357433, Damping: 0.0 Duration: 0.5, Bounce: 0.0, Mass: 1.0, Stiffness: 157.91367041742973, Damping: 25.132741228718345 Duration: 0.5, Bounce: 0.3, Mass: 1.0, Stiffness: 157.9136704174297, Damping: 17.59291886010284 Duration: 0.5, Bounce: 0.8, Mass: 1.0, Stiffness: 157.9136704174297, Damping: 5.026548245743668 Duration: 0.5, Bounce: 1.0, Mass: 1.0, Stiffness: 157.91367041742973, Damping: 0.0 Duration: 1.0, Bounce: 0.0, Mass: 1.0, Stiffness: 39.47841760435743, Damping: 12.566370614359172 Duration: 1.0, Bounce: 0.3, Mass: 1.0, Stiffness: 39.478417604357425, Damping: 8.79645943005142 Duration: 1.0, Bounce: 0.8, Mass: 1.0, Stiffness: 39.478417604357425, Damping: 2.513274122871834 Duration: 1.0, Bounce: 1.0, Mass: 1.0, Stiffness: 39.47841760435743, Damping: 0.0 Duration: 2.0, Bounce: 0.0, Mass: 1.0, Stiffness: 9.869604401089358, Damping: 6.283185307179586 Duration: 2.0, Bounce: 0.3, Mass: 1.0, Stiffness: 9.869604401089356, Damping: 4.39822971502571 Duration: 2.0, Bounce: 0.8, Mass: 1.0, Stiffness: 9.869604401089356, Damping: 1.256637061435917 Duration: 2.0, Bounce: 1.0, Mass: 1.0, Stiffness: 9.869604401089358, Damping: 0.0 ``` There are minor differences which should be rounding errors. </details> |
||
|
|
d452d04a07 |
#163840 - CupertinoButton cursor doesn't change to clickable on desktop (#164196)
<!-- Thanks for filing a pull request! Reviewers are typically assigned within a week of filing a request. To learn more about code review, see our documentation on Tree Hygiene: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md --> This PR addresses Issue number: 163840, where when hovering over a Cupertino button the mouse cursor wouldn't switch to clickable and there wasn't any option to configure it. Adds Mouse cursor to CupertinoButton, CupertinoButton.Filled and CupertinoButton.Tinted Fixes https://github.com/flutter/flutter/issues/163840 Part of https://github.com/flutter/flutter/issues/58192 Demo of the changes https://github.com/user-attachments/assets/2e5d874e-cdfe-44bf-9710-bbbde99be3f7 Code snippet showing new behavior ```dart import 'package:flutter/cupertino.dart'; void main() => runApp( // const Center(child: Text('Hello, world!', key: Key('title'), textDirection: TextDirection.ltr)), CupertinoApp( theme: const CupertinoThemeData( brightness: Brightness.light, ), home: Center( child: Column( spacing: 5.0, mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center, children: <Widget>[ CupertinoButton( onPressed: (){}, child: const Text('Default Cursor'), ), CupertinoButton( onPressed: (){}, mouseCursor: SystemMouseCursors.grab, child: const Text('Custom Cursor'), ), CupertinoButton.filled( onPressed: (){}, mouseCursor: SystemMouseCursors.copy, child: const Text('Custom Cursor 2'), ), CupertinoButton.tinted( onPressed: (){}, mouseCursor: SystemMouseCursors.help, child: const Text('Custom Cursor 2'), ), ], ) ), ), ); ``` *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 - [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: Tong Mu <dkwingsmt@users.noreply.github.com> Co-authored-by: Tirth <pateltirth454@gmail.com> Co-authored-by: Victor Sanni <victorsanniay@gmail.com> |
||
|
|
dbbfa2ff31 |
[Impeller] Workaround for mismatched transform in preroll vs paint for text frames. (#164931)
Fixes https://github.com/flutter/flutter/issues/164606 When we preroll the text frame, we record the scale/transform used to compute the size and subpixel position. Use this same size + transform for the subsequent paint so that it is not possible for it to mismatch. This is not really a fix for the underlying issue where the subpixel position may be mismatched. |
||
|
|
9e5906fc15 |
Roll Dart SDK from d70b123c77d4 to 2d5dfe32cf2e (#164948)
https://dart.googlesource.com/sdk.git/+log/d70b123c77d4115f332652c9bb21ac46a2456889..2d5dfe32cf2e6b3c3d6b396885502a5402b4fc72/
[2d5dfe3](https://dart.googlesource.com/sdk.git/+/2d5dfe32cf2e6b3c3d6b396885502a5402b4fc72)
[Version
3.8.0-171.0.dev](https://dart.googlesource.com/sdk.git/+/2d5dfe32cf2e6b3c3d6b396885502a5402b4fc72)
by Dart CI · 5 days ago
[3.8.0-171.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-171.0.dev)
[33286f9](https://dart.googlesource.com/sdk.git/+/33286f9cbb09885f4b40264ecd388a86d1aa436f)
[Roll Fuchsia SDK from 27.20250303.4.1 to
27.20250304.5.1](https://dart.googlesource.com/sdk.git/+/33286f9cbb09885f4b40264ecd388a86d1aa436f)
by DEPS Autoroller · 5 days ago
[d9b0213](https://dart.googlesource.com/sdk.git/+/d9b0213e69bba34fe57f8755a180a0ed4d6a32f8)
[CQ. Use null assert instead of type cast for declaredFragment, where
possible.](https://dart.googlesource.com/sdk.git/+/d9b0213e69bba34fe57f8755a180a0ed4d6a32f8)
by Konstantin Shcheglov · 5 days ago
[1335dfc](https://dart.googlesource.com/sdk.git/+/1335dfcb7103de5f40e48548e036de19f862658b)
[DAS: Consolidate containsAny
helper](https://dart.googlesource.com/sdk.git/+/1335dfcb7103de5f40e48548e036de19f862658b)
by Sam Rawlins · 5 days ago
[a296f24](https://dart.googlesource.com/sdk.git/+/a296f24193285858832eec4a0c4f449180239cdf)
[Elements. Deprecate
'augmented'.](https://dart.googlesource.com/sdk.git/+/a296f24193285858832eec4a0c4f449180239cdf)
by Konstantin Shcheglov · 5 days ago
[174f64f](https://dart.googlesource.com/sdk.git/+/174f64f4df27f9cacd6218f89e98f643b75a4136)
[Elements. Deprecate V1 element
visitors.](https://dart.googlesource.com/sdk.git/+/174f64f4df27f9cacd6218f89e98f643b75a4136)
by Konstantin Shcheglov · 5 days ago
[217ec28](https://dart.googlesource.com/sdk.git/+/217ec28ac9f2b610ebff28193fa47bfc318903be)
[Version
3.8.0-170.0.dev](https://dart.googlesource.com/sdk.git/+/217ec28ac9f2b610ebff28193fa47bfc318903be)
by Dart CI · 5 days ago
[3.8.0-170.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-170.0.dev)
[e4cd515](https://dart.googlesource.com/sdk.git/+/e4cd515df697343dd0a372efc24b9738dfef88fa)
[[dart2wasm] Optimize fused json+utf8 decoder
performance](https://dart.googlesource.com/sdk.git/+/e4cd515df697343dd0a372efc24b9738dfef88fa)
by Martin Kustermann · 5 days ago
[b2c5870](https://dart.googlesource.com/sdk.git/+/b2c5870a2e0fdbb55f541370af9252d8584b48ae)
[[analytics] sort lints in report
collection](https://dart.googlesource.com/sdk.git/+/b2c5870a2e0fdbb55f541370af9252d8584b48ae)
by pq · 5 days ago
[4ee4acc](https://dart.googlesource.com/sdk.git/+/4ee4acc93cbd4905b0115f5c5a8cc735ad0a8cd6)
[DAS: Tidy docs and API in
import_library.dart](https://dart.googlesource.com/sdk.git/+/4ee4acc93cbd4905b0115f5c5a8cc735ad0a8cd6)
by Sam Rawlins · 5 days ago
[9ccf69b](https://dart.googlesource.com/sdk.git/+/9ccf69b90c800c184f643e121140f73bcdd1674b)
[[ddc] Delete unsound null safety from
runtime](https://dart.googlesource.com/sdk.git/+/9ccf69b90c800c184f643e121140f73bcdd1674b)
by Nicholas Shahan · 5 days ago
[00c9992](https://dart.googlesource.com/sdk.git/+/00c99925fce71cc02c49230439ff7720c08f7876)
[[ddc] Delete unsound null safety from the
compiler](https://dart.googlesource.com/sdk.git/+/00c99925fce71cc02c49230439ff7720c08f7876)
by Nicholas Shahan · 5 days ago
[b8dbdda](https://dart.googlesource.com/sdk.git/+/b8dbdda316420113451976bf98dc82335293b6ee)
[[DAS] Fixes instance members completion on dart
docs](https://dart.googlesource.com/sdk.git/+/b8dbdda316420113451976bf98dc82335293b6ee)
by FMorschel · 5 days ago
[a9e37e2](https://dart.googlesource.com/sdk.git/+/a9e37e26449b38717f999d72aeb5b776dad20b27)
[[analyzer] Add warnings to test expectations rather than
ignoring.](https://dart.googlesource.com/sdk.git/+/a9e37e26449b38717f999d72aeb5b776dad20b27)
by Paul Berry · 5 days ago
[b70685e](https://dart.googlesource.com/sdk.git/+/b70685ed17b1fa521f1f8d4e5257f56fafe8a6b5)
[[vm, simarm64] Handle FFI
callbacks.](https://dart.googlesource.com/sdk.git/+/b70685ed17b1fa521f1f8d4e5257f56fafe8a6b5)
by Ryan Macnak · 5 days ago
[6eeba69](https://dart.googlesource.com/sdk.git/+/6eeba6924d8c5b9fc104f9d4358238f5f20ce499)
[Version
3.8.0-169.0.dev](https://dart.googlesource.com/sdk.git/+/6eeba6924d8c5b9fc104f9d4358238f5f20ce499)
by Dart CI · 5 days ago
[3.8.0-169.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-169.0.dev)
[34e54a4](https://dart.googlesource.com/sdk.git/+/34e54a466190b2fcfb607ee607c76635f5a301a0)
[[analysis_server] Support properties in line values behind a
flag](https://dart.googlesource.com/sdk.git/+/34e54a466190b2fcfb607ee607c76635f5a301a0)
by Danny Tuppeny · 5 days ago
[0865762](https://dart.googlesource.com/sdk.git/+/086576297b9003873b2c89518340603f43daccfa)
[Cleanup after element model
migration](https://dart.googlesource.com/sdk.git/+/086576297b9003873b2c89518340603f43daccfa)
by Keerti Parthasarathy · 5 days ago
[b251a6f](https://dart.googlesource.com/sdk.git/+/b251a6f8e459d35e83e4c2c1fa0755d512596d8f)
[Add a completion test to verify scoping
rules.](https://dart.googlesource.com/sdk.git/+/b251a6f8e459d35e83e4c2c1fa0755d512596d8f)
by Keerti Parthasarathy · 5 days ago
[199bc8f](https://dart.googlesource.com/sdk.git/+/199bc8f50edcd9c75145528c68d95c0e594ee085)
[[cfe] Fix some CFE
tests](https://dart.googlesource.com/sdk.git/+/199bc8f50edcd9c75145528c68d95c0e594ee085)
by Johnni Winther · 5 days ago
[ee32a22](https://dart.googlesource.com/sdk.git/+/ee32a22712b64006b98a3923ff77f4d9476e2f84)
[[gardening] Make standalone/regress_52715_test more
robust](https://dart.googlesource.com/sdk.git/+/ee32a22712b64006b98a3923ff77f4d9476e2f84)
by Martin Kustermann · 5 days ago
[7ac7948](https://dart.googlesource.com/sdk.git/+/7ac794883907304b9c7a31798d94b792e664e096)
[Version
3.8.0-168.0.dev](https://dart.googlesource.com/sdk.git/+/7ac794883907304b9c7a31798d94b792e664e096)
by Dart CI · 5 days ago
[3.8.0-168.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-168.0.dev)
[d3027d5](https://dart.googlesource.com/sdk.git/+/d3027d5ba440e0472d3859df60fd25c037b69db0)
[[gardening] Make new test work also in obfuscation
modified](https://dart.googlesource.com/sdk.git/+/d3027d5ba440e0472d3859df60fd25c037b69db0)
by Martin Kustermann · 6 days ago
[7f43b34](https://dart.googlesource.com/sdk.git/+/7f43b34b6b0e16077a65fb3593b339036cbc93b9)
[Adjust `hasObviousType` to include negated numeric
literals](https://dart.googlesource.com/sdk.git/+/7f43b34b6b0e16077a65fb3593b339036cbc93b9)
by Erik Ernst · 6 days ago
[16dc25b](https://dart.googlesource.com/sdk.git/+/16dc25bb4fad01043b001079931a065e67e3eb95)
[Version
3.8.0-167.0.dev](https://dart.googlesource.com/sdk.git/+/16dc25bb4fad01043b001079931a065e67e3eb95)
by Dart CI · 6 days ago
[3.8.0-167.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-167.0.dev)
[f702c93](https://dart.googlesource.com/sdk.git/+/f702c93b1ae96ad5c92caa483f33960c5df62f6f)
[[analysis server] Sort members more
consistant](https://dart.googlesource.com/sdk.git/+/f702c93b1ae96ad5c92caa483f33960c5df62f6f)
by Jens Johansen · 6 days ago
[d99a44e](https://dart.googlesource.com/sdk.git/+/d99a44eadca1f78c6c30d7a913ef11c91e6d647c)
[Version
3.8.0-166.0.dev](https://dart.googlesource.com/sdk.git/+/d99a44eadca1f78c6c30d7a913ef11c91e6d647c)
by Dart CI · 6 days ago
[3.8.0-166.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-166.0.dev)
[dfb20b1](https://dart.googlesource.com/sdk.git/+/dfb20b1522ea574daabd8ea460dc52e313ed2a74)
[Augment. Disable most element model, resolution, diagnoatics
tests.](https://dart.googlesource.com/sdk.git/+/dfb20b1522ea574daabd8ea460dc52e313ed2a74)
by Konstantin Shcheglov · 6 days ago
[a9a2eb1](https://dart.googlesource.com/sdk.git/+/a9a2eb1b7379bebde7ef6c03e7166c5e9db448b7)
[Version
3.8.0-165.0.dev](https://dart.googlesource.com/sdk.git/+/a9a2eb1b7379bebde7ef6c03e7166c5e9db448b7)
by Dart CI · 6 days ago
[3.8.0-165.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-165.0.dev)
[4967abb](https://dart.googlesource.com/sdk.git/+/4967abbb3a85b2ff7f27f0033cee2008eefdbd00)
[[cfe] Handle dot shorthand
invocations.](https://dart.googlesource.com/sdk.git/+/4967abbb3a85b2ff7f27f0033cee2008eefdbd00)
by Kallen Tu · 6 days ago
[7139b68](https://dart.googlesource.com/sdk.git/+/7139b68c690bb1fdabf0ab8007e9c191aaf2dcb3)
[[DEPS] Update firefox, d8, jsshell, and
jsc](https://dart.googlesource.com/sdk.git/+/7139b68c690bb1fdabf0ab8007e9c191aaf2dcb3)
by Srujan Gaddam · 6 days ago
[f7d62a5](https://dart.googlesource.com/sdk.git/+/f7d62a5ec6651808bdc6418721771e1ed8a2c773)
[[DAS] Fixes rename FieldFormalParameter outside
library](https://dart.googlesource.com/sdk.git/+/f7d62a5ec6651808bdc6418721771e1ed8a2c773)
by FMorschel · 6 days ago
[7382fe9](https://dart.googlesource.com/sdk.git/+/7382fe9d0abc8f9d1b2dd45d3dff00701b3a15e8)
[Remove legacy support from shared type analyzer and flow
analysis.](https://dart.googlesource.com/sdk.git/+/7382fe9d0abc8f9d1b2dd45d3dff00701b3a15e8)
by Paul Berry · 6 days ago
[aeb2581](https://dart.googlesource.com/sdk.git/+/aeb2581f30da0452b0fc101767bd86785ed5dbc0)
[[vm] Use toString when generating stacktrace in isolate error
handler](https://dart.googlesource.com/sdk.git/+/aeb2581f30da0452b0fc101767bd86785ed5dbc0)
by Mylo Fawcett · 6 days ago
[68eea5b](https://dart.googlesource.com/sdk.git/+/68eea5bb13c060b25b6c53ef27436ba30ba9210c)
[[analyzer] Add Fragment.offset
getter.](https://dart.googlesource.com/sdk.git/+/68eea5bb13c060b25b6c53ef27436ba30ba9210c)
by Paul Berry · 6 days ago
[9ee4414](https://dart.googlesource.com/sdk.git/+/9ee441453668d37bf379365015130efec4cf634f)
[[analysis_server] Add a diagnostic page to stream the analysis
PerformanceLog](https://dart.googlesource.com/sdk.git/+/9ee441453668d37bf379365015130efec4cf634f)
by Danny Tuppeny · 6 days ago
[fe6f87f](https://dart.googlesource.com/sdk.git/+/fe6f87f1370925450b6a8dc1be686bcbd143515b)
[[analyzer] Fix dead code reporting in property access and
is/as.](https://dart.googlesource.com/sdk.git/+/fe6f87f1370925450b6a8dc1be686bcbd143515b)
by Paul Berry · 6 days ago
[24f9911](https://dart.googlesource.com/sdk.git/+/24f991115357bc79c6b70e79de70e9beff410371)
[Version
3.8.0-164.0.dev](https://dart.googlesource.com/sdk.git/+/24f991115357bc79c6b70e79de70e9beff410371)
by Dart CI · 6 days ago
[3.8.0-164.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-164.0.dev)
[29c24db](https://dart.googlesource.com/sdk.git/+/29c24dbe2728ec7f3a2895a51ddb8aa0f2fb7d23)
[[analyzer] Annotate experimental and deprecated APIs in api.txt
file](https://dart.googlesource.com/sdk.git/+/29c24dbe2728ec7f3a2895a51ddb8aa0f2fb7d23)
by Paul Berry · 6 days ago
[7661785](https://dart.googlesource.com/sdk.git/+/76617858bd257a5357c8f69ff3d6a95ccb9fad00)
[Roll Clang from 84af3ee5124d to
0454dd8c48cd](https://dart.googlesource.com/sdk.git/+/76617858bd257a5357c8f69ff3d6a95ccb9fad00)
by DEPS Autoroller · 6 days ago
[c19e5ce](https://dart.googlesource.com/sdk.git/+/c19e5ce2274acdddb7284aec1040df972c23a22c)
[Roll BoringSSL from 673e61fc215b to 5e73d0302c50 (1
revision)](https://dart.googlesource.com/sdk.git/+/c19e5ce2274acdddb7284aec1040df972c23a22c)
by DEPS Autoroller · 6 days ago
[e6baf6a](https://dart.googlesource.com/sdk.git/+/e6baf6a7b24494a25d513d8de146665db5919ac6)
[Roll gn from 3d0d3445f67d to
eabc4de478e6](https://dart.googlesource.com/sdk.git/+/e6baf6a7b24494a25d513d8de146665db5919ac6)
by DEPS Autoroller · 6 days ago
[d217d92](https://dart.googlesource.com/sdk.git/+/d217d92cbcc0fea1c5c0e33bf6ce8f2da557a143)
[Roll Fuchsia SDK from 27.20250228.4.1 to
27.20250303.4.1](https://dart.googlesource.com/sdk.git/+/d217d92cbcc0fea1c5c0e33bf6ce8f2da557a143)
by DEPS Autoroller · 6 days ago
[7fbec00](https://dart.googlesource.com/sdk.git/+/7fbec0089524bcfa070ed7df4d726ea4b4b3437b)
[[vm, simarm64] Handle FFI
callouts.](https://dart.googlesource.com/sdk.git/+/7fbec0089524bcfa070ed7df4d726ea4b4b3437b)
by Ryan Macnak · 6 days ago
[961aa05](https://dart.googlesource.com/sdk.git/+/961aa056b4ffebf2e0447aac6dfdf1690f5180e9)
[analyzer: Warn about doc-import combinators and
prefixes](https://dart.googlesource.com/sdk.git/+/961aa056b4ffebf2e0447aac6dfdf1690f5180e9)
by Sam Rawlins · 6 days ago
[f057e13](https://dart.googlesource.com/sdk.git/+/f057e13e31cc23f0ee9f9462c2010bce0f0e0335)
[[dart2wasm] Add BoxedInt immutable array cache to support
dart:convert.](https://dart.googlesource.com/sdk.git/+/f057e13e31cc23f0ee9f9462c2010bce0f0e0335)
by Nate Biggs · 6 days ago
[7d7af3b](https://dart.googlesource.com/sdk.git/+/7d7af3bf0971ac2a1077bc5dab43783bfedee7f6)
[[io] Remove assertion for socket timeout exception
contents.](https://dart.googlesource.com/sdk.git/+/7d7af3bf0971ac2a1077bc5dab43783bfedee7f6)
by Brian Quinlan · 6 days ago
[f2f09f1](https://dart.googlesource.com/sdk.git/+/f2f09f14239958786d9684e246b3c0a198abdc98)
[Version
3.8.0-163.0.dev](https://dart.googlesource.com/sdk.git/+/f2f09f14239958786d9684e246b3c0a198abdc98)
by Dart CI · 6 days ago
[3.8.0-163.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-163.0.dev)
[388f22a8](https://dart.googlesource.com/sdk.git/+/388f22a88bc809b5938f3f1a70bb760ab3c65e4a)
[analyzer: Migrate call sites of Substitution.fromPairs to
.fromPairs2](https://dart.googlesource.com/sdk.git/+/388f22a88bc809b5938f3f1a70bb760ab3c65e4a)
by Sam Rawlins · 6 days ago
[9349e0e](https://dart.googlesource.com/sdk.git/+/9349e0e72051ebdd507cee7b7ab5bb23791e3028)
[Version
3.8.0-162.0.dev](https://dart.googlesource.com/sdk.git/+/9349e0e72051ebdd507cee7b7ab5bb23791e3028)
by Dart CI · 6 days ago
[3.8.0-162.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.8.0-162.0.dev)
[
|
||
|
|
84b38b8dfc |
Make LLDB check a warning instead of a failure (#164828)
We added LLDB file in https://github.com/flutter/flutter/pull/164344. This adjusts it so if the LLDB file is missing it gives a warning rather than an error that fails the build. ## 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 |
||
|
|
4fef40c0f6 |
[Impeller] OpenGL MSAA for desktop/web devices. (#163939)
Add support for MSAA without the render to texture extension. This allows our CI goldens to run with anti aliasing. Fixes https://github.com/flutter/flutter/issues/158360 (again) |
||
|
|
1beba504d9 |
Roll Skia from 95d0fb365d73 to b9f4a95a5976 (6 revisions) (#164937)
https://skia.googlesource.com/skia.git/+log/95d0fb365d73..b9f4a95a5976 2025-03-10 jvanverth@google.com Revert "[graphite] Add TextAtlasManager::freeGpuResources()." 2025-03-10 bungeman@google.com Only call format_message when needed 2025-03-10 jvanverth@google.com [graphite] Add TextAtlasManager::freeGpuResources(). 2025-03-10 egdaniel@google.com Reland "Fix need query for copyOnWrite for dual-proxies Ganesh images." 2025-03-10 jvanverth@google.com [graphite] Possible fixes for ClipAtlasManager PGO crash. 2025-03-10 fmalita@google.com Suppress new tests on lottie-web perf bots 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,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
d212ca3cb3 |
increase Linux tool_integration_tests* subsharding (#164935)
The last subshard of Linux tool_integration_test is timing out again: https://ci.chromium.org/ui/p/flutter/builders/luci.flutter.prod/Linux%20tool_integration_tests_6_6 This increases the subsharding to get the tree to a healthy state <details> <summary> Pre-launch checklist </summary> - [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. </details> <!-- 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 |
||
|
|
95e10121a8 |
[Impeller] Fixes to YUV imports on Android, Incomplete read of pipeline cache data, missing enabled extensions. (#164744)
- Handle textures that require a YUV import but aren't an undefined format. - INCOMPLETE is actually a success case for the pipeline cache. CERTAIN drivers ALWAYS return incomplete, even when they wrote all the data. Probably an off by one or something like that... - Ensures Optional AndroidExtensions are enabled - Only creates a YUV conversion if necessary |
||
|
|
b2a4a05683 |
[skwasm] Dynamic Threading (#164748)
This switches skwasm over from the emscripten pthreads implementation to emscripten's "wasm workers" threading implementation. The pthreads implementation simply will not run at all in a non-crossOriginIsolated context, but the wasm workers implementation only fails if we actually attempt to spawn a thread. This means we can actually choose whether to use a single-threaded or multi-threaded strategy at runtime, which means we don't have to build two variants of skwasm for single- vs multi-threaded. |
||
|
|
d6c4153332 |
Roll Fuchsia Linux SDK from U-zlyIZrZRbr9I6gv... to ngvNj-Ffcrgs_jPdQ... (#164926)
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 |
||
|
|
faba665f8e |
Create 10_google3_bug.yml (#163788)
attempting to recreate this template with the right name and fixes after the revert <!-- 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 --> *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 - [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 |
||
|
|
cd433d4d36 |
Align nav bar bottom transition with large title animation (#162097)
Makes the bottom widget sync up with the large title in hero transitions between nav bars. ## Before https://github.com/user-attachments/assets/3f8c67c3-20c2-4751-b29b-7db8d3f3409f ## After https://github.com/user-attachments/assets/5e4c966f-1818-4851-87a1-0bf613ebda0b ## Native searchable-to-searchable: https://github.com/user-attachments/assets/56cf93e0-e529-4ca8-9f49-4e40f710e5ed ## Flutter searchable-to-searchable: https://github.com/user-attachments/assets/a98d9f53-8d4b-44cf-afa9-541751c21172 Fixes [CupertinoSliverNavigationBar/CupertinoNavigationBar bottom is not displayed during nav bar flying hero transitions](https://github.com/flutter/flutter/issues/162203) ## 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]. - [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 |
||
|
|
ffaec10986 |
Roll Skia from 4ac86f17f2d4 to 95d0fb365d73 (3 revisions) (#164917)
https://skia.googlesource.com/skia.git/+log/4ac86f17f2d4..95d0fb365d73 2025-03-10 lukasza@chromium.org [rust png] Stop supporting old `png` 0.17 versions. 2025-03-10 kjlubick@google.com Remove legacy mismatched blit code 2025-03-10 tingshao@microsoft.com Move definition of SkSVGDOM::MakeFromStream to cpp file 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,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
b16430b2fd |
[macOS] Enable Impeller by default on macOS. (#164572)
Enables impeller by default on macOS devices. An opt out can still be configured by passing --no-enable-impeller or using the FLTEnableImpeller / NO setting in the Info.plist. |
||
|
|
43ca28b8e8 |
Roll Packages from 4c5a7ed11ea1 to 464cea53002e (5 revisions) (#164904)
|
||
|
|
082497087c |
Roll Skia from f17d37ee0ac6 to 4ac86f17f2d4 (1 revision) (#164893)
https://skia.googlesource.com/skia.git/+log/f17d37ee0ac6..4ac86f17f2d4 2025-03-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 82fb5f1d2123 to a04b51ef7139 (3 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,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
cb74735412 |
Roll Skia from 0f53870c7449 to f17d37ee0ac6 (1 revision) (#164887)
https://skia.googlesource.com/skia.git/+log/0f53870c7449..f17d37ee0ac6 2025-03-09 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from 0cdbc7814e59 to 6c2737be88ac (13 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,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
93c8ed0775 |
Roll Fuchsia Linux SDK from 6tAcm4hdtXPE55GJP... to U-zlyIZrZRbr9I6gv... (#164868)
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 |
||
|
|
27788051c4 |
Roll Skia from 345dc2d05dcd to 0f53870c7449 (1 revision) (#164865)
https://skia.googlesource.com/skia.git/+log/345dc2d05dcd..0f53870c7449 2025-03-09 skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com Update SKP version 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,danieldilan@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md |
||
|
|
b30fe22b98 |
Roll Skia from 916caa2f0102 to 345dc2d05dcd (1 revision) (#164843)
https://skia.googlesource.com/skia.git/+log/916caa2f0102..345dc2d05dcd 2025-03-08 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from ef26b90ad02e to 82fb5f1d2123 (21 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 |
||
|
|
95aee5b6b8 |
Roll Fuchsia Linux SDK from ixl5bKWCqsRiYGvps... to 6tAcm4hdtXPE55GJP... (#164838)
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 |
||
|
|
99d21c80d4 |
Roll Skia from b29851b2ada6 to 916caa2f0102 (1 revision) (#164835)
https://skia.googlesource.com/skia.git/+log/b29851b2ada6..916caa2f0102 2025-03-07 egdaniel@google.com Revert "Fix need query for copyOnWrite for dual-proxies Ganesh images." 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 |
||
|
|
a7e276a20d |
[Impeller] add capability check for extended range formats. (#164817)
Fixes https://github.com/flutter/flutter/issues/164794 We support devices that do not support XR formats. If we try to decode to an XR format this will fail at runtime. |
||
|
|
6d6d7914f9 |
Added calendar delegate to support custom calendar systems (#161874)
Added `CalendarDelegate` class that supports plugging in custom calendar logics other than Gregorian Calendar System. Here is an example implementation for Nepali(Bikram Sambat) Calendar System: https://github.com/sarbagyastha/nepali_date_picker/blob/m3/lib/src/nepali_calendar_delegate.dart Demo using the `NepaliDatePickerDelegate`: https://date.sarbagyastha.com.np/ Fixes https://github.com/flutter/flutter/issues/77531, https://github.com/flutter/flutter/issues/161873 ## Pre-launch Checklist - [X] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. --------- Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com> |
||
|
|
83781ae65c |
RoundSuperellipse algorithm v3: Ultrawideband heuristic formula (#164755)
This PR revises the algorithm for RoundSuperellipses, replacing the current "max ratio" approximation with an algorithm that works for ratios from 2.0 to infinity. The previous "max ratio" approximation, which replaces the middle of edges with straight lines when the ratio is above 2.3, turns out to produce results too close to classic RRects. After reexamining the shapes and more calculation, I discovered that the max-ratio approximation is flawed. Even squircles with with really high ratios (~100) have a significant part of the edges that must not be approximated by straight lines. The new version is much closer to native. ### Comparison Native: (Notice the long wedgy gap at the end of curves) <img src="https://github.com/user-attachments/assets/61b60191-7d45-4c49-9e09-b0422243cd8c" width="400"/> Before PR: (Notice the short wedgy gap at the end of curves) <img src="https://github.com/user-attachments/assets/15ea374b-4b16-4187-aaa4-94f432fbb61e" width="400"/> After PR: <img src="https://github.com/user-attachments/assets/973ef4d1-7c26-44a9-b45e-10d109d5618b" width="400"/> Another example (after PR). Even though the rectangular RSE has ratios of around 4, there are still curvature near the middle section of edges, which can be identified with the help of antialias pixels. <img width="838" alt="image" src="https://github.com/user-attachments/assets/5078d098-c582-48a8-81e5-615909def675" /> ### Details I found that `n` has really good linearity towards larger ratios. <img width="844" alt="image" src="https://github.com/user-attachments/assets/73e99e45-a0f0-450b-8e2b-f6fd97082958" /> I also found a good candidate for the precomputed unknown (called `k_xJ`), which has a smooth curve at the beginning and almost straight line towards larger `n`, removing the need to cap the scope of application of the formula. <img width="1203" alt="image" src="https://github.com/user-attachments/assets/67664898-2dbd-4f00-a9ba-d76030cf3742" /> The algorithm for paths are also updated in a similar way and approximated the Bezier factors with heuristic formulae for bigger `n`s. I've also verified that the path deviates from the geometry by no more than 0.01% over the range of n [15, 100] Theoretically removing "stretch" should simplify the algorithms. Unfortunately I had to spend more lines to process cases of zero radii, which were conveniently handled by stretches. ## 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 |
||
|
|
3f90143391 |
Merge CHANGELOG for 3.29.1 stable release (#164743)
Merges CHANGELOG from stable to master for 3.29.1 release. Note that I did reformat the candidate branch `CHANGELOG` since it appeared abnormal to me (https://github.com/flutter/flutter/blob/flutter-3.29-candidate.0/CHANGELOG.md, the 3.29 changes section and the 3.29.1 changes section). I can submit a PR to fix that if that was the right move. Might have to cherrypick it though. ## 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. - [ ] 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 |
||
|
|
86c95e9e45 |
Add and link to Infra-Triage.md. (#164673)
Based on our discussions internally, making this available externally so we can link to it more easily. |
||
|
|
8b29bc6d8a |
Roll Skia from cbc7e99d6c2f to b29851b2ada6 (10 revisions) (#164812)
https://skia.googlesource.com/skia.git/+log/cbc7e99d6c2f..b29851b2ada6 2025-03-07 fmalita@google.com [skottie] Roll lottie-samples to include new regression test assets 2025-03-07 bungeman@google.com Remove and de-duplicate Android FontMgr streams 2025-03-07 egdaniel@google.com Fix need query for copyOnWrite for dual-proxies Ganesh images. 2025-03-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll shaders-base from 81fa6c51b85b to 536def9c5709 2025-03-07 kjlubick@google.com Update documentation about rolling into Chromium 2025-03-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from 7b44b80c0fac to 9ee87e7f230f 2025-03-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll debugger-app-base from cc91ae26ecef to bfb2f80c0482 2025-03-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll jsfiddle-base from 18808c894e65 to b07c254904bc 2025-03-07 lukasza@chromium.org [rust png] Update `png` from 0.17.15 to 0.18.0-rc 2025-03-07 michaelludwig@google.com [skif] Fix device-to-layer bounds mapping 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 |
||
|
|
74a8d79e14 |
[Impeller] dont redundantly set stencil reference on vulkan backend. (#164763)
Cache the last stencil reference in RenderPassVK. If the requested stencil reference is set to the same value, don't update it on the cmd buffer. Hypothetical performance improvement, but easy to do. |
||
|
|
711162887d |
content-aware-hash experiment update (#164803)
- output to annotations which can be used from a simple url - output summary to see if that's at all valuable |
||
|
|
b7bea22ab8 |
[Widget Inspector] Handle null exceptions calling renderObject (#163642)
Fixes https://github.com/flutter/devtools/issues/8905 Based on the stacktrace in https://github.com/flutter/devtools/issues/8905: * This call to `renderObject` can throw a null-exception: |
||
|
|
c0e6f90652 |
Use Python 3.12 to run the yapf formatter if no lower version is available (#164807)
Python 3.12 still provides the dependencies required by yapf (such as lib2to3) |
||
|
|
647e5a1407 |
Roll gn to 7a8aa3a08a13521336853a28c46537ec04338a2d (#164806)
Roll to tip-of-tree prior to testing Swift toolchain for macOS/iOS. Issue: https://github.com/flutter/flutter/issues/144791 ## Pre-launch Checklist - [X] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [X] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [X] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [X] I signed the [CLA]. - [X] I listed at least one issue that this PR fixes in the description above. - [X] I updated/added relevant documentation (doc comments with `///`). - [X] I added new tests to check the change I am making, or this PR is [test-exempt]. - [X] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [X] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md |
||
|
|
d14d2505f3 |
[Impeller] Store the TextureGLES cached framebuffer object as a reactor handle (#164761)
TextureGLES references may be owned by garbage collected objects. If a GC drops the last reference to a TextureGLES, then the TextureGLES destructor will run on a thread that does not have an EGL context. That will cause failures when the destructor tries to delete the cached FBO held by the TextureGLES. This PR replaces the raw FBO handle with a ReactorGLES untracked handle. The ReactorGLES will schedule deletion of the underlying FBO on a thread that can call GLES APIs. |
||
|
|
6b93cf93c1 |
Roll Skia from 32c1931117b8 to cbc7e99d6c2f (1 revision) (#164788)
https://skia.googlesource.com/skia.git/+log/32c1931117b8..cbc7e99d6c2f 2025-03-07 lukasza@chromium.org [rust png] Make implementation compatible with 0.17.6 and 0.18.0-rc. 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 |
||
|
|
1b14b0c11a |
Roll Packages from fc9d5ca9ceaa to 4c5a7ed11ea1 (4 revisions) (#164785)
|
||
|
|
d9f48174fc |
Roll Skia from 79f8af105a61 to 32c1931117b8 (1 revision) (#164782)
https://skia.googlesource.com/skia.git/+log/79f8af105a61..32c1931117b8 2025-03-07 kjlubick@google.com Remove staging flag around DawnTextureInfo 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 |
||
|
|
e190868b71 |
Roll Fuchsia Linux SDK from fhm5z889sA5T1AQao... to ixl5bKWCqsRiYGvps... (#164780)
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 |
||
|
|
7ab81e095e |
Roll Skia from 181d81920670 to 79f8af105a61 (1 revision) (#164770)
https://skia.googlesource.com/skia.git/+log/181d81920670..79f8af105a61 2025-03-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 9bdc6763a131 to 0cdbc7814e59 (7 revisions) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/skia-flutter-autoroll Please CC 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 |
||
|
|
cd337fd310 |
Roll Skia from cc74d34e7e68 to 181d81920670 (1 revision) (#164766)
https://skia.googlesource.com/skia.git/+log/cc74d34e7e68..181d81920670 2025-03-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 95322781656f to ef26b90ad02e (17 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 |
||
|
|
f1090285df |
Clip layers reduce rrects and paths to simpler shapes when possible (#164693)
Flutter code can pass clips in the widget tree down as Path objects even if they were originally simpler shapes. We now catch those simplifications in the clip_*_layer code and perform reduced operations in their place. |
||
|
|
a45d325bad |
[Impeller] test empty snapshot and allocation failure. (#164668)
Speculative fix for https://github.com/flutter/flutter/issues/164628 If our render target allocation failed, we need to bail out of toImage so that we don't crash. Adds a test that simulates this by asking for a 0x0 texture. |
||
|
|
dadb05cf8e |
Roll Skia from 263308ea4386 to cc74d34e7e68 (2 revisions) (#164746)
https://skia.googlesource.com/skia.git/+log/263308ea4386..cc74d34e7e68 2025-03-06 bungeman@google.com Use SkTypefaceID instead of uint32_t 2025-03-06 bungeman@google.com Use SkGlyphID instead of uint16_t 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 |
||
|
|
e0b9869468 |
Adds aria-controls support (#163894)
<!-- 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 --> adding a new property in semantics properties called controlsVisibilityOfNodes, where developer can assign SemanticsProperties.identifier of other nodes to indicates which nodes' visibilities this node controls fixes https://github.com/flutter/flutter/issues/162125 ## 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 |