mirror of
https://github.com/venera-app/venera.git
synced 2025-09-27 15:57:25 +00:00
Fix multi-image mode
This commit is contained in:
@@ -232,7 +232,7 @@ class _GalleryModeState extends State<_GalleryMode>
|
||||
ImageProvider imageProvider =
|
||||
_createImageProviderFromKey(imageKey, context);
|
||||
return Expanded(
|
||||
child: Image(
|
||||
child: ComicImage(
|
||||
image: imageProvider,
|
||||
fit: BoxFit.contain,
|
||||
),
|
||||
|
@@ -114,6 +114,7 @@ class _ReaderState extends State<Reader> with _ReaderLocation, _ReaderWindow {
|
||||
late ReaderMode mode;
|
||||
|
||||
int get imagesPerPage {
|
||||
if (mode.isContinuous) return 1;
|
||||
if (isPortrait) {
|
||||
return appdata.settings['readerScreenPicNumberForPortrait'] ?? 1;
|
||||
} else {
|
||||
@@ -126,12 +127,6 @@ class _ReaderState extends State<Reader> with _ReaderLocation, _ReaderWindow {
|
||||
bool get isPortrait =>
|
||||
MediaQuery.of(context).orientation == Orientation.portrait;
|
||||
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
super.didChangeDependencies();
|
||||
_checkImagesPerPageChange();
|
||||
}
|
||||
|
||||
void _checkImagesPerPageChange() {
|
||||
int currentImagesPerPage = imagesPerPage;
|
||||
if (_lastImagesPerPage != currentImagesPerPage) {
|
||||
@@ -173,13 +168,10 @@ class _ReaderState extends State<Reader> with _ReaderLocation, _ReaderWindow {
|
||||
}
|
||||
}
|
||||
if (widget.initialPage != null) {
|
||||
page = (widget.initialPage! / imagesPerPage).ceil();
|
||||
page = widget.initialPage!;
|
||||
}
|
||||
mode = ReaderMode.fromKey(appdata.settings['readerMode']);
|
||||
history = widget.history;
|
||||
_lastImagesPerPage = isPortrait
|
||||
? appdata.settings['readerScreenPicNumberForPortrait'] ?? 1
|
||||
: appdata.settings['readerScreenPicNumberForLandscape'] ?? 1;
|
||||
Future.microtask(() {
|
||||
updateHistory();
|
||||
});
|
||||
@@ -194,6 +186,15 @@ class _ReaderState extends State<Reader> with _ReaderLocation, _ReaderWindow {
|
||||
super.initState();
|
||||
}
|
||||
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
super.didChangeDependencies();
|
||||
_lastImagesPerPage = imagesPerPage;
|
||||
if (imagesPerPage != 1) {
|
||||
page = (widget.initialPage! / imagesPerPage).ceil();
|
||||
}
|
||||
}
|
||||
|
||||
void setImageCacheSize() async {
|
||||
var availableRAM = await MemoryInfo.getFreePhysicalMemorySize();
|
||||
if (availableRAM == null) return;
|
||||
|
Reference in New Issue
Block a user