diff --git a/apps/android/app/src/main/java/chat/simplex/app/views/chat/SendMsgView.kt b/apps/android/app/src/main/java/chat/simplex/app/views/chat/SendMsgView.kt index 379cc36b4..506323334 100644 --- a/apps/android/app/src/main/java/chat/simplex/app/views/chat/SendMsgView.kt +++ b/apps/android/app/src/main/java/chat/simplex/app/views/chat/SendMsgView.kt @@ -62,7 +62,7 @@ fun SendMsgView( allowedVoiceByPrefs: Boolean, allowVoiceToContact: () -> Unit, sendMessage: () -> Unit, - sendLiveMessage: ( suspend () -> Unit)? = null, + sendLiveMessage: (suspend () -> Unit)? = null, updateLiveMessage: (suspend () -> Unit)? = null, cancelLiveMessage: (() -> Unit)? = null, onMessageChange: (String) -> Unit, @@ -70,7 +70,7 @@ fun SendMsgView( ) { Box(Modifier.padding(vertical = 8.dp)) { val cs = composeState.value - val showProgress = cs.inProgress && (cs.preview is ComposePreview.ImagePreview || cs.preview is ComposePreview.FilePreview) + val showProgress = cs.inProgress && (cs.preview is ComposePreview.ImagePreview || cs.preview is ComposePreview.FilePreview) val showVoiceButton = cs.message.isEmpty() && showVoiceRecordIcon && !composeState.value.editing && cs.liveMessage == null && (cs.preview is ComposePreview.NoPreview || recState.value is RecordingState.Started) NativeKeyboard(composeState, textStyle, onMessageChange) @@ -126,13 +126,13 @@ fun SendMsgView( } else -> { val icon = if (cs.editing || cs.liveMessage != null) Icons.Filled.Check else Icons.Outlined.ArrowUpward - val color = if (cs.sendEnabled() && cs.message.isNotEmpty()) MaterialTheme.colors.primary else HighOrLowlight + val color = if (cs.sendEnabled()) MaterialTheme.colors.primary else HighOrLowlight if (composeState.value.liveMessage == null && cs.preview !is ComposePreview.VoicePreview && !cs.editing && sendLiveMessage != null && updateLiveMessage != null ) { var showDropdown by rememberSaveable { mutableStateOf(false) } - SendTextButton(icon, color, sendButtonSize, sendButtonAlpha, cs.sendEnabled(), sendMessage) { showDropdown = true } + SendMsgButton(icon, color, sendButtonSize, sendButtonAlpha, cs.sendEnabled(), sendMessage) { showDropdown = true } DropdownMenu( expanded = showDropdown, @@ -149,7 +149,7 @@ fun SendMsgView( ) } } else { - SendTextButton(icon, color, sendButtonSize, sendButtonAlpha, cs.sendEnabled() && cs.message.isNotEmpty(), sendMessage) + SendMsgButton(icon, color, sendButtonSize, sendButtonAlpha, cs.sendEnabled(), sendMessage) } } } @@ -171,7 +171,6 @@ private fun NativeKeyboard( val paddingTop = with(LocalDensity.current) { 7.dp.roundToPx() } val paddingEnd = with(LocalDensity.current) { 45.dp.roundToPx() } val paddingBottom = with(LocalDensity.current) { 7.dp.roundToPx() } - var showKeyboard by remember { mutableStateOf(false) } LaunchedEffect(cs.contextItem) { if (cs.contextItem is ComposeContextItem.QuotedItem) { @@ -192,6 +191,7 @@ private fun NativeKeyboard( ) { super.setOnReceiveContentListener(mimeTypes, listener) } + override fun onCreateInputConnection(editorInfo: EditorInfo): InputConnection { val connection = super.onCreateInputConnection(editorInfo) EditorInfoCompat.setContentMimeTypes(editorInfo, arrayOf("image/*")) @@ -344,7 +344,6 @@ private fun LockToCurrentOrientationUntilDispose() { } } - @Composable private fun StopRecordButton(onClick: () -> Unit) { IconButton(onClick, Modifier.size(36.dp)) { @@ -395,7 +394,7 @@ private fun CancelLiveMessageButton( } @Composable -private fun SendTextButton( +private fun SendMsgButton( icon: ImageVector, backgroundColor: Color, sizeDp: Animatable, @@ -573,7 +572,7 @@ fun PreviewSendMsgViewEditing() { SendMsgView( composeState = remember { mutableStateOf(composeStateEditing) }, showVoiceRecordIcon = false, - recState = remember { mutableStateOf(RecordingState.NotStarted) }, + recState = remember { mutableStateOf(RecordingState.NotStarted) }, isDirectChat = true, liveMessageAlertShown = SharedPreference(get = { true }, set = { }), needToAllowVoiceToContact = false,