From 55dc9471d91289b4068fe1362ff0db0312809331 Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Mon, 30 Dec 2024 19:56:41 +0100 Subject: [PATCH] Hide chapter transition page in single/double pagers Transition page got opened and never closed again due to not correctly detecting that a transition page is currently visible --- src/modules/reader/services/ReaderControls.ts | 4 +--- src/modules/reader/utils/ReaderPager.utils.tsx | 5 +++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/modules/reader/services/ReaderControls.ts b/src/modules/reader/services/ReaderControls.ts index c1dd595d..2955fd1d 100644 --- a/src/modules/reader/services/ReaderControls.ts +++ b/src/modules/reader/services/ReaderControls.ts @@ -281,7 +281,6 @@ export class ReaderControls { const isFirstPage = currentPage.primary.index === 0; const isLastPage = currentPageIndex === indexOfLastPage; const isATransitionPageVisible = isTransitionPageVisible(transitionPageMode, readingMode.value); - const isContinuousReadingModeActive = isContinuousReadingMode(readingMode.value); return useCallback( (page, forceDirection = direction, hideOverlay: boolean = true) => { @@ -318,7 +317,7 @@ export class ReaderControls { return; } - const needToHideTransitionPage = isATransitionPageVisible && !isContinuousReadingModeActive; + const needToHideTransitionPage = isATransitionPageVisible; switch (convertedPage) { case 'previous': if (isFirstPage) { @@ -360,7 +359,6 @@ export class ReaderControls { nextPageIndex, indexOfLastPage, isATransitionPageVisible, - isContinuousReadingModeActive, isFirstPage, isLastPage, openChapter, diff --git a/src/modules/reader/utils/ReaderPager.utils.tsx b/src/modules/reader/utils/ReaderPager.utils.tsx index 2d0c1d55..5a422447 100644 --- a/src/modules/reader/utils/ReaderPager.utils.tsx +++ b/src/modules/reader/utils/ReaderPager.utils.tsx @@ -484,9 +484,10 @@ export const getPageIndexesToLoad = ( export const isTransitionPageVisible = ( activeMode: ReaderTransitionPageMode, readingMode: IReaderSettings['readingMode'], - transitionPageType?: ReaderTransitionPageMode, + transitionPageType: ReaderTransitionPageMode = activeMode, ): boolean => - [ReaderTransitionPageMode.BOTH, transitionPageType].includes(activeMode) || isContinuousReadingMode(readingMode); + (activeMode !== ReaderTransitionPageMode.NONE && activeMode === transitionPageType) || + isContinuousReadingMode(readingMode); export const getScrollIntoViewInlineOption = ( offset: DirectionOffset,