Trampoline call to generate preview if view is not laid out.

This commit is contained in:
Alex Hart
2022-03-24 13:54:03 -03:00
committed by Greyson Parrelli
parent dddf830e47
commit 5b3899237b

View File

@@ -78,14 +78,24 @@ class StoryTextPostPreviewFragment : Fragment(R.layout.stories_text_post_preview
private fun loadPreview(storyTextThumb: ImageView, storyTextPreview: StoryTextPostView) {
storyTextPreview.doOnNextLayout {
storyTextThumb.setImageBitmap(storyTextPreview.drawToBitmap())
requireActivity().supportStartPostponedEnterTransition()
storyTextThumb.postDelayed({
storyTextThumb.visible = false
}, 200)
if (it.isLaidOut) {
actualLoadPreview(storyTextThumb, storyTextPreview)
} else {
it.post {
actualLoadPreview(storyTextThumb, storyTextPreview)
}
}
}
}
private fun actualLoadPreview(storyTextThumb: ImageView, storyTextPreview: StoryTextPostView) {
storyTextThumb.setImageBitmap(storyTextPreview.drawToBitmap())
requireActivity().supportStartPostponedEnterTransition()
storyTextThumb.postDelayed({
storyTextThumb.visible = false
}, 200)
}
@SuppressLint("AlertDialogBuilderUsage")
private fun showLinkPreviewTooltip(view: View, linkPreview: LinkPreview) {
requireListener<Callback>().setIsDisplayingLinkPreviewTooltip(true)