[mob][photos] Add animation to changes in recommended filter in appbar

This commit is contained in:
ashilkn
2024-10-21 15:44:53 +05:30
parent 8a130b52c2
commit fa076305df

View File

@@ -54,34 +54,40 @@ class _RecommendedFiltersState extends State<RecommendedFilters> {
padding: const EdgeInsets.only(bottom: 8),
child: SizedBox(
height: kFilterChipHeight,
child: ListView.builder(
itemBuilder: (context, index) {
final filter = _recommendations[index];
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 4),
child: filter is FaceFilter
? FaceFilterChip(
personId: filter.personId,
clusterId: filter.clusterId,
faceThumbnailFile: filter.faceFile,
name: filter.name(),
onTap: () {
_searchFilterDataProvider.applyFilters([filter]);
},
)
: GenericFilterChip(
label: filter.name(),
onTap: () {
_searchFilterDataProvider.applyFilters([filter]);
},
leadingIcon: filter.icon(),
),
);
},
clipBehavior: Clip.none,
scrollDirection: Axis.horizontal,
itemCount: _recommendations.length,
padding: const EdgeInsets.symmetric(horizontal: 4),
child: AnimatedSwitcher(
duration: const Duration(milliseconds: 500),
switchInCurve: Curves.easeInOutExpo,
switchOutCurve: Curves.easeInOutExpo,
child: ListView.builder(
key: ValueKey(_recommendations.length),
itemBuilder: (context, index) {
final filter = _recommendations[index];
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 4),
child: filter is FaceFilter
? FaceFilterChip(
personId: filter.personId,
clusterId: filter.clusterId,
faceThumbnailFile: filter.faceFile,
name: filter.name(),
onTap: () {
_searchFilterDataProvider.applyFilters([filter]);
},
)
: GenericFilterChip(
label: filter.name(),
onTap: () {
_searchFilterDataProvider.applyFilters([filter]);
},
leadingIcon: filter.icon(),
),
);
},
clipBehavior: Clip.none,
scrollDirection: Axis.horizontal,
itemCount: _recommendations.length,
padding: const EdgeInsets.symmetric(horizontal: 4),
),
),
),
);