Fix issues with empty chapter list.

This commit is contained in:
2025-04-05 18:00:55 +08:00
parent 6ff30f8ac3
commit f87afbe397
2 changed files with 18 additions and 12 deletions

View File

@@ -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,7 +409,9 @@ class _ComicPageState extends LoadingState<ComicPage, ComicDetails>
var group = history!.group;
String text;
if (haveChapter) {
var epName = group == null
var epName = "E$ep";
try {
epName = group == null
? comic.chapters!.titles.elementAt(
math.min(ep - 1, comic.chapters!.length - 1),
)
@@ -419,6 +419,10 @@ class _ComicPageState extends LoadingState<ComicPage, ComicDetails>
.getGroupByIndex(group - 1)
.values
.elementAt(ep - 1);
}
catch(e) {
// ignore
}
text = "${"Last Reading".tl}: $epName P$page";
} else {
text = "${"Last Reading".tl}: P$page";

View File

@@ -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) {