From bff91628586129359af1619d5ad98b211a6cfda5 Mon Sep 17 00:00:00 2001 From: Vishesh Handa Date: Thu, 4 Feb 2021 17:23:32 +0100 Subject: [PATCH] RepoList: Use a better curve This makes the entire animation look so much better. --- lib/widgets/app_drawer.dart | 10 ++++++++-- lib/widgets/app_drawer_header.dart | 9 +++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/lib/widgets/app_drawer.dart b/lib/widgets/app_drawer.dart index 4eb8db8f..6be8b0a1 100644 --- a/lib/widgets/app_drawer.dart +++ b/lib/widgets/app_drawer.dart @@ -40,8 +40,14 @@ class _AppDrawerState extends State AnimationController(duration: 250.milliseconds, vsync: this); slideAnimation = Tween(begin: const Offset(0.0, -0.5), end: Offset.zero) - .animate(animController); - sizeAnimation = Tween(begin: 0.0, end: 1.0).animate(animController); + .animate(CurvedAnimation( + parent: animController, + curve: standardEasing, + )); + sizeAnimation = Tween(begin: 0.0, end: 1.0).animate(CurvedAnimation( + parent: animController, + curve: standardEasing, + )); } @override diff --git a/lib/widgets/app_drawer_header.dart b/lib/widgets/app_drawer_header.dart index 5b864e30..b2acc6e5 100644 --- a/lib/widgets/app_drawer_header.dart +++ b/lib/widgets/app_drawer_header.dart @@ -91,6 +91,7 @@ class _CurrentRepo extends StatefulWidget { class __CurrentRepoState extends State<_CurrentRepo> with SingleTickerProviderStateMixin { + Animation _animation; AnimationController controller; @override @@ -98,6 +99,10 @@ class __CurrentRepoState extends State<_CurrentRepo> super.initState(); controller = AnimationController(duration: 250.milliseconds, vsync: this); + _animation = Tween(begin: 0.0, end: 0.5).animate(CurvedAnimation( + parent: controller, + curve: Curves.linear, + )); } @override @@ -122,7 +127,7 @@ class __CurrentRepoState extends State<_CurrentRepo> crossAxisAlignment: CrossAxisAlignment.start, ), RotationTransition( - turns: Tween(begin: 0.0, end: 0.5).animate(controller), + turns: _animation, child: IconButton( icon: const FaIcon(FontAwesomeIcons.angleDown), onPressed: _pressed, @@ -142,7 +147,7 @@ class __CurrentRepoState extends State<_CurrentRepo> void _pressed() { if (controller.isCompleted) { - controller.reverse(from: 0.0); + controller.reverse(from: 1.0); } else { controller.forward(from: 0.0); }