Hide emoji picker toggle from chat message sending bar when a non-emoji character has been typed
This commit is contained in:
parent
747f5288b8
commit
53e9d92ea4
2 changed files with 7 additions and 22 deletions
|
@ -174,6 +174,10 @@ class ChatMessageSendingViewModel(private val chatRoom: ChatRoom) : ViewModel()
|
|||
|
||||
fun onTextToSendChanged(value: String) {
|
||||
sendMessageEnabled.value = value.trim().isNotEmpty() || attachments.value?.isNotEmpty() == true || isPendingVoiceRecord.value == true
|
||||
|
||||
val showEmojiPicker = value.isEmpty() || AppUtils.isTextOnlyContainingEmoji(value)
|
||||
isEmojiPickerVisible.value = corePreferences.showEmojiPickerButton && showEmojiPicker
|
||||
|
||||
if (value.isNotEmpty()) {
|
||||
if (attachFileEnabled.value == true && !corePreferences.allowMultipleFilesAndTextInSameMessage) {
|
||||
attachFileEnabled.value = false
|
||||
|
|
|
@ -125,7 +125,6 @@
|
|||
android:layout_width="@dimen/chat_message_sending_icons_size"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginStart="@dimen/chat_message_sending_icons_margin"
|
||||
android:layout_marginEnd="@dimen/chat_message_sending_icons_margin"
|
||||
android:contentDescription="@string/content_description_attach_file"
|
||||
android:enabled="@{chatSendingViewModel.attachFileEnabled && !chatSendingViewModel.attachFilePending}"
|
||||
android:onClick="@{attachFileClickListener}"
|
||||
|
@ -142,7 +141,6 @@
|
|||
android:layout_width="@dimen/chat_message_sending_icons_size"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginStart="@dimen/chat_message_sending_icons_margin"
|
||||
android:layout_marginEnd="@dimen/chat_message_sending_icons_margin"
|
||||
android:contentDescription="@string/content_description_voice_recording"
|
||||
android:onClick="@{() -> chatSendingViewModel.toggleVoiceRecording()}"
|
||||
android:onTouch="@{voiceRecordingTouchListener}"
|
||||
|
@ -162,6 +160,7 @@
|
|||
android:layout_below="@id/emoji_picker"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_marginStart="@dimen/chat_message_sending_icons_margin"
|
||||
android:layout_marginEnd="@{chatSendingViewModel.isEmojiPickerVisible ? @dimen/margin_0dp : @dimen/chat_message_sending_icons_margin}"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginBottom="10dp"
|
||||
android:background="@color/header_background_color"
|
||||
|
@ -174,37 +173,20 @@
|
|||
android:textColor="@color/black_color"
|
||||
android:textCursorDrawable="@null"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@id/message_right_barrier"
|
||||
app:layout_constraintEnd_toStartOf="@id/emoji_picker_toggle"
|
||||
app:layout_constraintStart_toEndOf="@id/voice_record"
|
||||
app:layout_constraintTop_toBottomOf="@id/emoji_picker" />
|
||||
|
||||
<androidx.constraintlayout.widget.Barrier
|
||||
android:id="@+id/message_right_barrier"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:barrierDirection="left"
|
||||
app:constraint_referenced_ids="send_message, emoji_picker_toggle"/>
|
||||
|
||||
<View
|
||||
android:id="@+id/emoji_picker_bg"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:background="@color/header_background_color"
|
||||
app:layout_constraintBottom_toBottomOf="@id/message"
|
||||
app:layout_constraintStart_toStartOf="@id/emoji_picker_toggle"
|
||||
app:layout_constraintEnd_toEndOf="@id/emoji_picker_toggle"
|
||||
app:layout_constraintTop_toTopOf="@id/message" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/emoji_picker_toggle"
|
||||
android:layout_width="@dimen/chat_message_sending_icons_size"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginStart="@dimen/chat_message_sending_icons_margin"
|
||||
android:layout_marginEnd="@dimen/chat_message_sending_icons_margin"
|
||||
android:onClick="@{() -> chatSendingViewModel.toggleEmojiPicker()}"
|
||||
android:paddingTop="@dimen/chat_message_sending_icons_margin"
|
||||
android:paddingBottom="@dimen/chat_message_sending_icons_margin"
|
||||
android:src="@drawable/emoji"
|
||||
android:background="@color/header_background_color"
|
||||
android:contentDescription="@string/content_description_emoji_picker"
|
||||
android:selected="@{chatSendingViewModel.isEmojiPickerOpen}"
|
||||
android:visibility="@{chatSendingViewModel.isEmojiPickerVisible ? View.VISIBLE : View.GONE}"
|
||||
|
@ -217,7 +199,6 @@
|
|||
android:id="@+id/send_message"
|
||||
android:layout_width="@dimen/chat_message_sending_icons_size"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginStart="@dimen/chat_message_sending_icons_margin"
|
||||
android:layout_marginEnd="@dimen/chat_message_sending_icons_margin"
|
||||
android:contentDescription="@string/content_description_send_message"
|
||||
android:enabled="@{chatSendingViewModel.sendMessageEnabled && !chatSendingViewModel.attachingFileInProgress}"
|
||||
|
|
Loading…
Reference in a new issue