From 2bf6b993fe2eaac12e8d42cf949f0a4788c7487e Mon Sep 17 00:00:00 2001 From: Nicholas Tinsley Date: Tue, 19 Mar 2024 11:53:08 -0400 Subject: [PATCH] Somewhat reduce emoji keyboard jankiness in media review fragment. --- .../mediasend/v2/review/AddMessageDialogFragment.kt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt index ebdfa944f5..c536eab54d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/review/AddMessageDialogFragment.kt @@ -97,10 +97,7 @@ class AddMessageDialogFragment : KeyboardEntryDialogFragment(R.layout.v2_media_a } else { binding.content.emojiToggle.setOnClickListener { onEmojiToggleClicked() } if (requireArguments().getBoolean(ARG_INITIAL_EMOJI_TOGGLE) && view is KeyboardAwareLinearLayout) { - view.addOnKeyboardShownListener { - onEmojiToggleClicked() - view.removeOnKeyboardShownListener(this) - } + view.addOnKeyboardShownListener(EmojiLaunchListener(view)) } } @@ -291,6 +288,13 @@ class AddMessageDialogFragment : KeyboardEntryDialogFragment(R.layout.v2_media_a binding.content.addAMessageInput.dispatchKeyEvent(keyEvent) } + private inner class EmojiLaunchListener(private val layout: KeyboardAwareLinearLayout) : KeyboardAwareLinearLayout.OnKeyboardShownListener { + override fun onKeyboardShown() { + layout.removeOnKeyboardShownListener(this) + onEmojiToggleClicked() + } + } + companion object { const val TAG = "ADD_MESSAGE_DIALOG_FRAGMENT"