feat(mobile): Library page rework (album sorting, favorites) ()

* Add album sorting

* Change AppBar to match photos page behaviour

* Add buttons

* First crude implementation of the favorites page

* Clean up

* Add favorite button

* i18n

* Add star indicator to thumbnail

* Add favorite logic to separate provider and fix favorite behavior in album

* Review feedback (Add isFavorite variable)

* dev: style buttons

* dev: styled drop down button

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
This commit is contained in:
Matthias Rupp 2023-02-05 04:25:11 +01:00 committed by GitHub
parent 0048662182
commit bb0b2a1f53
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 478 additions and 56 deletions
mobile/lib/routing

View file

@ -77,6 +77,10 @@ class _$AppRouter extends RootStackRouter {
isSharedAlbum: args.isSharedAlbum,
initialAssets: args.initialAssets));
},
FavoritesRoute.name: (routeData) {
return MaterialPageX<dynamic>(
routeData: routeData, child: const FavoritesPage());
},
AssetSelectionRoute.name: (routeData) {
return CustomPage<AssetSelectionPageResult?>(
routeData: routeData,
@ -197,6 +201,8 @@ class _$AppRouter extends RootStackRouter {
path: '/search-result-page', guards: [authGuard]),
RouteConfig(CreateAlbumRoute.name,
path: '/create-album-page', guards: [authGuard]),
RouteConfig(FavoritesRoute.name,
path: '/favorites-page', guards: [authGuard]),
RouteConfig(AssetSelectionRoute.name,
path: '/asset-selection-page', guards: [authGuard]),
RouteConfig(SelectUserForSharingRoute.name,
@ -386,6 +392,14 @@ class CreateAlbumRouteArgs {
}
}
/// generated route for
/// [FavoritesPage]
class FavoritesRoute extends PageRouteInfo<void> {
const FavoritesRoute() : super(FavoritesRoute.name, path: '/favorites-page');
static const String name = 'FavoritesRoute';
}
/// generated route for
/// [AssetSelectionPage]
class AssetSelectionRoute extends PageRouteInfo<void> {