Improve reader performance

This commit is contained in:
2025-02-14 11:35:03 +08:00
parent 350bcf4ffc
commit 22c01b4fd0
6 changed files with 68 additions and 51 deletions

View File

@@ -61,7 +61,7 @@ class _ComicPageState extends LoadingState<ComicPage, ComicDetails>
@override
void onReadEnd() {
history ??= HistoryManager()
.findSync(widget.id, ComicType(widget.sourceKey.hashCode));
.find(widget.id, ComicType(widget.sourceKey.hashCode));
update();
}
@@ -138,7 +138,7 @@ class _ComicPageState extends LoadingState<ComicPage, ComicDetails>
if (localComic == null) {
return const Res.error('Local comic not found');
}
var history = await HistoryManager().find(widget.id, ComicType.local);
var history = HistoryManager().find(widget.id, ComicType.local);
if (isFirst) {
Future.microtask(() {
App.rootContext.to(() {
@@ -172,7 +172,7 @@ class _ComicPageState extends LoadingState<ComicPage, ComicDetails>
widget.id,
ComicType(widget.sourceKey.hashCode),
);
history = await HistoryManager()
history = HistoryManager()
.find(widget.id, ComicType(widget.sourceKey.hashCode));
return comicSource.loadComicInfo!(widget.id);
}

View File

@@ -41,7 +41,7 @@ class _ReaderWithLoadingState
@override
Future<Res<ReaderProps>> loadData() async {
var comicSource = ComicSource.find(widget.sourceKey);
var history = HistoryManager().findSync(
var history = HistoryManager().find(
widget.id,
ComicType.fromKey(widget.sourceKey),
);

View File

@@ -238,9 +238,8 @@ class _ReaderState extends State<Reader> with _ReaderLocation, _ReaderWindow {
history!.maxPage = maxPage;
}
history!.readEpisode.add(chapter);
print(history!.readEpisode);
history!.time = DateTime.now();
HistoryManager().addHistory(history!);
HistoryManager().addHistoryAsync(history!);
}
}