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);
|
|
|
|
}
|