Adds cupertino picker semantics test#161768
Conversation
|
we can potentially solve this with childSemanticsDelegate, but it will be equally hacky. I think we need a better way to listen to child semantics subtree |
| // when [assembleSemanticsNode] is called. Thus, delay a frame to | ||
| // ensure the subtree has updated. | ||
| // | ||
| // TODO(chunhtai): needs a better way to listen to semantics subtree. |
There was a problem hiding this comment.
What would be the better way to do this? We should be careful with delaying things by a frame. This often leads to other problems...
There was a problem hiding this comment.
I don't have anything concrete yet. some ideas i have
- maybe semanticsnode can register change listener, this may lead to circular dependency though
- update semantics node from bottom up, this may lead to performance implication as we may calculate node that get throws a way at the end.
- use childSemanticsDelegate to create incomplete fragment with desired property, in this case, gets the label from child semantics and replace it with a incompletefragment with value set to the childSemantics.label.
There was a problem hiding this comment.
actually I think build from bottom up may be ok... let me try it
There was a problem hiding this comment.
no this is not going to work, the parentsemanticsclip has to be passed from ancestor to bottom. I imagine compute from bottom up will have to keep recalculating geometry
There was a problem hiding this comment.
If we really want to do a bottom up, we have to do the semantics update in three pass. 1. update parentdata.(topdown) 2, update geometry.(topdown) 3 builds semantics node(bottom up)
|
closing after discussing offline that we may need to update the semantics optimization pr to rebuild dirty semantics node from bottom up |
|
actually we should at least merge in the test |
7ce86d3 to
aba38d1
Compare
There was a problem hiding this comment.
Are the changes in this file still something you want to include in this PR?
There was a problem hiding this comment.
yes, i added new api so i can use in test
|
auto label is removed for flutter/flutter/161768, due to - The status or check suite Windows framework_tests_libraries has failed. Please fix the issues identified (or deflake) before re-applying this label. |
|
auto label is removed for flutter/flutter/161768, due to - The status or check suite Linux linux_host_engine has failed. Please fix the issues identified (or deflake) before re-applying this label. |
|
auto label is removed for flutter/flutter/161768, due to - The status or check suite Windows framework_tests_libraries has failed. Please fix the issues identified (or deflake) before re-applying this label. |
|
auto label is removed for flutter/flutter/161768, due to - The status or check suite Mac mac_ios_engine has failed. Please fix the issues identified (or deflake) before re-applying this label.
|
|
auto label is removed for flutter/flutter/161768, due to - The status or check suite Merge Queue Guard has failed. Please fix the issues identified (or deflake) before re-applying this label. |
Manual roll Flutter from b9e86a5 to b2f515f (42 revisions) Manual roll requested by [email protected] flutter/flutter@b9e86a5...b2f515f 2025-01-22 [email protected] Roll Dart to Version 3.8.0-24.0.dev (flutter/flutter#162035) 2025-01-22 [email protected] `const AnimationStyle` (flutter/flutter#160564) 2025-01-22 [email protected] Add piping and bringup nodes for `_vulkan` and `_opengles` suites. (flutter/flutter#162020) 2025-01-22 [email protected] [Impeller] Migrate unit tests off of Skia geometry classes (flutter/flutter#161855) 2025-01-22 [email protected] Experiment with a `files-changed.json` per PR (flutter/flutter#161788) 2025-01-22 [email protected] Move FlKeyboardManager and FlKeyboardHandler from FlView to FlEngine. (flutter/flutter#161925) 2025-01-22 [email protected] Roll Packages from e8f1f63 to 3d3ab7b (1 revision) (flutter/flutter#162019) 2025-01-22 [email protected] Adds cupertino picker semantics test (flutter/flutter#161768) 2025-01-22 [email protected] [web] Remove deprecated web-only APIs from dart:ui (flutter/flutter#161775) 2025-01-22 [email protected] fix: Add enabled property for search anchor named constructor (flutter/flutter#161468) 2025-01-22 [email protected] Roll pub packages (flutter/flutter#162015) 2025-01-22 [email protected] [web] Remove spam from test output (flutter/flutter#161774) 2025-01-22 [email protected] Match CupertinoPageTransitionsBuilder animation duration to CupertinoPageRoute (2) (flutter/flutter#161577) 2025-01-22 [email protected] Make `font-subset` a standalone `run_tests.py` variant. (flutter/flutter#162016) 2025-01-22 [email protected] Enabled provisioning updates and device registration during building xcarchive. (flutter/flutter#159622) 2025-01-22 [email protected] [web] Remove HTML from bots, test suites and e2e tests (flutter/flutter#161537) 2025-01-22 [email protected] Expand the `.ci.yaml` and `builder.json` linter (flutter/flutter#161991) 2025-01-22 [email protected] Fix incorrect [enabled] documentation (flutter/flutter#161650) 2025-01-22 [email protected] Add `windows_host_engine_test`. (flutter/flutter#161992) 2025-01-22 [email protected] Roll Dart to version Version 3.8.0-19.0.dev (flutter/flutter#161989) 2025-01-22 [email protected] Deprecate `ThemeData.indicatorColor` in favor of `TabBarThemeData.indicatorColor` (flutter/flutter#160024) 2025-01-22 [email protected] [Impeller] disable older xclipse gpu driver. (flutter/flutter#161981) 2025-01-22 [email protected] Merge changelog for 3.27.3 release (flutter/flutter#161977) 2025-01-21 [email protected] Remove FlKeyboardViewDelegate (flutter/flutter#161705) 2025-01-21 [email protected] Fix documentation of Flow.clipBehavior (flutter/flutter#161863) 2025-01-21 [email protected] [impeller] prevent PowerVR from using Vulkan backend. (flutter/flutter#161841) 2025-01-21 [email protected] [Impeller] backfilling TextContents unit tests (flutter/flutter#161625) 2025-01-21 [email protected] Do not handle Dart isolate messages if the isolate is being shut down (flutter/flutter#161824) 2025-01-21 [email protected] fix failing lint : findByPath requires a specific ordering of project evaluation in `aar_init_script.gradle` (flutter/flutter#159301) 2025-01-21 [email protected] Get `et` working for local web engine builds. (flutter/flutter#161825) 2025-01-21 [email protected] Mark Linux_pixel_7pro flavors_test unflaky (flutter/flutter#160994) 2025-01-21 [email protected] Marks Mac_mokey run_debug_test_android to be flaky (flutter/flutter#161656) 2025-01-21 [email protected] Don't crash flutter tool if Chrome is not available (flutter/flutter#154941) 2025-01-21 [email protected] Fix DropdownMenu icon and item icon misalignment (flutter/flutter#161717) 2025-01-21 [email protected] [native assets] Cleanup dead code 2 (flutter/flutter#161916) 2025-01-21 [email protected] Update `ListTile` test to prevent log dump and test error message. (flutter/flutter#161811) 2025-01-21 [email protected] Roll pub packages (flutter/flutter#161924) 2025-01-21 [email protected] Make `PipelineOwner` a `base` class (flutter/flutter#161789) 2025-01-20 [email protected] [native assets] Cleanup dead code (flutter/flutter#161913) 2025-01-20 [email protected] Roll Packages from f73cb00 to e8f1f63 (9 revisions) (flutter/flutter#161914) 2025-01-20 [email protected] [ flutter_tool ] Fix flakiness in doctor_test.dart (flutter/flutter#161917) 2025-01-19 [email protected] Update documentation on what display information is provided. (flutter/flutter#161785) If this roll has caused a breakage, revert this CL and stop the roller ...
Adds a test ## 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
) Manual roll Flutter from b9e86a5 to b2f515f (42 revisions) Manual roll requested by [email protected] flutter/flutter@b9e86a5...b2f515f 2025-01-22 [email protected] Roll Dart to Version 3.8.0-24.0.dev (flutter/flutter#162035) 2025-01-22 [email protected] `const AnimationStyle` (flutter/flutter#160564) 2025-01-22 [email protected] Add piping and bringup nodes for `_vulkan` and `_opengles` suites. (flutter/flutter#162020) 2025-01-22 [email protected] [Impeller] Migrate unit tests off of Skia geometry classes (flutter/flutter#161855) 2025-01-22 [email protected] Experiment with a `files-changed.json` per PR (flutter/flutter#161788) 2025-01-22 [email protected] Move FlKeyboardManager and FlKeyboardHandler from FlView to FlEngine. (flutter/flutter#161925) 2025-01-22 [email protected] Roll Packages from e8f1f63 to 3d3ab7b (1 revision) (flutter/flutter#162019) 2025-01-22 [email protected] Adds cupertino picker semantics test (flutter/flutter#161768) 2025-01-22 [email protected] [web] Remove deprecated web-only APIs from dart:ui (flutter/flutter#161775) 2025-01-22 [email protected] fix: Add enabled property for search anchor named constructor (flutter/flutter#161468) 2025-01-22 [email protected] Roll pub packages (flutter/flutter#162015) 2025-01-22 [email protected] [web] Remove spam from test output (flutter/flutter#161774) 2025-01-22 [email protected] Match CupertinoPageTransitionsBuilder animation duration to CupertinoPageRoute (2) (flutter/flutter#161577) 2025-01-22 [email protected] Make `font-subset` a standalone `run_tests.py` variant. (flutter/flutter#162016) 2025-01-22 [email protected] Enabled provisioning updates and device registration during building xcarchive. (flutter/flutter#159622) 2025-01-22 [email protected] [web] Remove HTML from bots, test suites and e2e tests (flutter/flutter#161537) 2025-01-22 [email protected] Expand the `.ci.yaml` and `builder.json` linter (flutter/flutter#161991) 2025-01-22 [email protected] Fix incorrect [enabled] documentation (flutter/flutter#161650) 2025-01-22 [email protected] Add `windows_host_engine_test`. (flutter/flutter#161992) 2025-01-22 [email protected] Roll Dart to version Version 3.8.0-19.0.dev (flutter/flutter#161989) 2025-01-22 [email protected] Deprecate `ThemeData.indicatorColor` in favor of `TabBarThemeData.indicatorColor` (flutter/flutter#160024) 2025-01-22 [email protected] [Impeller] disable older xclipse gpu driver. (flutter/flutter#161981) 2025-01-22 [email protected] Merge changelog for 3.27.3 release (flutter/flutter#161977) 2025-01-21 [email protected] Remove FlKeyboardViewDelegate (flutter/flutter#161705) 2025-01-21 [email protected] Fix documentation of Flow.clipBehavior (flutter/flutter#161863) 2025-01-21 [email protected] [impeller] prevent PowerVR from using Vulkan backend. (flutter/flutter#161841) 2025-01-21 [email protected] [Impeller] backfilling TextContents unit tests (flutter/flutter#161625) 2025-01-21 [email protected] Do not handle Dart isolate messages if the isolate is being shut down (flutter/flutter#161824) 2025-01-21 [email protected] fix failing lint : findByPath requires a specific ordering of project evaluation in `aar_init_script.gradle` (flutter/flutter#159301) 2025-01-21 [email protected] Get `et` working for local web engine builds. (flutter/flutter#161825) 2025-01-21 [email protected] Mark Linux_pixel_7pro flavors_test unflaky (flutter/flutter#160994) 2025-01-21 [email protected] Marks Mac_mokey run_debug_test_android to be flaky (flutter/flutter#161656) 2025-01-21 [email protected] Don't crash flutter tool if Chrome is not available (flutter/flutter#154941) 2025-01-21 [email protected] Fix DropdownMenu icon and item icon misalignment (flutter/flutter#161717) 2025-01-21 [email protected] [native assets] Cleanup dead code 2 (flutter/flutter#161916) 2025-01-21 [email protected] Update `ListTile` test to prevent log dump and test error message. (flutter/flutter#161811) 2025-01-21 [email protected] Roll pub packages (flutter/flutter#161924) 2025-01-21 [email protected] Make `PipelineOwner` a `base` class (flutter/flutter#161789) 2025-01-20 [email protected] [native assets] Cleanup dead code (flutter/flutter#161913) 2025-01-20 [email protected] Roll Packages from f73cb00 to e8f1f63 (9 revisions) (flutter/flutter#161914) 2025-01-20 [email protected] [ flutter_tool ] Fix flakiness in doctor_test.dart (flutter/flutter#161917) 2025-01-19 [email protected] Update documentation on what display information is provided. (flutter/flutter#161785) If this roll has caused a breakage, revert this CL and stop the roller ...
) Manual roll Flutter from b9e86a5 to b2f515f (42 revisions) Manual roll requested by [email protected] flutter/flutter@b9e86a5...b2f515f 2025-01-22 [email protected] Roll Dart to Version 3.8.0-24.0.dev (flutter/flutter#162035) 2025-01-22 [email protected] `const AnimationStyle` (flutter/flutter#160564) 2025-01-22 [email protected] Add piping and bringup nodes for `_vulkan` and `_opengles` suites. (flutter/flutter#162020) 2025-01-22 [email protected] [Impeller] Migrate unit tests off of Skia geometry classes (flutter/flutter#161855) 2025-01-22 [email protected] Experiment with a `files-changed.json` per PR (flutter/flutter#161788) 2025-01-22 [email protected] Move FlKeyboardManager and FlKeyboardHandler from FlView to FlEngine. (flutter/flutter#161925) 2025-01-22 [email protected] Roll Packages from e8f1f63 to 3d3ab7b (1 revision) (flutter/flutter#162019) 2025-01-22 [email protected] Adds cupertino picker semantics test (flutter/flutter#161768) 2025-01-22 [email protected] [web] Remove deprecated web-only APIs from dart:ui (flutter/flutter#161775) 2025-01-22 [email protected] fix: Add enabled property for search anchor named constructor (flutter/flutter#161468) 2025-01-22 [email protected] Roll pub packages (flutter/flutter#162015) 2025-01-22 [email protected] [web] Remove spam from test output (flutter/flutter#161774) 2025-01-22 [email protected] Match CupertinoPageTransitionsBuilder animation duration to CupertinoPageRoute (2) (flutter/flutter#161577) 2025-01-22 [email protected] Make `font-subset` a standalone `run_tests.py` variant. (flutter/flutter#162016) 2025-01-22 [email protected] Enabled provisioning updates and device registration during building xcarchive. (flutter/flutter#159622) 2025-01-22 [email protected] [web] Remove HTML from bots, test suites and e2e tests (flutter/flutter#161537) 2025-01-22 [email protected] Expand the `.ci.yaml` and `builder.json` linter (flutter/flutter#161991) 2025-01-22 [email protected] Fix incorrect [enabled] documentation (flutter/flutter#161650) 2025-01-22 [email protected] Add `windows_host_engine_test`. (flutter/flutter#161992) 2025-01-22 [email protected] Roll Dart to version Version 3.8.0-19.0.dev (flutter/flutter#161989) 2025-01-22 [email protected] Deprecate `ThemeData.indicatorColor` in favor of `TabBarThemeData.indicatorColor` (flutter/flutter#160024) 2025-01-22 [email protected] [Impeller] disable older xclipse gpu driver. (flutter/flutter#161981) 2025-01-22 [email protected] Merge changelog for 3.27.3 release (flutter/flutter#161977) 2025-01-21 [email protected] Remove FlKeyboardViewDelegate (flutter/flutter#161705) 2025-01-21 [email protected] Fix documentation of Flow.clipBehavior (flutter/flutter#161863) 2025-01-21 [email protected] [impeller] prevent PowerVR from using Vulkan backend. (flutter/flutter#161841) 2025-01-21 [email protected] [Impeller] backfilling TextContents unit tests (flutter/flutter#161625) 2025-01-21 [email protected] Do not handle Dart isolate messages if the isolate is being shut down (flutter/flutter#161824) 2025-01-21 [email protected] fix failing lint : findByPath requires a specific ordering of project evaluation in `aar_init_script.gradle` (flutter/flutter#159301) 2025-01-21 [email protected] Get `et` working for local web engine builds. (flutter/flutter#161825) 2025-01-21 [email protected] Mark Linux_pixel_7pro flavors_test unflaky (flutter/flutter#160994) 2025-01-21 [email protected] Marks Mac_mokey run_debug_test_android to be flaky (flutter/flutter#161656) 2025-01-21 [email protected] Don't crash flutter tool if Chrome is not available (flutter/flutter#154941) 2025-01-21 [email protected] Fix DropdownMenu icon and item icon misalignment (flutter/flutter#161717) 2025-01-21 [email protected] [native assets] Cleanup dead code 2 (flutter/flutter#161916) 2025-01-21 [email protected] Update `ListTile` test to prevent log dump and test error message. (flutter/flutter#161811) 2025-01-21 [email protected] Roll pub packages (flutter/flutter#161924) 2025-01-21 [email protected] Make `PipelineOwner` a `base` class (flutter/flutter#161789) 2025-01-20 [email protected] [native assets] Cleanup dead code (flutter/flutter#161913) 2025-01-20 [email protected] Roll Packages from f73cb00 to e8f1f63 (9 revisions) (flutter/flutter#161914) 2025-01-20 [email protected] [ flutter_tool ] Fix flakiness in doctor_test.dart (flutter/flutter#161917) 2025-01-19 [email protected] Update documentation on what display information is provided. (flutter/flutter#161785) If this roll has caused a breakage, revert this CL and stop the roller ...
Adds a test
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.