From d0b145d031de0d92fe99fbae447163691b5c0e7d Mon Sep 17 00:00:00 2001 From: Valere Date: Thu, 11 Jul 2019 12:29:02 +0200 Subject: [PATCH 1/2] Edit emote --- .../api/session/room/model/relation/RelationService.kt | 2 +- .../internal/session/room/relation/DefaultRelationService.kt | 4 ++-- .../internal/session/room/send/LocalEchoEventFactory.kt | 2 +- .../matrix/android/internal/session/room/send/TextContent.kt | 4 ++-- .../matrix/android/api/pushrules/PushrulesConditionTest.kt | 2 +- .../riotx/features/home/room/detail/RoomDetailViewModel.kt | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt index dbd23a58..9f93a3cf 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt @@ -69,7 +69,7 @@ interface RelationService { * @param newBodyText The edited body * @param compatibilityBodyText The text that will appear on clients that don't support yet edition */ - fun editTextMessage(targetEventId: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String = "* $newBodyText"): Cancelable + fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String = "* $newBodyText"): Cancelable /** diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt index ecbd0036..09e9fa4a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt @@ -116,9 +116,9 @@ internal class DefaultRelationService @Inject constructor(private val context: C return TimelineSendEventWorkCommon.createWork(redactWorkData) } - override fun editTextMessage(targetEventId: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { + override fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { val event = eventFactory - .createReplaceTextEvent(roomId, targetEventId, newBodyText, newBodyAutoMarkdown, MessageType.MSGTYPE_TEXT, compatibilityBodyText) + .createReplaceTextEvent(roomId, targetEventId, newBodyText, newBodyAutoMarkdown, msgType, compatibilityBodyText) .also { saveLocalEcho(it) } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt index 179f143d..67d1eabc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt @@ -99,7 +99,7 @@ internal class LocalEchoEventFactory @Inject constructor(private val credentials body = compatibilityText, relatesTo = RelationDefaultContent(RelationType.REPLACE, targetEventId), newContent = createTextContent(newBodyText, newBodyAutoMarkdown) - .toMessageTextContent() + .toMessageTextContent(msgType) .toContent() )) } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt index 9e2c785c..eaf367d4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt @@ -31,9 +31,9 @@ data class TextContent( } -fun TextContent.toMessageTextContent(): MessageTextContent { +fun TextContent.toMessageTextContent(msgType : String = MessageType.MSGTYPE_TEXT): MessageTextContent { return MessageTextContent( - type = MessageType.MSGTYPE_TEXT, + type = msgType, format = MessageType.FORMAT_MATRIX_HTML.takeIf { formattedText != null }, body = text, formattedBody = formattedText diff --git a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt index 70eb658b..0fab8350 100644 --- a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt +++ b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt @@ -281,7 +281,7 @@ class PushrulesConditionTest { TODO("not implemented") //To change body of created functions use File | Settings | File Templates. } - override fun editTextMessage(targetEventId: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { + override fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { TODO("not implemented") //To change body of created functions use File | Settings | File Templates. } diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt index 0b698108..2a19914a 100644 --- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt +++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt @@ -237,7 +237,7 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro if (nonFormattedBody != action.text) { room.editTextMessage(state.sendMode.timelineEvent.root.eventId - ?: "", action.text, action.autoMarkdown) + ?: "", messageContent?.type ?: MessageType.MSGTYPE_TEXT, action.text, action.autoMarkdown) } else { Timber.w("Same message content, do not send edition") } From 65e123d87f1e37b46ca2afb08e5a4df3ad54b754 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 11 Jul 2019 13:32:28 +0200 Subject: [PATCH 2/2] Split long lines --- .../room/model/relation/RelationService.kt | 17 +++++++++++++---- .../room/relation/DefaultRelationService.kt | 7 +++++-- .../internal/session/room/send/TextContent.kt | 2 +- .../api/pushrules/PushrulesConditionTest.kt | 3 ++- 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt index 9f93a3cf..81d7ddd4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt @@ -51,7 +51,8 @@ interface RelationService { * @param reaction the reaction (preferably emoji) * @param targetEventId the id of the event being reacted */ - fun sendReaction(reaction: String, targetEventId: String): Cancelable + fun sendReaction(reaction: String, + targetEventId: String): Cancelable /** @@ -60,7 +61,9 @@ interface RelationService { * @param targetEventId the id of the event being reacted * @param myUserId used to know if a reaction event was made by the user */ - fun undoReaction(reaction: String, targetEventId: String, myUserId: String)//: Cancelable + fun undoReaction(reaction: String, + targetEventId: String, + myUserId: String)//: Cancelable /** @@ -69,7 +72,11 @@ interface RelationService { * @param newBodyText The edited body * @param compatibilityBodyText The text that will appear on clients that don't support yet edition */ - fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String = "* $newBodyText"): Cancelable + fun editTextMessage(targetEventId: String, + msgType: String, + newBodyText: String, + newBodyAutoMarkdown: Boolean, + compatibilityBodyText: String = "* $newBodyText"): Cancelable /** @@ -79,7 +86,9 @@ interface RelationService { * @param replyText the reply text * @param autoMarkdown If true, the SDK will generate a formatted HTML message from the body text if markdown syntax is present */ - fun replyToMessage(eventReplied: TimelineEvent, replyText: String, autoMarkdown: Boolean = false): Cancelable? + fun replyToMessage(eventReplied: TimelineEvent, + replyText: String, + autoMarkdown: Boolean = false): Cancelable? fun getEventSummaryLive(eventId: String): LiveData } \ No newline at end of file diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt index 09e9fa4a..3eb1c066 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt @@ -25,7 +25,6 @@ import im.vector.matrix.android.api.auth.data.Credentials import im.vector.matrix.android.api.session.crypto.CryptoService import im.vector.matrix.android.api.session.events.model.Event import im.vector.matrix.android.api.session.room.model.EventAnnotationsSummary -import im.vector.matrix.android.api.session.room.model.message.MessageType import im.vector.matrix.android.api.session.room.model.relation.RelationService import im.vector.matrix.android.api.session.room.timeline.TimelineEvent import im.vector.matrix.android.api.util.Cancelable @@ -116,7 +115,11 @@ internal class DefaultRelationService @Inject constructor(private val context: C return TimelineSendEventWorkCommon.createWork(redactWorkData) } - override fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { + override fun editTextMessage(targetEventId: String, + msgType: String, + newBodyText: String, + newBodyAutoMarkdown: Boolean, + compatibilityBodyText: String): Cancelable { val event = eventFactory .createReplaceTextEvent(roomId, targetEventId, newBodyText, newBodyAutoMarkdown, msgType, compatibilityBodyText) .also { diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt index eaf367d4..3061bd83 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt @@ -31,7 +31,7 @@ data class TextContent( } -fun TextContent.toMessageTextContent(msgType : String = MessageType.MSGTYPE_TEXT): MessageTextContent { +fun TextContent.toMessageTextContent(msgType: String = MessageType.MSGTYPE_TEXT): MessageTextContent { return MessageTextContent( type = msgType, format = MessageType.FORMAT_MATRIX_HTML.takeIf { formattedText != null }, diff --git a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt index 0fab8350..3d4df602 100644 --- a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt +++ b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt @@ -281,7 +281,8 @@ class PushrulesConditionTest { TODO("not implemented") //To change body of created functions use File | Settings | File Templates. } - override fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { + override fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, + newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { TODO("not implemented") //To change body of created functions use File | Settings | File Templates. }