Skip to content

Commit 3247960

Browse files
authored
Merge pull request #43 from maxiee/stateful_dispose
add dispose to StatefulWidget
2 parents 2c58643 + 6f26a61 commit 3247960

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

lib/src/widgets/framework.dart

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,8 @@ class $State$bridge<T extends StatefulWidget> extends State<T> with $Bridge<Stat
364364
])),
365365
'initState': BridgeMethodDef(
366366
BridgeFunctionDef(returns: BridgeTypeAnnotation(BridgeTypeRef.type(RuntimeTypes.voidType)))),
367+
'dispose': BridgeMethodDef(
368+
BridgeFunctionDef(returns: BridgeTypeAnnotation(BridgeTypeRef.type(RuntimeTypes.voidType)))),
367369
'build': BridgeMethodDef(BridgeFunctionDef(
368370
returns: BridgeTypeAnnotation($Widget.$type),
369371
params: [BridgeParameter('context', BridgeTypeAnnotation($BuildContext.$type), false)])),
@@ -394,6 +396,11 @@ class $State$bridge<T extends StatefulWidget> extends State<T> with $Bridge<Stat
394396
super.initState();
395397
return null;
396398
});
399+
case 'dispose':
400+
return $Function((runtime, target, args) {
401+
super.dispose();
402+
return null;
403+
});
397404
case 'widget':
398405
if (super.widget is $Instance) {
399406
return super.widget as $Instance;
@@ -413,6 +420,10 @@ class $State$bridge<T extends StatefulWidget> extends State<T> with $Bridge<Stat
413420
// ignore: must_call_super
414421
void initState() => $_invoke('initState', []);
415422

423+
@override
424+
// ignore: must_call_super
425+
void dispose() => $_invoke('dispose', []);
426+
416427
@override
417428
Widget build(BuildContext context) => $_invoke('build', [$BuildContext.wrap(context)]);
418429

0 commit comments

Comments
 (0)