tree 920810f00043c2219d4c1a8b88fb97276573fa5b
parent 155f6dc7f99c90e6e1adf0636ba491cabaa62f8a
author auto-submit[bot] <98614782+auto-submit[bot]@users.noreply.github.com> 1742321927 +0000
committer GitHub <noreply@github.com> 1742321927 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJn2bkXCRC1aQ7uu5UhlAAAvw0QACSgrnVddxhkNLvAnbUzlr9z
 Sxg/Co/wI65VN7TtHXyP2yG0NYhZFs1m9BCs8+7ZK1nsBEiKih0UZxw3wYyqUAEI
 NuUVw6GS8otxMbdTZ8aqs0TuM8swqUBl7WaVifJCfoqahiIJ3xEs9j9EtvLrfKTk
 H+eSoWyvTCVhDQVzuY2sVqMSSsSZ3SRdlu7bLAGw786wIFNcY5ybZPmcBFuFBI/D
 1KAvFfSSkf9f1xBwWX0CqOhUJKOftPx4xY3Fjwkf0FYmZRYD3EspYWO87/5CZwaa
 Mc4sGUgxwBCw2JM0MF2qWgwB7UI3uhW9Igy5pOpH4jk+c3JAbEfvYRiMfNNhswlO
 Fw8AvptkALcxVAskgIC2n1mShf8CzxNx7e7/SwfRR9Z8E1SD1SxCe0jmZLuH616j
 RrNef0g+IJJ5EYzTgr//TMFSfhw7If1Ucqk4hQsxYMeDSGjtBTkqEmeyOiW5IBAR
 BmcMb2jt8OfA5NjoHmENKFCnCnwQeGWMFXMqVjiHieV+dvmIwMbJ+hQf3Kxvt/zT
 7eUHufcaHRKO5cS0RhCn69Lxizi7tWpLPYpcfI9sPh98sAfdGVinS4x3pSzN5YLV
 X4jzW37fdbZ2Lnw7X8vwYQ5VUe7iJMUJNcndaLaqUiI/hoWvS/tVYLW/ziysW9GM
 Yx3YFochGzy63q03UYmK
 =L8J+
 -----END PGP SIGNATURE-----
 

Reverts "[web][a11y]Delete _childContainerElement (#163662)" (#165416)

<!-- start_original_pr_link -->
Reverts: flutter/flutter#163662
<!-- end_original_pr_link -->
<!-- start_initiating_author -->
Initiated by: hannah-hyj
<!-- end_initiating_author -->
<!-- start_revert_reason -->
Reason for reverting: google 3 failure
<!-- end_revert_reason -->
<!-- start_original_pr_author -->
Original PR Author: hannah-hyj
<!-- end_original_pr_author -->

<!-- start_reviewers -->
Reviewed By: {yjbanov}
<!-- end_reviewers -->

<!-- start_revert_body -->
This change reverts the following previous change:
delete _childContainerElement , add the rect compensate and scrolling
adjustment to the children

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

<!-- end_revert_body -->

Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>