Rain/lib/theme/theme_controller.dart

33 lines
944 B
Dart
Raw Normal View History

2023-06-17 20:57:57 +03:00
import 'package:get/get.dart';
import 'package:flutter/material.dart';
2024-09-06 22:07:50 +03:00
import 'package:rain/app/data/db.dart';
2023-06-17 20:57:57 +03:00
import 'package:rain/main.dart';
class ThemeController extends GetxController {
2025-03-15 23:40:48 +03:00
ThemeMode get theme =>
settings.theme == 'system'
? ThemeMode.system
: settings.theme == 'dark'
2023-06-17 20:57:57 +03:00
? ThemeMode.dark
: ThemeMode.light;
2023-09-09 21:15:47 +03:00
void saveOledTheme(bool isOled) {
2023-06-27 22:41:25 +03:00
settings.amoledTheme = isOled;
2023-09-18 16:26:08 +03:00
isar.writeTxnSync(() => isar.settings.putSync(settings));
2023-06-27 22:41:25 +03:00
}
2023-09-09 21:15:47 +03:00
void saveMaterialTheme(bool isMaterial) {
2023-07-10 21:33:43 +03:00
settings.materialColor = isMaterial;
2023-09-18 16:26:08 +03:00
isar.writeTxnSync(() => isar.settings.putSync(settings));
2023-07-10 21:33:43 +03:00
}
2023-09-28 22:23:36 +03:00
void saveTheme(String themeMode) {
settings.theme = themeMode;
2023-09-18 16:26:08 +03:00
isar.writeTxnSync(() => isar.settings.putSync(settings));
2023-06-17 20:57:57 +03:00
}
void changeTheme(ThemeData theme) => Get.changeTheme(theme);
void changeThemeMode(ThemeMode themeMode) => Get.changeThemeMode(themeMode);
}