refactor: remove Qobuz built-in provider and delete qobuz.go

Delete the entire Qobuz downloader implementation (qobuz.go, qobuz_test.go)
including all API clients, search, metadata, download, and track matching
code. Empty the builtInProviderRegistry now that all built-in providers are
retired. Remove Qobuz-specific exports (SearchQobuzAll, GetQobuzMetadata,
ParseQobuzURLExport) and the downloadWithBuiltInQobuz adapter. Stub out
PreWarmTrackCache and cache management since no built-in providers remain.
Move qobuz cover upgrade regex to cover.go. Update Dart screens, providers,
and localization strings for the provider-agnostic UI.
This commit is contained in:
zarzet
2026-04-18 23:32:16 +07:00
parent 8f2ca33e87
commit 803cd2de96
37 changed files with 331 additions and 3794 deletions
@@ -1,5 +1,6 @@
import 'package:spotiflac_android/models/settings.dart';
import 'package:spotiflac_android/models/track.dart';
import 'package:spotiflac_android/providers/extension_provider.dart';
import 'package:spotiflac_android/services/library_database.dart';
import 'package:spotiflac_android/services/platform_bridge.dart';
@@ -101,19 +102,26 @@ class LocalTrackRedownloadService {
);
}
static String preferredFlacService(AppSettings settings) {
switch (settings.defaultService.toLowerCase()) {
case 'tidal':
case 'qobuz':
case 'deezer':
return settings.defaultService.toLowerCase();
default:
return '';
}
static String preferredFlacService(
AppSettings settings,
ExtensionState extensionState,
) {
return resolveEffectiveDownloadService(
settings.defaultService,
extensionState,
);
}
static String preferredFlacQualityForService(String service) {
return service.toLowerCase() == 'deezer' ? 'FLAC' : 'LOSSLESS';
static String preferredFlacQualityForService(
String service,
ExtensionState extensionState,
) {
if (service.trim().isEmpty) {
return 'LOSSLESS';
}
return isDeezerCompatibleDownloadService(service, extensionState)
? 'FLAC'
: 'LOSSLESS';
}
static String _buildSearchQuery(LocalLibraryItem item) {