Draft : refactor a bit ComposerMode and formatting management so we don't mess up with draft restoration.
This commit is contained in:
parent
2d324a7f4b
commit
321c2dca30
7 changed files with 87 additions and 72 deletions
|
|
@ -601,7 +601,7 @@ internal fun TextComposerEditPreview() = ElementPreview {
|
|||
ATextComposer(
|
||||
TextEditorState.Rich(aRichTextEditorState(initialText = "A message", initialFocus = true)),
|
||||
voiceMessageState = VoiceMessageState.Idle,
|
||||
composerMode = MessageComposerMode.Edit(EventId("$1234"), "Some text", TransactionId("1234")),
|
||||
composerMode = MessageComposerMode.Edit(EventId("$1234"), TransactionId("1234"), "Some text"),
|
||||
enableVoiceMessages = true,
|
||||
currentUserId = UserId("@alice:localhost")
|
||||
)
|
||||
|
|
@ -615,7 +615,7 @@ internal fun MarkdownTextComposerEditPreview() = ElementPreview {
|
|||
ATextComposer(
|
||||
TextEditorState.Markdown(aMarkdownTextEditorState(initialText = "A message", initialFocus = true)),
|
||||
voiceMessageState = VoiceMessageState.Idle,
|
||||
composerMode = MessageComposerMode.Edit(EventId("$1234"), "Some text", TransactionId("1234")),
|
||||
composerMode = MessageComposerMode.Edit(EventId("$1234"), TransactionId("1234"), "Some text"),
|
||||
enableVoiceMessages = true,
|
||||
currentUserId = UserId("@alice:localhost")
|
||||
)
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ internal fun SendButton(
|
|||
@Composable
|
||||
internal fun SendButtonPreview() = ElementPreview {
|
||||
val normalMode = MessageComposerMode.Normal
|
||||
val editMode = MessageComposerMode.Edit(null, "", null)
|
||||
val editMode = MessageComposerMode.Edit(null, null, "")
|
||||
Row {
|
||||
SendButton(canSendMessage = true, onClick = {}, composerMode = normalMode)
|
||||
SendButton(canSendMessage = false, onClick = {}, composerMode = normalMode)
|
||||
|
|
|
|||
|
|
@ -29,9 +29,11 @@ sealed interface MessageComposerMode {
|
|||
|
||||
sealed interface Special : MessageComposerMode
|
||||
|
||||
data class Edit(val eventId: EventId?, val content: String, val transactionId: TransactionId?) : Special
|
||||
|
||||
class Quote(val eventId: EventId, val content: String) : Special
|
||||
data class Edit(
|
||||
val eventId: EventId?,
|
||||
val transactionId: TransactionId?,
|
||||
val content: String
|
||||
) : Special
|
||||
|
||||
class Reply(
|
||||
val replyToDetails: InReplyToDetails
|
||||
|
|
@ -43,7 +45,6 @@ sealed interface MessageComposerMode {
|
|||
get() = when (this) {
|
||||
is Normal -> null
|
||||
is Edit -> eventId
|
||||
is Quote -> eventId
|
||||
is Reply -> eventId
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue