diff --git a/mobile/lib/domain/models/store.model.dart b/mobile/lib/domain/models/store.model.dart index efccc9bccd..62cb887c27 100644 --- a/mobile/lib/domain/models/store.model.dart +++ b/mobile/lib/domain/models/store.model.dart @@ -70,6 +70,9 @@ enum StoreKey { // Read-only Mode settings readonlyModeEnabled._(138), + // Album grid/list view settings + albumGridView._(139), + // Experimental stuff photoManagerCustomFilter._(1000), betaPromptShown._(1001), diff --git a/mobile/lib/presentation/widgets/album/album_selector.widget.dart b/mobile/lib/presentation/widgets/album/album_selector.widget.dart index d2f983ee7d..680dd04ed2 100644 --- a/mobile/lib/presentation/widgets/album/album_selector.widget.dart +++ b/mobile/lib/presentation/widgets/album/album_selector.widget.dart @@ -59,6 +59,7 @@ class _AlbumSelectorState extends ConsumerState { final appSettings = ref.read(appSettingsServiceProvider); final savedSortMode = appSettings.getSetting(AppSettingsEnum.selectedAlbumSortOrder); final savedIsReverse = appSettings.getSetting(AppSettingsEnum.selectedAlbumSortReverse); + final savedIsGrid = appSettings.getSetting(AppSettingsEnum.albumGridView); final albumSortMode = AlbumSortMode.values.firstWhere( (e) => e.storeIndex == savedSortMode, @@ -67,6 +68,7 @@ class _AlbumSelectorState extends ConsumerState { setState(() { sort = AlbumSort(mode: toRemoteAlbumSortMode(albumSortMode), isReverse: savedIsReverse); + isGrid = savedIsGrid; }); ref.read(remoteAlbumProvider.notifier).refresh(); @@ -98,6 +100,7 @@ class _AlbumSelectorState extends ConsumerState { setState(() { isGrid = !isGrid; }); + ref.read(appSettingsServiceProvider).setSetting(AppSettingsEnum.albumGridView, isGrid); } void changeFilter(QuickFilterMode mode) { diff --git a/mobile/lib/services/app_settings.service.dart b/mobile/lib/services/app_settings.service.dart index d53cd85b95..d39795b116 100644 --- a/mobile/lib/services/app_settings.service.dart +++ b/mobile/lib/services/app_settings.service.dart @@ -50,7 +50,8 @@ enum AppSettingsEnum { enableBackup(StoreKey.enableBackup, null, false), useCellularForUploadVideos(StoreKey.useWifiForUploadVideos, null, false), useCellularForUploadPhotos(StoreKey.useWifiForUploadPhotos, null, false), - readonlyModeEnabled(StoreKey.readonlyModeEnabled, "readonlyModeEnabled", false); + readonlyModeEnabled(StoreKey.readonlyModeEnabled, "readonlyModeEnabled", false), + albumGridView(StoreKey.albumGridView, "albumGridView", false); const AppSettingsEnum(this.storeKey, this.hiveKey, this.defaultValue);