diff --git a/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt index 56a732ece..d06417a31 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt @@ -157,7 +157,7 @@ class GiftFlowConfirmationFragment : viewModel.setAdditionalMessage(it) }, onEmojiToggleClicked = { - if (inputAwareLayout.isKeyboardOpen || (!inputAwareLayout.isKeyboardOpen && !inputAwareLayout.isInputOpen)) { + if ((inputAwareLayout.isKeyboardOpen && !emojiKeyboard.isEmojiSearchMode) || (!inputAwareLayout.isKeyboardOpen && !inputAwareLayout.isInputOpen)) { inputAwareLayout.show(it, emojiKeyboard) emojiToggle.setImageResource(R.drawable.ic_keyboard_24) } else { diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/InputPanel.java b/app/src/main/java/org/thoughtcrime/securesms/components/InputPanel.java index 5cdee7a7a..89e0e488f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/InputPanel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/InputPanel.java @@ -489,6 +489,10 @@ public class InputPanel extends LinearLayout mediaKeyboard.setToMedia(); } + public void setToIme() { + mediaKeyboard.setToIme(); + } + @Override public void onKeyEvent(KeyEvent keyEvent) { composeText.dispatchKeyEvent(keyEvent); diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationParentFragment.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationParentFragment.java index d1832e71b..56a6bec30 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationParentFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationParentFragment.java @@ -1171,8 +1171,12 @@ public class ConversationParentFragment extends Fragment @Override public void onKeyboardShown() { inputPanel.onKeyboardShown(); - if (emojiDrawerStub.resolved() && emojiDrawerStub.get().isShowing() && !emojiDrawerStub.get().isEmojiSearchMode()) { - emojiDrawerStub.get().hide(true); + if (emojiDrawerStub.resolved() && emojiDrawerStub.get().isShowing()) { + if (emojiDrawerStub.get().isEmojiSearchMode()) { + inputPanel.setToIme(); + } else { + emojiDrawerStub.get().hide(true); + } } if (attachmentKeyboardStub.resolved() && attachmentKeyboardStub.get().isShowing()) { navigationBarBackground.setVisibility(View.GONE); 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 6aeed0cef..e388709bb 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 @@ -147,8 +147,12 @@ class AddMessageDialogFragment : KeyboardEntryDialogFragment(R.layout.v2_media_a override fun onKeyboardShown() { super.onKeyboardShown() - if (emojiDrawerStub.resolved() && emojiDrawerStub.get().isShowing && !emojiDrawerStub.get().isEmojiSearchMode) { - emojiDrawerStub.get().hide(true) + if (emojiDrawerStub.resolved() && emojiDrawerStub.get().isShowing) { + if (emojiDrawerStub.get().isEmojiSearchMode) { + binding.content.emojiToggle.setToIme() + } else { + emojiDrawerStub.get().hide(true) + } } }