23 lines
563 B
Dart
23 lines
563 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:hive_ce/hive.dart';
|
|
|
|
class SettingsService extends ChangeNotifier {
|
|
static const String _darkModeKey = 'darkMode';
|
|
late final Box _settingsBox;
|
|
|
|
SettingsService() {
|
|
_settingsBox = Hive.box('settings');
|
|
}
|
|
|
|
bool get isDarkMode => _settingsBox.get(_darkModeKey, defaultValue: false);
|
|
|
|
Future<void> setDarkMode(bool value) async {
|
|
await _settingsBox.put(_darkModeKey, value);
|
|
notifyListeners();
|
|
}
|
|
|
|
Future<void> toggleTheme() async {
|
|
await setDarkMode(!isDarkMode);
|
|
}
|
|
}
|