mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
Merge pull request #3917 from element-hq/feature/bma/isEditableForCaption
Rely on the SDK to decide if a caption is editable or not
This commit is contained in:
+3
-6
@@ -32,7 +32,6 @@ import io.element.android.features.messages.impl.timeline.model.event.TimelineIt
|
|||||||
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemPollContent
|
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemPollContent
|
||||||
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent
|
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent
|
||||||
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemStateContent
|
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemStateContent
|
||||||
import io.element.android.features.messages.impl.timeline.model.event.TimelineItemVoiceContent
|
|
||||||
import io.element.android.features.messages.impl.timeline.model.event.canBeCopied
|
import io.element.android.features.messages.impl.timeline.model.event.canBeCopied
|
||||||
import io.element.android.features.messages.impl.timeline.model.event.canBeForwarded
|
import io.element.android.features.messages.impl.timeline.model.event.canBeForwarded
|
||||||
import io.element.android.features.messages.impl.timeline.model.event.canReact
|
import io.element.android.features.messages.impl.timeline.model.event.canReact
|
||||||
@@ -155,18 +154,16 @@ class DefaultActionListPresenter @AssistedInject constructor(
|
|||||||
add(TimelineItemAction.Forward)
|
add(TimelineItemAction.Forward)
|
||||||
}
|
}
|
||||||
if (timelineItem.isEditable) {
|
if (timelineItem.isEditable) {
|
||||||
add(TimelineItemAction.Edit)
|
if (timelineItem.content is TimelineItemEventContentWithAttachment) {
|
||||||
} else {
|
|
||||||
// Caption
|
// Caption
|
||||||
if (timelineItem.isMine &&
|
|
||||||
timelineItem.content is TimelineItemEventContentWithAttachment &&
|
|
||||||
timelineItem.content !is TimelineItemVoiceContent) {
|
|
||||||
if (timelineItem.content.caption == null) {
|
if (timelineItem.content.caption == null) {
|
||||||
add(TimelineItemAction.AddCaption)
|
add(TimelineItemAction.AddCaption)
|
||||||
} else {
|
} else {
|
||||||
add(TimelineItemAction.EditCaption)
|
add(TimelineItemAction.EditCaption)
|
||||||
add(TimelineItemAction.RemoveCaption)
|
add(TimelineItemAction.RemoveCaption)
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
add(TimelineItemAction.Edit)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (canRedact && timelineItem.content is TimelineItemPollContent && !timelineItem.content.isEnded) {
|
if (canRedact && timelineItem.content is TimelineItemPollContent && !timelineItem.content.isEnded) {
|
||||||
|
|||||||
+2
-2
@@ -521,7 +521,7 @@ class ActionListPresenterTest {
|
|||||||
val initialState = awaitItem()
|
val initialState = awaitItem()
|
||||||
val messageEvent = aMessageEvent(
|
val messageEvent = aMessageEvent(
|
||||||
isMine = true,
|
isMine = true,
|
||||||
isEditable = false,
|
isEditable = true,
|
||||||
content = aTimelineItemImageContent(),
|
content = aTimelineItemImageContent(),
|
||||||
)
|
)
|
||||||
initialState.eventSink.invoke(
|
initialState.eventSink.invoke(
|
||||||
@@ -567,7 +567,7 @@ class ActionListPresenterTest {
|
|||||||
val initialState = awaitItem()
|
val initialState = awaitItem()
|
||||||
val messageEvent = aMessageEvent(
|
val messageEvent = aMessageEvent(
|
||||||
isMine = true,
|
isMine = true,
|
||||||
isEditable = false,
|
isEditable = true,
|
||||||
content = aTimelineItemImageContent(
|
content = aTimelineItemImageContent(
|
||||||
caption = A_CAPTION,
|
caption = A_CAPTION,
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user