Try to improve composer...

This commit is contained in:
ganfra 2022-11-22 18:15:32 +01:00
parent 68e7c019c7
commit bf91ce615f
3 changed files with 23 additions and 9 deletions

View file

@ -4,8 +4,8 @@
<!-- Alias to the palette colors <!-- Alias to the palette colors
Source: https://www.figma.com/file/X4XTH9iS2KGJ2wFKDqkyed/Compound?node-id=1521%3A23026 --> Source: https://www.figma.com/file/X4XTH9iS2KGJ2wFKDqkyed/Compound?node-id=1521%3A23026 -->
<color name="element_accent_light">@color/palette_element_green</color> <color name="element_accent_light">@android:color/black</color>
<color name="element_accent_dark">@color/palette_element_green</color> <color name="element_accent_dark">@android:color/white</color>
<color name="element_alert_light">@color/palette_vermilion</color> <color name="element_alert_light">@color/palette_vermilion</color>
<color name="element_alert_dark">@color/palette_vermilion</color> <color name="element_alert_dark">@color/palette_vermilion</color>

View file

@ -1,6 +1,10 @@
package io.element.android.x.textcomposer package io.element.android.x.textcomposer
import android.content.res.ColorStateList
import android.graphics.Color
import android.net.Uri import android.net.Uri
import androidx.appcompat.widget.AppCompatEditText
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.viewinterop.AndroidView import androidx.compose.ui.viewinterop.AndroidView
@ -18,6 +22,7 @@ fun TextComposer(
composerCanSendMessage: Boolean, composerCanSendMessage: Boolean,
composerText: CharSequence?, composerText: CharSequence?,
) { ) {
val isInDarkMode = isSystemInDarkTheme()
AndroidView( AndroidView(
modifier = modifier, modifier = modifier,
factory = { context -> factory = { context ->
@ -52,9 +57,9 @@ fun TextComposer(
} }
} }
val messageComposerView = (this as MessageComposerView) (this as MessageComposerView).apply {
messageComposerView.toggleFullScreen(fullscreen) setup(fullscreen, isInDarkMode)
setupComposer(messageComposerView) }
} }
}, },
update = { view -> update = { view ->
@ -72,8 +77,16 @@ fun TextComposer(
) )
} }
private fun setupComposer(messageComposerView: MessageComposerView) { private fun MessageComposerView.setup(fullscreen: Boolean, isDarkMode: Boolean) {
messageComposerView.editText.setHint(ElementR.string.room_message_placeholder) val editTextColor = if(isDarkMode){
messageComposerView.emojiButton?.isVisible = true Color.WHITE
messageComposerView.sendButton.isVisible = true }else{
Color.BLACK
}
editText.setTextColor(editTextColor)
editText.setHintTextColor(editTextColor)
toggleFullScreen(fullscreen)
editText.setHint(ElementR.string.room_message_placeholder)
emojiButton?.isVisible = true
sendButton.isVisible = true
} }

View file

@ -109,6 +109,7 @@
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="top" android:gravity="top"
android:textCursorDrawable="@null"
android:nextFocusLeft="@id/richTextComposerEditText" android:nextFocusLeft="@id/richTextComposerEditText"
android:nextFocusUp="@id/richTextComposerEditText" android:nextFocusUp="@id/richTextComposerEditText"
tools:hint="@string/room_message_placeholder" tools:hint="@string/room_message_placeholder"