mirror of
https://github.com/flutter/flutter
synced 2024-10-06 00:09:53 +00:00
Fix memory leak in Overlay.wrap. (#145744)
This commit is contained in:
parent
158328921d
commit
8953ba658f
|
@ -863,6 +863,12 @@ class _WrappingOverlayState extends State<_WrappingOverlay> {
|
|||
_entry.markNeedsBuild();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_entry..remove()..dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Overlay(
|
||||
|
|
|
@ -1550,10 +1550,7 @@ void main() {
|
|||
});
|
||||
});
|
||||
|
||||
testWidgets('Overlay.wrap',
|
||||
// TODO(ksokolovskyi): dispose OverlayEntry, https://github.com/flutter/flutter/issues/145687 [leaks-to-clean]
|
||||
experimentalLeakTesting: LeakTesting.settings.withIgnoredAll(),
|
||||
(WidgetTester tester) async {
|
||||
testWidgets('Overlay.wrap', (WidgetTester tester) async {
|
||||
await tester.pumpWidget(
|
||||
Directionality(
|
||||
textDirection: TextDirection.ltr,
|
||||
|
@ -1585,10 +1582,7 @@ void main() {
|
|||
expect(tester.state(find.byType(Overlay)), same(overlayState));
|
||||
});
|
||||
|
||||
testWidgets('Overlay.wrap is sized by child in an unconstrained environment',
|
||||
// TODO(ksokolovskyi): dispose OverlayEntry, https://github.com/flutter/flutter/issues/145687 [leaks-to-clean]
|
||||
experimentalLeakTesting: LeakTesting.settings.withIgnoredAll(),
|
||||
(WidgetTester tester) async {
|
||||
testWidgets('Overlay.wrap is sized by child in an unconstrained environment', (WidgetTester tester) async {
|
||||
await tester.pumpWidget(
|
||||
Directionality(
|
||||
textDirection: TextDirection.ltr,
|
||||
|
|
Loading…
Reference in a new issue