diff --git a/lib/pages/reader/reader.dart b/lib/pages/reader/reader.dart index 65a432e..6dea93f 100644 --- a/lib/pages/reader/reader.dart +++ b/lib/pages/reader/reader.dart @@ -20,6 +20,7 @@ import 'package:venera/foundation/history.dart'; import 'package:venera/foundation/image_provider/reader_image.dart'; import 'package:venera/foundation/local.dart'; import 'package:venera/pages/settings/settings_page.dart'; +import 'package:venera/utils/data_sync.dart'; import 'package:venera/utils/file_type.dart'; import 'package:venera/utils/io.dart'; import 'package:venera/utils/translations.dart'; @@ -122,6 +123,9 @@ class _ReaderState extends State with _ReaderLocation, _ReaderWindow { focusNode.dispose(); SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge); stopVolumeEvent(); + Future.microtask(() { + DataSync().onDataChanged(); + }); super.dispose(); } diff --git a/lib/utils/data_sync.dart b/lib/utils/data_sync.dart index b277ae5..3dd1474 100644 --- a/lib/utils/data_sync.dart +++ b/lib/utils/data_sync.dart @@ -4,7 +4,6 @@ import 'package:venera/foundation/app.dart'; import 'package:venera/foundation/appdata.dart'; import 'package:venera/foundation/comic_source/comic_source.dart'; import 'package:venera/foundation/favorites.dart'; -import 'package:venera/foundation/history.dart'; import 'package:venera/foundation/log.dart'; import 'package:venera/foundation/res.dart'; import 'package:venera/network/app_dio.dart'; @@ -19,7 +18,6 @@ class DataSync with ChangeNotifier { if (isEnabled) { downloadData(); } - HistoryManager().addListener(onDataChanged); LocalFavoritesManager().addListener(onDataChanged); ComicSource.addListener(onDataChanged); } @@ -57,8 +55,9 @@ class DataSync with ChangeNotifier { } Future> uploadData() async { + if(isDownloading) return const Res(true); if (haveWaitingTask) return const Res(true); - while (isDownloading || isUploading) { + while (isUploading) { haveWaitingTask = true; await Future.delayed(const Duration(milliseconds: 100)); }