feat(library): add quality label display modes

This commit is contained in:
zarzet
2026-07-27 17:25:39 +07:00
parent e4cd52f29f
commit 454ef53977
13 changed files with 334 additions and 44 deletions
+16
View File
@@ -159,6 +159,9 @@ class SettingsNotifier extends Notifier<AppSettings> {
defaultLibraryView: _normalizeDefaultLibraryView(
loaded.defaultLibraryView,
),
libraryQualityLabelMode: _normalizeLibraryQualityLabelMode(
loaded.libraryQualityLabelMode,
),
defaultService: loaded.defaultService,
searchProvider: loaded.searchProvider,
extensionVerificationBrowserMode:
@@ -369,6 +372,12 @@ class SettingsNotifier extends Notifier<AppSettings> {
return 'last';
}
String _normalizeLibraryQualityLabelMode(String value) {
return value == AppSettings.libraryQualityLabelBitDepth
? AppSettings.libraryQualityLabelBitDepth
: AppSettings.libraryQualityLabelBitrate;
}
String _normalizeExtensionVerificationBrowserMode(String value) {
final normalized = value.trim().toLowerCase();
if (_extensionVerificationBrowserModeValues.contains(normalized)) {
@@ -630,6 +639,13 @@ class SettingsNotifier extends Notifier<AppSettings> {
_saveSettings();
}
void setLibraryQualityLabelMode(String mode) {
state = state.copyWith(
libraryQualityLabelMode: _normalizeLibraryQualityLabelMode(mode),
);
_saveSettings();
}
void setHomeFeedProvider(String? provider) {
if (provider == null || provider.isEmpty) {
state = state.copyWith(clearHomeFeedProvider: true);