diff --git a/assets/translation.json b/assets/translation.json index 8f8ef7c..72b225e 100644 --- a/assets/translation.json +++ b/assets/translation.json @@ -394,7 +394,8 @@ "Double tap to zoom": "双击缩放", "Clear Unfavorited": "清除未收藏", "Reverse": "反转", - "Delete Chapters": "删除章节" + "Delete Chapters": "删除章节", + "Reverse default chapter order": "反转默认章节顺序" }, "zh_TW": { "Home": "首頁", @@ -791,6 +792,7 @@ "Double tap to zoom": "雙擊縮放", "Clear Unfavorited": "清除未收藏", "Reverse": "反轉", - "Delete Chapters": "刪除章節" + "Delete Chapters": "刪除章節", + "Reverse default chapter order": "反轉預設章節順序" } } \ No newline at end of file diff --git a/lib/foundation/appdata.dart b/lib/foundation/appdata.dart index fb9052a..182f73f 100644 --- a/lib/foundation/appdata.dart +++ b/lib/foundation/appdata.dart @@ -197,6 +197,7 @@ class Settings with ChangeNotifier { 'showPageNumberInReader': true, 'showSingleImageOnFirstPage': false, 'enableDoubleTapToZoom': true, + 'reverseChapterOrder': false, }; operator [](String key) { diff --git a/lib/pages/comic_details_page/chapters.dart b/lib/pages/comic_details_page/chapters.dart index 7d86757..aa3c2f1 100644 --- a/lib/pages/comic_details_page/chapters.dart +++ b/lib/pages/comic_details_page/chapters.dart @@ -27,7 +27,7 @@ class _NormalComicChapters extends StatefulWidget { class _NormalComicChaptersState extends State<_NormalComicChapters> { late _ComicPageState state; - bool reverse = false; + late bool reverse; bool showAll = false; @@ -38,6 +38,7 @@ class _NormalComicChaptersState extends State<_NormalComicChapters> { @override void initState() { super.initState(); + reverse = appdata.settings["reverseChapterOrder"] ?? false; history = widget.history; } @@ -176,7 +177,7 @@ class _GroupedComicChaptersState extends State<_GroupedComicChapters> with SingleTickerProviderStateMixin { late _ComicPageState state; - bool reverse = false; + late bool reverse; bool showAll = false; @@ -191,6 +192,7 @@ class _GroupedComicChaptersState extends State<_GroupedComicChapters> @override void initState() { super.initState(); + reverse = appdata.settings["reverseChapterOrder"] ?? false; history = widget.history; if (history?.group != null) { index = history!.group! - 1; diff --git a/lib/pages/settings/explore_settings.dart b/lib/pages/settings/explore_settings.dart index 61b068c..a0e1279 100644 --- a/lib/pages/settings/explore_settings.dart +++ b/lib/pages/settings/explore_settings.dart @@ -52,6 +52,10 @@ class _ExploreSettingsState extends State { title: "Show history on comic tile".tl, settingKey: "showHistoryStatusOnTile", ).toSliver(), + _SwitchSetting( + title: "Reverse default chapter order".tl, + settingKey: "reverseChapterOrder", + ).toSliver(), _PopupWindowSetting( title: "Keyword blocking".tl, builder: () => const _ManageBlockingWordView(),