diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryFirstNavigationStub.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryFirstNavigationStub.kt index 21f122bec..22289fdb4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryFirstNavigationStub.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryFirstNavigationStub.kt @@ -1,6 +1,7 @@ package org.thoughtcrime.securesms.stories.viewer.page import android.view.ViewStub +import androidx.core.view.isVisible import org.thoughtcrime.securesms.blurhash.BlurHash import org.thoughtcrime.securesms.stories.StoryFirstTimeNavigationView import org.thoughtcrime.securesms.util.views.Stub @@ -29,6 +30,22 @@ class StoryFirstNavigationStub(viewStub: ViewStub) : Stub { hideChromeImmediate() storyCaptionContainer.visible = false - storyFirstTimeNavigationViewStub.takeIf { it.resolved() }?.get()?.hide() + storyFirstTimeNavigationViewStub.hide() } state.hideChrome -> { hideChrome() storyCaptionContainer.visible = true - storyFirstTimeNavigationViewStub.get().show() + storyFirstTimeNavigationViewStub.showIfAble(!SignalStore.storyValues().userHasSeenFirstNavView) } else -> { showChrome() storyCaptionContainer.visible = true - storyFirstTimeNavigationViewStub.get().show() + storyFirstTimeNavigationViewStub.showIfAble(!SignalStore.storyValues().userHasSeenFirstNavView) } } - val isDisplayingNavigationView = isFirstTimeNavVisible() + val isDisplayingNavigationView = storyFirstTimeNavigationViewStub.isVisible() if (isDisplayingNavigationView && Build.VERSION.SDK_INT >= 31) { hideChromeImmediate() storyContentContainer.setRenderEffect(RenderEffect.createBlurEffect(100f, 100f, Shader.TileMode.CLAMP)) @@ -419,7 +419,7 @@ class StoryViewerPageFragment : } if (wasDisplayingNavigationView xor isDisplayingNavigationView) { - viewModel.setIsDisplayingFirstTimeNavigation(isFirstTimeNavVisible()) + viewModel.setIsDisplayingFirstTimeNavigation(storyFirstTimeNavigationViewStub.isVisible()) } } @@ -473,10 +473,6 @@ class StoryViewerPageFragment : viewModel.setIsDisplayingForwardDialog(false) } - private fun isFirstTimeNavVisible(): Boolean { - return storyFirstTimeNavigationViewStub.takeIf { it.resolved() }?.get()?.isVisible ?: false - } - private fun calculateDurationForText(textContent: StoryPost.Content.TextContent): Long { val divisionsOf15 = textContent.length / CHARACTERS_PER_SECOND return TimeUnit.SECONDS.toMillis(divisionsOf15) + MIN_TEXT_STORY_PLAYBACK