nc-photos/app/lib/widget/album_browser_util.dart

27 lines
1.1 KiB
Dart
Raw Normal View History

2021-08-20 08:06:37 +02:00
import 'package:flutter/widgets.dart';
import 'package:nc_photos/account.dart';
import 'package:nc_photos/entity/album.dart';
import 'package:nc_photos/entity/album/provider.dart';
import 'package:nc_photos/widget/album_browser.dart';
2022-01-15 11:35:15 +01:00
import 'package:nc_photos/widget/smart_album_browser.dart';
2021-08-20 08:06:37 +02:00
2021-11-21 14:36:13 +01:00
/// Push the corresponding browser route for this album
2023-04-16 12:29:23 +02:00
void push(BuildContext context, Account account, Album album) {
2021-08-20 08:06:37 +02:00
if (album.provider is AlbumStaticProvider) {
2023-04-16 12:29:23 +02:00
Navigator.of(context).pushNamed(AlbumBrowser.routeName,
2021-08-20 08:06:37 +02:00
arguments: AlbumBrowserArguments(account, album));
2022-01-15 11:35:15 +01:00
} else if (album.provider is AlbumSmartProvider) {
2023-04-16 12:29:23 +02:00
Navigator.of(context).pushNamed(SmartAlbumBrowser.routeName,
2022-01-15 11:35:15 +01:00
arguments: SmartAlbumBrowserArguments(account, album));
2021-08-20 08:06:37 +02:00
}
}
/// Push the corresponding browser route for this album and replace the current
/// route
2023-04-16 12:29:23 +02:00
void pushReplacement(BuildContext context, Account account, Album album) {
if (album.provider is AlbumStaticProvider) {
2023-04-16 12:29:23 +02:00
Navigator.of(context).pushReplacementNamed(AlbumBrowser.routeName,
arguments: AlbumBrowserArguments(account, album));
}
}