[fractal] fractal-gtk: room_history: Allow removing a message
- From: Daniel Garcia Moreno <danigm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [fractal] fractal-gtk: room_history: Allow removing a message
- Date: Sun, 22 Dec 2019 08:58:52 +0000 (UTC)
commit b04127d0c23152ea76fcff69200cbbd894bacbf6
Author: Alistair Francis <alistair alistair23 me>
Date: Thu Aug 22 22:07:36 2019 -0700
fractal-gtk: room_history: Allow removing a message
Signed-off-by: Alistair Francis <alistair alistair23 me>
fractal-gtk/src/widgets/room_history.rs | 14 ++++++++++++++
1 file changed, 14 insertions(+)
---
diff --git a/fractal-gtk/src/widgets/room_history.rs b/fractal-gtk/src/widgets/room_history.rs
index ea8407ad..4a6beb4f 100644
--- a/fractal-gtk/src/widgets/room_history.rs
+++ b/fractal-gtk/src/widgets/room_history.rs
@@ -267,6 +267,20 @@ impl RoomHistory {
None
}
+ pub fn remove_message(&mut self, item: MessageContent) -> Option<()> {
+ let mut rows = self.rows.borrow_mut();
+ let ref mut msg = rows.list.iter_mut().find_map(|e| match e {
+ Element::Message(ref mut itermessage) if itermessage.id == item.id => Some(itermessage),
+ _ => None,
+ })?;
+
+ let msg_widget = msg.widget.clone()?;
+ msg.msg.redacted = true;
+ rows.listbox.remove(msg_widget.get_listbox_row()?);
+
+ None
+ }
+
pub fn add_new_messages_in_batch(&mut self, messages: Vec<MessageContent>) -> Option<()> {
/* TODO: use lazy loading */
for item in messages {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]