From 05917e08cc0f1cbfed1dcc87f5cab1147f255229 Mon Sep 17 00:00:00 2001 From: Thibault Deckers Date: Sun, 2 Aug 2020 18:05:49 +0900 Subject: [PATCH] filter bar: apply curve to removal animation --- lib/utils/durations.dart | 2 +- lib/widgets/album/filter_bar.dart | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/utils/durations.dart b/lib/utils/durations.dart index b397a0c2d..3bb1e1a4d 100644 --- a/lib/utils/durations.dart +++ b/lib/utils/durations.dart @@ -11,7 +11,7 @@ class Durations { // collection animations static const appBarTitleAnimation = Duration(milliseconds: 300); - static const filterBarRemovalAnimation = Duration(milliseconds: 200); + static const filterBarRemovalAnimation = Duration(milliseconds: 400); static const collectionOpOverlayAnimation = Duration(milliseconds: 300); static const collectionScalingBackgroundAnimation = Duration(milliseconds: 200); static const sectionHeaderAnimation = Duration(milliseconds: 200); diff --git a/lib/widgets/album/filter_bar.dart b/lib/widgets/album/filter_bar.dart index 53417a632..cfe71641c 100644 --- a/lib/widgets/album/filter_bar.dart +++ b/lib/widgets/album/filter_bar.dart @@ -45,7 +45,9 @@ class _FilterBarState extends State { listState.removeItem( index, animate - ? (context, animation) => FadeTransition( + ? (context, animation) { + animation = animation.drive(CurveTween(curve: Curves.easeInOutBack)); + return FadeTransition( opacity: animation, child: SizeTransition( axis: Axis.horizontal, @@ -55,7 +57,8 @@ class _FilterBarState extends State { child: _buildChip(filter), ), ), - ) + ); + } : (context, animation) => _buildChip(filter), duration: animate ? Durations.filterBarRemovalAnimation : Duration.zero, );