From eaa15ef34174338466c645d221cac7188ef271fc Mon Sep 17 00:00:00 2001 From: acclorite Date: Wed, 7 Aug 2024 13:54:33 +0300 Subject: [PATCH] Fix: Can fast switch presets while book is loading in ReaderScreen. --- .../book_story/presentation/screens/reader/ReaderScreen.kt | 1 + .../screens/reader/components/ReaderFastColorPresetChange.kt | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/ReaderScreen.kt b/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/ReaderScreen.kt index 8d6a84a5..de97e874 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/ReaderScreen.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/ReaderScreen.kt @@ -331,6 +331,7 @@ private fun ReaderScreen( ) .readerFastColorPresetChange( fastColorPresetChangeEnabled = mainState.value.fastColorPresetChange!!, + isLoading = state.value.loading, toolbarHidden = toolbarHidden, onSettingsEvent = onSettingsEvent, presetChanged = { diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/components/ReaderFastColorPresetChange.kt b/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/components/ReaderFastColorPresetChange.kt index 88585ed1..0644ba20 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/components/ReaderFastColorPresetChange.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/screens/reader/components/ReaderFastColorPresetChange.kt @@ -14,6 +14,7 @@ import ua.acclorite.book_story.presentation.screens.settings.data.SettingsEvent * Detects horizontal swipe gestures. * * @param fastColorPresetChangeEnabled Whether this is enabled. + * @param isLoading Whether Reader is loading. * @param toolbarHidden Whether toolbar(selection) is hidden. * @param onSettingsEvent [SettingsEvent] callback. * @param presetChanged Callback when Color Preset was changed. @@ -21,13 +22,14 @@ import ua.acclorite.book_story.presentation.screens.settings.data.SettingsEvent @Composable fun Modifier.readerFastColorPresetChange( fastColorPresetChangeEnabled: Boolean, + isLoading: Boolean, toolbarHidden: Boolean, onSettingsEvent: (SettingsEvent) -> Unit, presetChanged: (UIText) -> Unit ): Modifier { val offset = remember { mutableFloatStateOf(0f) } return this.then( - if (fastColorPresetChangeEnabled && toolbarHidden) { + if (fastColorPresetChangeEnabled && toolbarHidden && !isLoading) { Modifier.pointerInput(Unit) { detectHorizontalDragGestures( onDragStart = { offset.floatValue = 0f },