Compare commits
2 Commits
59c4d667f6
...
1.3.8+13
| Author | SHA1 | Date | |
|---|---|---|---|
| df787f02a1 | |||
| db43b7dca5 |
@@ -140,7 +140,7 @@
|
|||||||
"clear": "Clear",
|
"clear": "Clear",
|
||||||
"pinPost": "Pin this post",
|
"pinPost": "Pin this post",
|
||||||
"unpinPost": "Unpin this post",
|
"unpinPost": "Unpin this post",
|
||||||
"postRestoreFromLocal": "Restore from local",
|
"postRestoreFromLocal": "Restored",
|
||||||
"postAutoSaveAt": "Auto saved at @date",
|
"postAutoSaveAt": "Auto saved at @date",
|
||||||
"postCategoriesAndTags": "Categories n' Tags",
|
"postCategoriesAndTags": "Categories n' Tags",
|
||||||
"postPublishDate": "Publish Date",
|
"postPublishDate": "Publish Date",
|
||||||
|
|||||||
@@ -43,14 +43,17 @@ class PostEditorController extends GetxController {
|
|||||||
|
|
||||||
RxBool isRestoreFromLocal = false.obs;
|
RxBool isRestoreFromLocal = false.obs;
|
||||||
Rx<DateTime?> lastSaveTime = Rx(null);
|
Rx<DateTime?> lastSaveTime = Rx(null);
|
||||||
Timer? _saveTimer;
|
Future? _saveFuture;
|
||||||
|
|
||||||
PostEditorController() {
|
PostEditorController() {
|
||||||
SharedPreferences.getInstance().then((inst) {
|
SharedPreferences.getInstance().then((inst) {
|
||||||
_prefs = inst;
|
_prefs = inst;
|
||||||
_saveTimer = Timer.periodic(
|
});
|
||||||
const Duration(seconds: 3),
|
contentController.addListener(() {
|
||||||
(Timer t) {
|
contentLength.value = contentController.text.length;
|
||||||
|
_saveFuture ??= Future.delayed(
|
||||||
|
const Duration(seconds: 1),
|
||||||
|
() {
|
||||||
if (isNotEmpty) {
|
if (isNotEmpty) {
|
||||||
localSave();
|
localSave();
|
||||||
lastSaveTime.value = DateTime.now();
|
lastSaveTime.value = DateTime.now();
|
||||||
@@ -59,12 +62,10 @@ class PostEditorController extends GetxController {
|
|||||||
localClear();
|
localClear();
|
||||||
lastSaveTime.value = null;
|
lastSaveTime.value = null;
|
||||||
}
|
}
|
||||||
|
_saveFuture = null;
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
contentController.addListener(() {
|
|
||||||
contentLength.value = contentController.text.length;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> editOverview(BuildContext context) {
|
Future<void> editOverview(BuildContext context) {
|
||||||
@@ -355,8 +356,6 @@ class PostEditorController extends GetxController {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
void dispose() {
|
void dispose() {
|
||||||
_saveTimer?.cancel();
|
|
||||||
|
|
||||||
titleController.dispose();
|
titleController.dispose();
|
||||||
descriptionController.dispose();
|
descriptionController.dispose();
|
||||||
contentController.dispose();
|
contentController.dispose();
|
||||||
|
|||||||
@@ -74,10 +74,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: args
|
name: args
|
||||||
sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a"
|
sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.5.0"
|
version: "2.6.0"
|
||||||
async:
|
async:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
|||||||
Reference in New Issue
Block a user