diff --git a/changelog.d/6280.feature b/changelog.d/6280.feature new file mode 100644 index 0000000000..dab8c0dc7b --- /dev/null +++ b/changelog.d/6280.feature @@ -0,0 +1 @@ +Add report action for live location messages diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/Event.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/Event.kt index f28746ad0c..7f9ab4c6dd 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/Event.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/events/model/Event.kt @@ -427,3 +427,6 @@ fun Event.getPollContent(): MessagePollContent? { fun Event.supportsNotification() = this.getClearType() in EventType.MESSAGE + EventType.POLL_START + EventType.STATE_ROOM_BEACON_INFO + +fun Event.isContentReportable() = + this.getClearType() in EventType.MESSAGE + EventType.STATE_ROOM_BEACON_INFO diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/action/MessageActionsViewModel.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/action/MessageActionsViewModel.kt index 15d8eae509..05089cce81 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/action/MessageActionsViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/timeline/action/MessageActionsViewModel.kt @@ -45,6 +45,7 @@ import org.matrix.android.sdk.api.session.Session import org.matrix.android.sdk.api.session.crypto.keysbackup.KeysBackupState import org.matrix.android.sdk.api.session.events.model.EventType import org.matrix.android.sdk.api.session.events.model.isAttachmentMessage +import org.matrix.android.sdk.api.session.events.model.isContentReportable import org.matrix.android.sdk.api.session.events.model.isTextMessage import org.matrix.android.sdk.api.session.events.model.isThread import org.matrix.android.sdk.api.session.events.model.toModel @@ -421,7 +422,7 @@ class MessageActionsViewModel @AssistedInject constructor( add(EventSharedAction.CopyPermalink(eventId)) if (session.myUserId != timelineEvent.root.senderId) { // not sent by me - if (timelineEvent.root.getClearType() == EventType.MESSAGE) { + if (timelineEvent.root.isContentReportable()) { add(EventSharedAction.ReportContent(eventId, timelineEvent.root.senderId)) }