mirror of
https://github.com/immich-app/immich.git
synced 2025-08-11 09:16:31 -04:00
* chore: bump dart sdk to 3.8 * chore: make build * make pigeon * chore: format files --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
30 lines
1.1 KiB
Dart
30 lines
1.1 KiB
Dart
import 'package:auto_route/auto_route.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|
import 'package:immich_mobile/pages/album/album_viewer.dart';
|
|
import 'package:immich_mobile/providers/album/album.provider.dart';
|
|
import 'package:immich_mobile/providers/album/current_album.provider.dart';
|
|
import 'package:immich_mobile/providers/timeline.provider.dart';
|
|
|
|
@RoutePage()
|
|
class AlbumViewerPage extends HookConsumerWidget {
|
|
final int albumId;
|
|
|
|
const AlbumViewerPage({super.key, required this.albumId});
|
|
|
|
@override
|
|
Widget build(BuildContext context, WidgetRef ref) {
|
|
// Listen provider to prevent autoDispose when navigating to other routes from within the viewer page
|
|
ref.listen(currentAlbumProvider, (_, __) {});
|
|
|
|
// This call helps rendering the asset selection instantly
|
|
ref.listen(assetSelectionTimelineProvider, (_, __) {});
|
|
|
|
ref.listen(albumWatcher(albumId), (_, albumFuture) {
|
|
albumFuture.whenData((value) => ref.read(currentAlbumProvider.notifier).set(value));
|
|
});
|
|
|
|
return const Scaffold(body: AlbumViewer());
|
|
}
|
|
}
|