mirror of
https://github.com/immich-app/immich.git
synced 2025-12-15 17:23:15 +03:00
refactor(mobile): app settings (#7749)
* refactor(mobile): app settings * Font size * refactor(mobile): backup settings ui (#7771) * refactor: SettingsButtonListTile * refactor: Backup settings to App settings --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> * fix: invalidate appsettingsprovider on timeline setting change * styling --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
This commit is contained in:
@@ -31,6 +31,7 @@ import 'package:immich_mobile/modules/login/views/change_password_page.dart';
|
||||
import 'package:immich_mobile/modules/login/views/login_page.dart';
|
||||
import 'package:immich_mobile/modules/onboarding/providers/gallery_permission.provider.dart';
|
||||
import 'package:immich_mobile/modules/onboarding/views/permission_onboarding_page.dart';
|
||||
import 'package:immich_mobile/modules/settings/views/settings_sub_page.dart';
|
||||
import 'package:immich_mobile/modules/shared_link/models/shared_link.dart';
|
||||
import 'package:immich_mobile/modules/shared_link/views/shared_link_edit_page.dart';
|
||||
import 'package:immich_mobile/modules/shared_link/views/shared_link_page.dart';
|
||||
@@ -179,6 +180,7 @@ class AppRouter extends _$AppRouter {
|
||||
transitionsBuilder: TransitionsBuilders.slideBottom,
|
||||
),
|
||||
AutoRoute(page: SettingsRoute.page, guards: [_duplicateGuard]),
|
||||
AutoRoute(page: SettingsSubRoute.page, guards: [_duplicateGuard]),
|
||||
AutoRoute(page: AppLogRoute.page, guards: [_duplicateGuard]),
|
||||
AutoRoute(page: AppLogDetailRoute.page, guards: [_duplicateGuard]),
|
||||
AutoRoute(page: ArchiveRoute.page, guards: [_authGuard, _duplicateGuard]),
|
||||
|
||||
@@ -299,6 +299,16 @@ abstract class _$AppRouter extends RootStackRouter {
|
||||
child: const SettingsPage(),
|
||||
);
|
||||
},
|
||||
SettingsSubRoute.name: (routeData) {
|
||||
final args = routeData.argsAs<SettingsSubRouteArgs>();
|
||||
return AutoRoutePage<dynamic>(
|
||||
routeData: routeData,
|
||||
child: SettingsSubPage(
|
||||
args.section,
|
||||
key: args.key,
|
||||
),
|
||||
);
|
||||
},
|
||||
SharedLinkEditRoute.name: (routeData) {
|
||||
final args = routeData.argsAs<SharedLinkEditRouteArgs>(
|
||||
orElse: () => const SharedLinkEditRouteArgs());
|
||||
@@ -1260,6 +1270,44 @@ class SettingsRoute extends PageRouteInfo<void> {
|
||||
static const PageInfo<void> page = PageInfo<void>(name);
|
||||
}
|
||||
|
||||
/// generated route for
|
||||
/// [SettingsSubPage]
|
||||
class SettingsSubRoute extends PageRouteInfo<SettingsSubRouteArgs> {
|
||||
SettingsSubRoute({
|
||||
required SettingSection section,
|
||||
Key? key,
|
||||
List<PageRouteInfo>? children,
|
||||
}) : super(
|
||||
SettingsSubRoute.name,
|
||||
args: SettingsSubRouteArgs(
|
||||
section: section,
|
||||
key: key,
|
||||
),
|
||||
initialChildren: children,
|
||||
);
|
||||
|
||||
static const String name = 'SettingsSubRoute';
|
||||
|
||||
static const PageInfo<SettingsSubRouteArgs> page =
|
||||
PageInfo<SettingsSubRouteArgs>(name);
|
||||
}
|
||||
|
||||
class SettingsSubRouteArgs {
|
||||
const SettingsSubRouteArgs({
|
||||
required this.section,
|
||||
this.key,
|
||||
});
|
||||
|
||||
final SettingSection section;
|
||||
|
||||
final Key? key;
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'SettingsSubRouteArgs{section: $section, key: $key}';
|
||||
}
|
||||
}
|
||||
|
||||
/// generated route for
|
||||
/// [SharedLinkEditPage]
|
||||
class SharedLinkEditRoute extends PageRouteInfo<SharedLinkEditRouteArgs> {
|
||||
|
||||
Reference in New Issue
Block a user