From 6bca8be525af160fd3fd35d340be0f9eafbab3f8 Mon Sep 17 00:00:00 2001 From: jonnyandrew Date: Fri, 29 Sep 2023 17:29:57 +0100 Subject: [PATCH] Fix composer options bottom sheet position (#1469) --- .../features/messages/impl/MessagesView.kt | 10 ++++- .../messagecomposer/MessageComposerView.kt | 43 ++++++------------- 2 files changed, 22 insertions(+), 31 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt index 88090f022c..7a0ff89523 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt @@ -50,6 +50,7 @@ import io.element.android.features.messages.impl.actionlist.ActionListEvents import io.element.android.features.messages.impl.actionlist.ActionListView import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction import io.element.android.features.messages.impl.attachments.Attachment +import io.element.android.features.messages.impl.messagecomposer.AttachmentsBottomSheet import io.element.android.features.messages.impl.messagecomposer.AttachmentsState import io.element.android.features.messages.impl.messagecomposer.MessageComposerEvents import io.element.android.features.messages.impl.messagecomposer.MessageComposerView @@ -283,6 +284,13 @@ private fun MessagesViewContent( .navigationBarsPadding() .imePadding(), ) { + AttachmentsBottomSheet( + state = state.composerState, + onSendLocationClicked = onSendLocationClicked, + onCreatePollClicked = onCreatePollClicked, + enableTextFormatting = state.enableTextFormatting, + ) + ExpandableBottomSheetScaffold( sheetDragHandle = if (state.composerState.showTextFormatting) { @Composable { BottomSheetDragHandle() } @@ -310,8 +318,6 @@ private fun MessagesViewContent( MessageComposerView( state = state.composerState, subcomposing = subcomposing, - onSendLocationClicked = onSendLocationClicked, - onCreatePollClicked = onCreatePollClicked, enableTextFormatting = state.enableTextFormatting, modifier = Modifier .fillMaxWidth(), diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerView.kt index b2ab7d5da2..938da1dcaf 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerView.kt @@ -16,7 +16,6 @@ package io.element.android.features.messages.impl.messagecomposer -import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.IntrinsicSize import androidx.compose.foundation.layout.height @@ -35,8 +34,6 @@ import kotlinx.coroutines.launch fun MessageComposerView( state: MessageComposerState, subcomposing: Boolean, - onSendLocationClicked: () -> Unit, - onCreatePollClicked: () -> Unit, enableTextFormatting: Boolean, modifier: Modifier = Modifier, ) { @@ -67,28 +64,20 @@ fun MessageComposerView( } } - Box(modifier = modifier) { - AttachmentsBottomSheet( - state = state, - onSendLocationClicked = onSendLocationClicked, - onCreatePollClicked = onCreatePollClicked, - enableTextFormatting = enableTextFormatting, - ) - - TextComposer( - state = state.richTextEditorState, - subcomposing = subcomposing, - onRequestFocus = ::onRequestFocus, - onSendMessage = ::sendMessage, - composerMode = state.mode, - showTextFormatting = state.showTextFormatting, - onResetComposerMode = ::onCloseSpecialMode, - onAddAttachment = ::onAddAttachment, - onDismissTextFormatting = ::onDismissTextFormatting, - enableTextFormatting = enableTextFormatting, - onError = ::onError, - ) - } + TextComposer( + modifier = modifier, + state = state.richTextEditorState, + subcomposing = subcomposing, + onRequestFocus = ::onRequestFocus, + onSendMessage = ::sendMessage, + composerMode = state.mode, + showTextFormatting = state.showTextFormatting, + onResetComposerMode = ::onCloseSpecialMode, + onAddAttachment = ::onAddAttachment, + onDismissTextFormatting = ::onDismissTextFormatting, + enableTextFormatting = enableTextFormatting, + onError = ::onError, + ) } @PreviewsDayNight @@ -98,16 +87,12 @@ internal fun MessageComposerViewPreview(@PreviewParameter(MessageComposerStatePr MessageComposerView( modifier = Modifier.height(IntrinsicSize.Min), state = state, - onSendLocationClicked = {}, - onCreatePollClicked = {}, enableTextFormatting = true, subcomposing = false, ) MessageComposerView( modifier = Modifier.height(200.dp), state = state, - onSendLocationClicked = {}, - onCreatePollClicked = {}, enableTextFormatting = true, subcomposing = false, )