From db4aa77afa31b3e3896f514bb47e1db457038332 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Mon, 31 Aug 2020 01:28:39 +0300 Subject: [PATCH] Fix editing same message many times. Fixes #195 --- ui/room-view.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ui/room-view.go b/ui/room-view.go index 3e9e0eb..0c06166 100644 --- a/ui/room-view.go +++ b/ui/room-view.go @@ -436,8 +436,13 @@ func (view *RoomView) SetEditing(evt *muksevt.Event) { view.editing = evt // replying should never be non-nil when SetEditing, but do this just to be safe view.replying = nil - text := view.editing.Content.AsMessage().Body - if view.editing.Content.AsMessage().MsgType == event.MsgEmote { + msgContent := view.editing.Content.AsMessage() + if len(view.editing.Gomuks.Edits) > 0 { + // This feels kind of dangerous, but I think it works + msgContent = view.editing.Gomuks.Edits[len(view.editing.Gomuks.Edits)-1].Content.AsMessage().NewContent + } + text := msgContent.Body + if msgContent.MsgType == event.MsgEmote { text = "/me " + text } view.input.SetText(text)