diff --git a/mobile/lib/modules/album/providers/shared_album.provider.dart b/mobile/lib/modules/album/providers/shared_album.provider.dart index e428136c7..eefc09163 100644 --- a/mobile/lib/modules/album/providers/shared_album.provider.dart +++ b/mobile/lib/modules/album/providers/shared_album.provider.dart @@ -6,10 +6,10 @@ import 'package:immich_mobile/shared/models/asset.dart'; import 'package:openapi/api.dart'; class SharedAlbumNotifier extends StateNotifier> { - SharedAlbumNotifier(this._sharedAlbumService, this._sharedAlbumCacheService) + SharedAlbumNotifier(this._albumService, this._sharedAlbumCacheService) : super([]); - final AlbumService _sharedAlbumService; + final AlbumService _albumService; final SharedAlbumCacheService _sharedAlbumCacheService; _cacheState() { @@ -22,7 +22,7 @@ class SharedAlbumNotifier extends StateNotifier> { List sharedUserIds, ) async { try { - var newAlbum = await _sharedAlbumService.createAlbum( + var newAlbum = await _albumService.createAlbum( albumName, assets, sharedUserIds, @@ -47,7 +47,7 @@ class SharedAlbumNotifier extends StateNotifier> { } List? sharedAlbums = - await _sharedAlbumService.getAlbums(isShared: true); + await _albumService.getAlbums(isShared: true); if (sharedAlbums != null) { state = sharedAlbums; @@ -61,7 +61,7 @@ class SharedAlbumNotifier extends StateNotifier> { } Future leaveAlbum(String albumId) async { - var res = await _sharedAlbumService.leaveAlbum(albumId); + var res = await _albumService.leaveAlbum(albumId); if (res) { state = state.where((album) => album.id != albumId).toList(); @@ -76,7 +76,7 @@ class SharedAlbumNotifier extends StateNotifier> { String albumId, List assetIds, ) async { - var res = await _sharedAlbumService.removeAssetFromAlbum(albumId, assetIds); + var res = await _albumService.removeAssetFromAlbum(albumId, assetIds); if (res) { return true; diff --git a/mobile/lib/modules/album/ui/album_viewer_appbar.dart b/mobile/lib/modules/album/ui/album_viewer_appbar.dart index 5c41b08b6..00a66a18e 100644 --- a/mobile/lib/modules/album/ui/album_viewer_appbar.dart +++ b/mobile/lib/modules/album/ui/album_viewer_appbar.dart @@ -96,6 +96,7 @@ class AlbumViewerAppbar extends HookConsumerWidget with PreferredSizeWidget { if (isSuccess) { Navigator.pop(context); ref.watch(assetSelectionProvider.notifier).disableMultiselection(); + ref.watch(albumProvider.notifier).getAllAlbums(); ref.invalidate(sharedAlbumDetailProvider(albumId)); } else { Navigator.pop(context); diff --git a/mobile/lib/modules/album/views/album_viewer_page.dart b/mobile/lib/modules/album/views/album_viewer_page.dart index 78b989636..03b6581f5 100644 --- a/mobile/lib/modules/album/views/album_viewer_page.dart +++ b/mobile/lib/modules/album/views/album_viewer_page.dart @@ -3,6 +3,7 @@ import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; import 'package:flutter_hooks/flutter_hooks.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; +import 'package:immich_mobile/modules/album/providers/album.provider.dart'; import 'package:immich_mobile/modules/home/ui/draggable_scrollbar.dart'; import 'package:immich_mobile/modules/login/providers/authentication.provider.dart'; import 'package:immich_mobile/modules/album/models/asset_selection_page_result.model.dart'; @@ -62,6 +63,7 @@ class AlbumViewerPage extends HookConsumerWidget { if (addAssetsResult != null && addAssetsResult.successfullyAdded > 0) { + ref.watch(albumProvider.notifier).getAllAlbums(); ref.invalidate(sharedAlbumDetailProvider(albumId)); } diff --git a/mobile/openapi/lib/model/album_response_dto.dart b/mobile/openapi/lib/model/album_response_dto.dart index 282344a16..7858e857d 100644 Binary files a/mobile/openapi/lib/model/album_response_dto.dart and b/mobile/openapi/lib/model/album_response_dto.dart differ diff --git a/mobile/openapi/lib/model/asset_response_dto.dart b/mobile/openapi/lib/model/asset_response_dto.dart index 2f516e2bd..08c7e6cc3 100644 Binary files a/mobile/openapi/lib/model/asset_response_dto.dart and b/mobile/openapi/lib/model/asset_response_dto.dart differ