mirror of
https://github.com/immich-app/immich
synced 2025-11-07 17:27:20 +00:00
feat(mobile): use app without storage permission (#5014)
* feat(mobile): use app without storage permission * address review feedback
This commit is contained in:
parent
8f3ed8ba8e
commit
5145c33ed4
14 changed files with 134 additions and 232 deletions
|
|
@ -2,10 +2,10 @@ import 'package:auto_route/auto_route.dart';
|
|||
import 'package:immich_mobile/modules/onboarding/providers/gallery_permission.provider.dart';
|
||||
import 'package:immich_mobile/routing/router.dart';
|
||||
|
||||
class GalleryPermissionGuard extends AutoRouteGuard {
|
||||
class BackupPermissionGuard extends AutoRouteGuard {
|
||||
final GalleryPermissionNotifier _permission;
|
||||
|
||||
GalleryPermissionGuard(this._permission);
|
||||
BackupPermissionGuard(this._permission);
|
||||
|
||||
@override
|
||||
void onNavigation(NavigationResolver resolver, StackRouter router) async {
|
||||
|
|
@ -13,7 +13,7 @@ class GalleryPermissionGuard extends AutoRouteGuard {
|
|||
if (p) {
|
||||
resolver.next(true);
|
||||
} else {
|
||||
router.replaceAll([const PermissionOnboardingRoute()]);
|
||||
router.push(const PermissionOnboardingRoute());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -44,7 +44,7 @@ import 'package:immich_mobile/modules/search/views/search_result_page.dart';
|
|||
import 'package:immich_mobile/modules/settings/views/settings_page.dart';
|
||||
import 'package:immich_mobile/routing/auth_guard.dart';
|
||||
import 'package:immich_mobile/routing/duplicate_guard.dart';
|
||||
import 'package:immich_mobile/routing/gallery_permission_guard.dart';
|
||||
import 'package:immich_mobile/routing/backup_permission_guard.dart';
|
||||
import 'package:immich_mobile/shared/models/asset.dart';
|
||||
import 'package:immich_mobile/shared/models/album.dart';
|
||||
import 'package:immich_mobile/shared/models/logger_message.model.dart';
|
||||
|
|
@ -77,7 +77,7 @@ part 'router.gr.dart';
|
|||
AutoRoute(page: ChangePasswordPage),
|
||||
CustomRoute(
|
||||
page: TabControllerPage,
|
||||
guards: [AuthGuard, DuplicateGuard, GalleryPermissionGuard],
|
||||
guards: [AuthGuard, DuplicateGuard],
|
||||
children: [
|
||||
AutoRoute(page: HomePage, guards: [AuthGuard, DuplicateGuard]),
|
||||
AutoRoute(page: SearchPage, guards: [AuthGuard, DuplicateGuard]),
|
||||
|
|
@ -88,10 +88,13 @@ part 'router.gr.dart';
|
|||
),
|
||||
AutoRoute(
|
||||
page: GalleryViewerPage,
|
||||
guards: [AuthGuard, DuplicateGuard, GalleryPermissionGuard],
|
||||
guards: [AuthGuard, DuplicateGuard],
|
||||
),
|
||||
AutoRoute(page: VideoViewerPage, guards: [AuthGuard, DuplicateGuard]),
|
||||
AutoRoute(page: BackupControllerPage, guards: [AuthGuard, DuplicateGuard]),
|
||||
AutoRoute(
|
||||
page: BackupControllerPage,
|
||||
guards: [AuthGuard, DuplicateGuard, BackupPermissionGuard],
|
||||
),
|
||||
AutoRoute(page: SearchResultPage, guards: [AuthGuard, DuplicateGuard]),
|
||||
AutoRoute(page: CuratedLocationPage, guards: [AuthGuard, DuplicateGuard]),
|
||||
AutoRoute(page: CreateAlbumPage, guards: [AuthGuard, DuplicateGuard]),
|
||||
|
|
@ -179,8 +182,8 @@ class AppRouter extends _$AppRouter {
|
|||
) : super(
|
||||
authGuard: AuthGuard(_apiService),
|
||||
duplicateGuard: DuplicateGuard(),
|
||||
galleryPermissionGuard:
|
||||
GalleryPermissionGuard(galleryPermissionNotifier),
|
||||
backupPermissionGuard:
|
||||
BackupPermissionGuard(galleryPermissionNotifier),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,14 +17,14 @@ class _$AppRouter extends RootStackRouter {
|
|||
GlobalKey<NavigatorState>? navigatorKey,
|
||||
required this.authGuard,
|
||||
required this.duplicateGuard,
|
||||
required this.galleryPermissionGuard,
|
||||
required this.backupPermissionGuard,
|
||||
}) : super(navigatorKey);
|
||||
|
||||
final AuthGuard authGuard;
|
||||
|
||||
final DuplicateGuard duplicateGuard;
|
||||
|
||||
final GalleryPermissionGuard galleryPermissionGuard;
|
||||
final BackupPermissionGuard backupPermissionGuard;
|
||||
|
||||
@override
|
||||
final Map<String, PageFactory> pagesMap = {
|
||||
|
|
@ -414,7 +414,6 @@ class _$AppRouter extends RootStackRouter {
|
|||
guards: [
|
||||
authGuard,
|
||||
duplicateGuard,
|
||||
galleryPermissionGuard,
|
||||
],
|
||||
children: [
|
||||
RouteConfig(
|
||||
|
|
@ -461,7 +460,6 @@ class _$AppRouter extends RootStackRouter {
|
|||
guards: [
|
||||
authGuard,
|
||||
duplicateGuard,
|
||||
galleryPermissionGuard,
|
||||
],
|
||||
),
|
||||
RouteConfig(
|
||||
|
|
@ -478,6 +476,7 @@ class _$AppRouter extends RootStackRouter {
|
|||
guards: [
|
||||
authGuard,
|
||||
duplicateGuard,
|
||||
backupPermissionGuard,
|
||||
],
|
||||
),
|
||||
RouteConfig(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue