`next_gen_ui_demo`: Dispose of old `AnimationController`s (#1852)

pull/1853/head
Brett Morgan 2 years ago committed by GitHub
parent 7100438182
commit 6c31477626
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -74,7 +74,17 @@ List<
typedef ColorCallback = void Function(Color colorSchemeSeed);
class _NextGenAppState extends State<NextGenApp> {
int step = 0;
int _step = 0;
int get step => _step;
set step(int i) {
_step = switch (i) {
(int a) when a < 0 => 0,
(int a) when a >= steps.length => steps.length - 1,
_ => i,
};
debugPrint('Step ${step + 1} of ${steps.length}');
}
Color? colorSchemeSeed;
@override
@ -107,8 +117,7 @@ class _NextGenAppState extends State<NextGenApp> {
child: const Icon(Icons.arrow_back),
onPressed: () {
setState(() {
if (step > 0) step--;
debugPrint('Step = $step');
step--;
});
},
),
@ -123,8 +132,7 @@ class _NextGenAppState extends State<NextGenApp> {
child: const Icon(Icons.arrow_forward),
onPressed: () {
setState(() {
if (step + 1 < steps.length) step++;
debugPrint('Step = $step');
step++;
});
},
),
@ -140,7 +148,6 @@ class _NextGenAppState extends State<NextGenApp> {
onPressed: () {
setState(() {
step = 0;
debugPrint('Step = $step');
});
},
),

@ -255,7 +255,15 @@ class _StartBtnState extends State<_StartBtn> {
),
],
)
.animate(autoPlay: false, onInit: (c) => _btnAnim = c)
.animate(
autoPlay: false,
onInit: (c) {
if (_btnAnim != null && _btnAnim != c) {
_btnAnim?.dispose();
}
_btnAnim = c;
},
)
.shimmer(duration: .7.seconds, color: Colors.black),
)
.animate()

@ -261,7 +261,15 @@ class _StartBtnState extends State<_StartBtn> {
),
],
)
.animate(autoPlay: false, onInit: (c) => _btnAnim = c)
.animate(
autoPlay: false,
onInit: (c) {
if (_btnAnim != null && _btnAnim != c) {
_btnAnim?.dispose();
}
_btnAnim = c;
},
)
.shimmer(duration: .7.seconds, color: Colors.black),
)
.animate()

@ -261,7 +261,15 @@ class _StartBtnState extends State<_StartBtn> {
),
],
)
.animate(autoPlay: false, onInit: (c) => _btnAnim = c)
.animate(
autoPlay: false,
onInit: (c) {
if (_btnAnim != null && _btnAnim != c) {
_btnAnim?.dispose();
}
_btnAnim = c;
},
)
.shimmer(duration: .7.seconds, color: Colors.black),
)
.animate()

@ -287,7 +287,15 @@ class _StartBtnState extends State<_StartBtn> {
),
],
)
.animate(autoPlay: false, onInit: (c) => _btnAnim = c)
.animate(
autoPlay: false,
onInit: (c) {
if (_btnAnim != null && _btnAnim != c) {
_btnAnim?.dispose();
}
_btnAnim = c;
},
)
.shimmer(duration: .7.seconds, color: Colors.black),
)
.animate()

@ -289,7 +289,15 @@ class _StartBtnState extends State<_StartBtn> {
),
],
)
.animate(autoPlay: false, onInit: (c) => _btnAnim = c)
.animate(
autoPlay: false,
onInit: (c) {
if (_btnAnim != null && _btnAnim != c) {
_btnAnim?.dispose();
}
_btnAnim = c;
},
)
.shimmer(duration: .7.seconds, color: Colors.black),
)
.animate()

@ -289,7 +289,15 @@ class _StartBtnState extends State<_StartBtn> {
),
],
)
.animate(autoPlay: false, onInit: (c) => _btnAnim = c)
.animate(
autoPlay: false,
onInit: (c) {
if (_btnAnim != null && _btnAnim != c) {
_btnAnim?.dispose();
}
_btnAnim = c;
},
)
.shimmer(duration: .7.seconds, color: Colors.black),
)
.animate()

Loading…
Cancel
Save