diff --git a/src/modules/reader/services/ReaderControls.ts b/src/modules/reader/services/ReaderControls.ts index c7482af6..17f37bc9 100644 --- a/src/modules/reader/services/ReaderControls.ts +++ b/src/modules/reader/services/ReaderControls.ts @@ -239,8 +239,9 @@ export class ReaderControls { const isAlreadyLoaded = lastLeadingChapterSourceOrder <= chapterToOpen.sourceOrder && lastTrailingChapterSourceOrder >= chapterToOpen.sourceOrder; + const keepRenderedChapters = !scrollIntoView || isAlreadyLoaded; - if (isAlreadyLoaded) { + if (keepRenderedChapters) { setReaderStateChapters((prevState) => updateReaderStateVisibleChapters( isPreviousChapter, @@ -255,7 +256,7 @@ export class ReaderControls { openChapter(chapterToOpen, { resumeMode: getReaderOpenChapterResumeMode(isSpecificChapterMode, isPreviousChapter), - updateInitialChapter: !isAlreadyLoaded, + updateInitialChapter: !keepRenderedChapters, }); } catch (error) { defaultPromiseErrorHandler('ReaderControls#useOpenChapter#doOpenChapter:')(error);