From 2079159293601f2fdd497f6899e071af54274ea8 Mon Sep 17 00:00:00 2001 From: Taras Smakula <tarassmakula@gmail.com> Date: Mon, 31 Jul 2023 15:47:20 +0300 Subject: [PATCH] Implement edit post in view model --- .../feature/timeline/TimelineDialogFragment.kt | 4 ++-- .../circles/feature/timeline/TimelineViewModel.kt | 13 ++++++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) 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 adadd82a9..7a5bef7c6 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 82a729e97..2fe704f99 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) { -- GitLab