diff --git a/lib/model/collection_filters.dart b/lib/model/collection_filters.dart index d334d615e..940f091a0 100644 --- a/lib/model/collection_filters.dart +++ b/lib/model/collection_filters.dart @@ -29,6 +29,11 @@ class VideoFilter extends CollectionFilter { bool filter(ImageEntry entry) => entry.isVideo; } +class GifFilter extends CollectionFilter { + @override + bool filter(ImageEntry entry) => entry.isGif; +} + class MetadataFilter extends CollectionFilter { final String value; diff --git a/lib/widgets/album/all_collection_drawer.dart b/lib/widgets/album/all_collection_drawer.dart index 2fc52323e..5c8f9ab75 100644 --- a/lib/widgets/album/all_collection_drawer.dart +++ b/lib/widgets/album/all_collection_drawer.dart @@ -84,6 +84,12 @@ class _AllCollectionDrawerState extends State { ), ); + final gifEntry = _FilteredCollectionNavTile( + collection: collection, + leading: const Icon(OMIcons.gif), + title: 'GIFs', + filter: GifFilter(), + ); final videoEntry = _FilteredCollectionNavTile( collection: collection, leading: const Icon(OMIcons.videoLibrary), @@ -139,6 +145,7 @@ class _AllCollectionDrawerState extends State { child: Column( children: [ header, + gifEntry, videoEntry, if (specialAlbums.isNotEmpty) ...[ const Divider(),