feat: oled theme

This commit is contained in:
edde746
2026-01-28 23:06:50 +01:00
parent 18a0c8833d
commit ef325cde29
21 changed files with 123 additions and 26 deletions
+17 -1
View File
@@ -30,7 +30,12 @@ class ThemeProvider extends ChangeNotifier {
settings.ThemeMode get themeMode => _themeMode;
ThemeData get lightTheme => monoTheme(dark: false);
ThemeData get darkTheme => monoTheme(dark: true);
ThemeData get darkTheme {
if (_themeMode == settings.ThemeMode.oled) {
return monoTheme(dark: true, oled: true);
}
return monoTheme(dark: true);
}
ThemeMode get materialThemeMode {
switch (_themeMode) {
@@ -38,6 +43,8 @@ class ThemeProvider extends ChangeNotifier {
return ThemeMode.light;
case settings.ThemeMode.dark:
return ThemeMode.dark;
case settings.ThemeMode.oled:
return ThemeMode.dark;
case settings.ThemeMode.system:
return ThemeMode.system;
}
@@ -49,6 +56,8 @@ class ThemeProvider extends ChangeNotifier {
return false;
case settings.ThemeMode.dark:
return true;
case settings.ThemeMode.oled:
return true;
case settings.ThemeMode.system:
return _systemBrightness == Brightness.dark;
}
@@ -68,6 +77,8 @@ class ThemeProvider extends ChangeNotifier {
return 'Light';
case settings.ThemeMode.dark:
return 'Dark';
case settings.ThemeMode.oled:
return 'OLED';
case settings.ThemeMode.system:
return 'System';
}
@@ -79,6 +90,8 @@ class ThemeProvider extends ChangeNotifier {
return Symbols.light_mode_rounded;
case settings.ThemeMode.dark:
return Symbols.dark_mode_rounded;
case settings.ThemeMode.oled:
return Symbols.contrast_rounded;
case settings.ThemeMode.system:
return Symbols.brightness_auto_rounded;
}
@@ -93,6 +106,9 @@ class ThemeProvider extends ChangeNotifier {
setThemeMode(settings.ThemeMode.dark);
break;
case settings.ThemeMode.dark:
setThemeMode(settings.ThemeMode.oled);
break;
case settings.ThemeMode.oled:
setThemeMode(settings.ThemeMode.system);
break;
}