diff --git a/lib/pages/comic_details_page/comic_page.dart b/lib/pages/comic_details_page/comic_page.dart index 7c4ff48..aa05355 100644 --- a/lib/pages/comic_details_page/comic_page.dart +++ b/lib/pages/comic_details_page/comic_page.dart @@ -17,10 +17,8 @@ import 'package:venera/foundation/image_provider/cached_image.dart'; import 'package:venera/foundation/local.dart'; import 'package:venera/foundation/res.dart'; import 'package:venera/network/download.dart'; -import 'package:venera/pages/category_comics_page.dart'; import 'package:venera/pages/favorites/favorites_page.dart'; import 'package:venera/pages/reader/reader.dart'; -import 'package:venera/pages/search_result_page.dart'; import 'package:venera/utils/app_links.dart'; import 'package:venera/utils/ext.dart'; import 'package:venera/utils/io.dart'; @@ -411,14 +409,20 @@ class _ComicPageState extends LoadingState var group = history!.group; String text; if (haveChapter) { - var epName = group == null - ? comic.chapters!.titles.elementAt( - math.min(ep - 1, comic.chapters!.length - 1), - ) - : comic.chapters! - .getGroupByIndex(group - 1) - .values - .elementAt(ep - 1); + var epName = "E$ep"; + try { + epName = group == null + ? comic.chapters!.titles.elementAt( + math.min(ep - 1, comic.chapters!.length - 1), + ) + : comic.chapters! + .getGroupByIndex(group - 1) + .values + .elementAt(ep - 1); + } + catch(e) { + // ignore + } text = "${"Last Reading".tl}: $epName P$page"; } else { text = "${"Last Reading".tl}: P$page"; diff --git a/lib/pages/reader/images.dart b/lib/pages/reader/images.dart index 456ef64..a33aeac 100644 --- a/lib/pages/reader/images.dart +++ b/lib/pages/reader/images.dart @@ -43,9 +43,10 @@ class _ReaderImagesState extends State<_ReaderImages> { }); } } else { + var cp = reader.widget.chapters?.ids.elementAtOrNull(reader.chapter - 1); var res = await reader.type.comicSource!.loadComicPages!( reader.widget.cid, - reader.widget.chapters?.ids.elementAt(reader.chapter - 1), + cp, ); if (res.error) { setState(() { @@ -747,7 +748,8 @@ class _ContinuousModeState extends State<_ContinuousMode> } Offset offset; var sp = scrollController.position; - if (sp.pixels <= sp.minScrollExtent || sp.pixels >= sp.maxScrollExtent) { + if (sp.pixels <= sp.minScrollExtent || + sp.pixels >= sp.maxScrollExtent) { offset = Offset(value.dx, value.dy); } else { if (reader.mode == ReaderMode.continuousTopToBottom) {