diff --git a/app/src/main/java/org/futo/circles/feature/timeline/TimelineDialogFragment.kt b/app/src/main/java/org/futo/circles/feature/timeline/TimelineDialogFragment.kt index adadd82a9e9c985d7a626b1d10bdec9b3e382370..7a5bef7c6cdc01ae677cbab786ceb9a82957ab08 100644 --- a/app/src/main/java/org/futo/circles/feature/timeline/TimelineDialogFragment.kt +++ b/app/src/main/java/org/futo/circles/feature/timeline/TimelineDialogFragment.kt @@ -207,8 +207,8 @@ class TimelineDialogFragment : BaseFullscreenDialogFragment(DialogFragmentTimeli viewModel.sendPost(roomId, postContent, threadEventId) } - override fun onEditTextPost(roomId: String, newMessage: String, eventId: String) { - viewModel.editTextPost(eventId, roomId, newMessage) + override fun onEditPost(roomId: String, postContent: CreatePostContent, eventId: String) { + viewModel.editPost(eventId, roomId, postContent) } override fun onCreatePoll(roomId: String, pollContent: CreatePollContent) { diff --git a/app/src/main/java/org/futo/circles/feature/timeline/TimelineViewModel.kt b/app/src/main/java/org/futo/circles/feature/timeline/TimelineViewModel.kt index 82a729e978398c76ab12c6a0198afaba24bf768f..2fe704f99b214b09047430867610cdf684b6d473 100644 --- a/app/src/main/java/org/futo/circles/feature/timeline/TimelineViewModel.kt +++ b/app/src/main/java/org/futo/circles/feature/timeline/TimelineViewModel.kt @@ -9,7 +9,6 @@ import org.futo.circles.core.model.CreatePollContent import org.futo.circles.core.model.PostContent import org.futo.circles.core.model.ShareableContent import org.futo.circles.core.provider.MatrixSessionProvider -import org.futo.circles.core.room.leave.LeaveRoomDataSource import org.futo.circles.core.timeline.BaseTimelineViewModel import org.futo.circles.core.timeline.TimelineDataSource import org.futo.circles.core.timeline.post.PostOptionsDataSource @@ -87,8 +86,16 @@ class TimelineViewModel @Inject constructor( } } - fun editTextPost(eventId: String, roomId: String, newMessage: String) { - sendMessageDataSource.editTextMessage(eventId, roomId, newMessage) + fun editPost(eventId: String, roomId: String, postContent: CreatePostContent) { + when (postContent) { + is MediaPostContent -> postContent.caption?.let { + sendMessageDataSource.editMediaCaption(eventId, roomId, postContent.caption) + } + + is TextPostContent -> sendMessageDataSource.editTextMessage( + eventId, roomId, postContent.text + ) + } } fun createPoll(roomId: String, pollContent: CreatePollContent) {