From 1b49b9bffbe02f8a4de0efd19c6c5b7cb79e4aa4 Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Wed, 15 Feb 2023 12:21:43 -0400 Subject: [PATCH] Hide system UI until the shared element transition completes. --- .../securesms/mediapreview/MediaPreviewV2Fragment.kt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt b/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt index fc9367b50..7c3f80179 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt @@ -185,6 +185,15 @@ class MediaPreviewV2Fragment : LoggingFragment(R.layout.fragment_media_preview_v private fun initializeFullScreenUi() { fullscreenHelper.configureToolbarLayout(binding.toolbarCutoutSpacer, binding.toolbar) fullscreenHelper.showAndHideWithSystemUI(requireActivity().window, binding.toolbarLayout, binding.mediaPreviewDetailsContainer) + fullscreenHelper.hideSystemUI() + + lifecycleDisposable += viewModel.state.map { + it.isInSharedAnimation to it.loadState + }.distinctUntilChanged().subscribe { (isInSharedAnimation, loadState) -> + if (!isInSharedAnimation && loadState == MediaPreviewV2State.LoadState.MEDIA_READY) { + fullscreenHelper.showSystemUI() + } + } } private fun bindCurrentState(currentState: MediaPreviewV2State) {