persist twoPageMode
This commit is contained in:
@@ -3,8 +3,21 @@ import 'package:hive/hive.dart';
|
||||
|
||||
enum SecureStorageKey { url, jwt, email, password }
|
||||
|
||||
enum ConfigKey { twoPageMode }
|
||||
|
||||
class Config {
|
||||
Config({required this.twoPageMode, required this.fullscreen});
|
||||
|
||||
static const String keyTwoPageMode = "twoPageMode";
|
||||
static const String keyFullscreen = "fullscreen";
|
||||
|
||||
bool twoPageMode;
|
||||
bool fullscreen;
|
||||
}
|
||||
|
||||
class StorageHelper {
|
||||
final sheetAccessTimesBox = "sheetAccessTimes";
|
||||
final configBox = "config";
|
||||
|
||||
late FlutterSecureStorage secureStorage;
|
||||
|
||||
@@ -22,6 +35,20 @@ class StorageHelper {
|
||||
return secureStorage.write(key: key.name, value: value);
|
||||
}
|
||||
|
||||
Future<Config> readConfig() async {
|
||||
final box = await Hive.openBox(configBox);
|
||||
return Config(
|
||||
twoPageMode: box.get(Config.keyTwoPageMode) ?? false,
|
||||
fullscreen: box.get(Config.keyFullscreen) ?? false,
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> writeConfig(Config config) async {
|
||||
final box = await Hive.openBox(configBox);
|
||||
box.put(Config.keyTwoPageMode, config.twoPageMode);
|
||||
box.put(Config.keyFullscreen, config.fullscreen);
|
||||
}
|
||||
|
||||
Future<Map<String, DateTime>> readSheetAccessTimes() async {
|
||||
final box = await Hive.openBox(sheetAccessTimesBox);
|
||||
return box.toMap().map(
|
||||
|
||||
Reference in New Issue
Block a user