mirror of
https://github.com/venera-app/venera.git
synced 2025-09-27 07:47:24 +00:00
improve code
This commit is contained in:
@@ -7,11 +7,21 @@ class _Appdata {
|
||||
final _Settings settings = _Settings();
|
||||
|
||||
var searchHistory = <String>[];
|
||||
|
||||
bool _isSavingData = false;
|
||||
|
||||
void saveData() async {
|
||||
Future<void> saveData() async {
|
||||
if(_isSavingData) {
|
||||
await Future.doWhile(() async {
|
||||
await Future.delayed(const Duration(milliseconds: 20));
|
||||
return _isSavingData;
|
||||
});
|
||||
}
|
||||
_isSavingData = true;
|
||||
var data = jsonEncode(toJson());
|
||||
var file = File(FilePath.join(App.dataPath, 'appdata.json'));
|
||||
await file.writeAsString(data);
|
||||
_isSavingData = false;
|
||||
}
|
||||
|
||||
void addSearchHistory(String keyword) {
|
||||
@@ -42,7 +52,9 @@ class _Appdata {
|
||||
}
|
||||
var json = jsonDecode(await file.readAsString());
|
||||
for(var key in json['settings'].keys) {
|
||||
settings[key] = json[key];
|
||||
if(json[key] != null) {
|
||||
settings[key] = json[key];
|
||||
}
|
||||
}
|
||||
searchHistory = List.from(json['searchHistory']);
|
||||
}
|
||||
@@ -88,4 +100,9 @@ class _Settings {
|
||||
operator[]=(String key, dynamic value) {
|
||||
_data[key] = value;
|
||||
}
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return _data.toString();
|
||||
}
|
||||
}
|
@@ -3,7 +3,6 @@ import 'dart:io';
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:crypto/crypto.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:html/parser.dart' as html;
|
||||
import 'package:html/dom.dart' as dom;
|
||||
|
Reference in New Issue
Block a user