fix: route tidal/qobuz items from Recent Access to built-in screens instead of extension screens

This commit is contained in:
zarzet
2026-03-25 20:50:33 +07:00
parent 0423e36d34
commit 9693616645
2 changed files with 19 additions and 5 deletions
+9 -3
View File
@@ -2122,7 +2122,9 @@ class _HomeTabState extends ConsumerState<HomeTab>
if (item.providerId != null &&
item.providerId!.isNotEmpty &&
item.providerId != 'deezer' &&
item.providerId != 'spotify') {
item.providerId != 'spotify' &&
item.providerId != 'tidal' &&
item.providerId != 'qobuz') {
Navigator.push(
context,
MaterialPageRoute(
@@ -2162,7 +2164,9 @@ class _HomeTabState extends ConsumerState<HomeTab>
} else if (item.providerId != null &&
item.providerId!.isNotEmpty &&
item.providerId != 'deezer' &&
item.providerId != 'spotify') {
item.providerId != 'spotify' &&
item.providerId != 'tidal' &&
item.providerId != 'qobuz') {
Navigator.push(
context,
MaterialPageRoute(
@@ -2210,7 +2214,9 @@ class _HomeTabState extends ConsumerState<HomeTab>
if (item.providerId != null &&
item.providerId!.isNotEmpty &&
item.providerId != 'deezer' &&
item.providerId != 'spotify') {
item.providerId != 'spotify' &&
item.providerId != 'tidal' &&
item.providerId != 'qobuz') {
Navigator.push(
context,
MaterialPageRoute(
+10 -2
View File
@@ -225,11 +225,19 @@ void _pushAlbumScreen(
String? coverUrl,
String? extensionId,
}) {
// Built-in providers (tidal, qobuz, deezer) use AlbumScreen which
// detects the provider from the album ID prefix. Only true JS extensions
// should use ExtensionAlbumScreen.
const builtInProviders = {'tidal', 'qobuz', 'deezer'};
final isExtension =
extensionId != null && !builtInProviders.contains(extensionId);
final resolvedExtensionId = extensionId;
_pushViaPreferredNavigator(
context,
(context) => extensionId != null
(context) => isExtension && resolvedExtensionId != null
? ExtensionAlbumScreen(
extensionId: extensionId,
extensionId: resolvedExtensionId,
albumId: albumId,
albumName: albumName,
coverUrl: coverUrl,