davidhicks980 c2c183387e
[material/menu_anchor.dart] Remove _MenuAnchorState from parent when disposed. (#149586)
`_MenuAnchorState` now removes itself from its parent regardless of whether `_MenuAnchorState._isOpen` is true.

Before, _MenuAnchorState would only detach itself when `_MenuAnchorState._isOpen == true`. This led to _MenuAnchorState being retained until an anchor's parent was disposed.

Before:

https://github.com/flutter/flutter/assets/59215665/48f1617a-a3d0-49ab-a767-f41e3a30ea41

After:

https://github.com/flutter/flutter/assets/59215665/31312bb6-49ec-4083-b8de-e9ae2a42a8b3

Fixes https://github.com/flutter/flutter/issues/149584

I was a bit unsure what the best way of testing this change would be, and wanted feedback from the Flutter team. Is there a way for us to view at the instance count of `_MenuAnchorState`, or expose `_MenuAnchorState._anchorChildren.length` for testing?

- [] I added new tests to check the change I am making, or this PR is [test-exempt].
2024-06-20 18:10:05 +00:00
..
2024-06-17 17:26:08 +00:00
2024-06-17 19:49:05 +00:00
2024-06-17 19:49:05 +00:00