feat: add sub-ass-override setting

This commit is contained in:
edde746
2026-04-08 19:35:18 +02:00
parent 7f237c9c7b
commit 1cb793d781
34 changed files with 124 additions and 33 deletions
+12
View File
@@ -28,6 +28,8 @@ enum ViewMode { grid, list }
enum EpisodePosterMode { seriesPoster, seasonPoster, episodeThumbnail }
enum SubAssOverride { no, yes, scale, force, strip }
class SettingsService extends BaseSharedPreferencesService {
static const String _keyThemeMode = 'theme_mode';
static const String _keyEnableDebugLogging = 'enable_debug_logging';
@@ -63,6 +65,7 @@ class SettingsService extends BaseSharedPreferencesService {
static const String _keySubtitleBackgroundColor = 'subtitle_background_color';
static const String _keySubtitleBackgroundOpacity = 'subtitle_background_opacity';
static const String _keySubtitlePosition = 'subtitle_position';
static const String _keySubAssOverride = 'sub_ass_override';
static const String _keyAppLocale = 'app_locale';
static const String _keyRememberTrackSelections = 'remember_track_selections';
static const String _keyClickVideoTogglesPlayback = 'click_video_toggles_playback';
@@ -448,6 +451,15 @@ class SettingsService extends BaseSharedPreferencesService {
return prefs.getInt(_keySubtitlePosition) ?? 100; // Default: bottom
}
// Sub ASS Override
Future<void> setSubAssOverride(SubAssOverride mode) async {
await prefs.setString(_keySubAssOverride, mode.name);
}
SubAssOverride getSubAssOverride() {
return _getEnumValue(_keySubAssOverride, SubAssOverride.values, SubAssOverride.no);
}
// Keyboard Shortcuts (Legacy String-based)
Map<String, String> getDefaultKeyboardShortcuts() {
return {