mirror of
https://gitlab.com/comunic/comunicmobile
synced 2025-06-19 08:15:16 +00:00
Register to comment udpate events
This commit is contained in:
@ -510,10 +510,6 @@ class _PostTileState extends State<PostTile> {
|
||||
|
||||
if (!(await _commentsHelper.updateContent(comment.id, newContent)))
|
||||
return showSimpleSnack(context, tr("Could not update comment content!"));
|
||||
|
||||
setState(() {
|
||||
comment.content.content = newContent;
|
||||
});
|
||||
}
|
||||
|
||||
/// Process the deletion of a user
|
||||
@ -575,7 +571,7 @@ class _PostTileState extends State<PostTile> {
|
||||
title: tr("Update post content"),
|
||||
message: tr("Please enter message content: "),
|
||||
defaultValue:
|
||||
widget.post.content.isNull == null ? "" : widget.post.content.content,
|
||||
widget.post.content.isNull == null ? "" : widget.post.content.content,
|
||||
hint: tr("Post content"),
|
||||
);
|
||||
|
||||
|
@ -70,6 +70,8 @@ class PostsListWidgetState extends SafeState<PostsListWidget> {
|
||||
|
||||
// Register to events
|
||||
this.listen<NewCommentEvent>((ev) => this._addComment(ev.comment));
|
||||
this.listenChangeState<UpdatedCommentEvent>(
|
||||
(ev) => this._updateComment(ev.comment));
|
||||
}
|
||||
|
||||
@override
|
||||
@ -244,4 +246,21 @@ class PostsListWidgetState extends SafeState<PostsListWidget> {
|
||||
print("$e\n$stack");
|
||||
}
|
||||
}
|
||||
|
||||
/// Update a comment
|
||||
void _updateComment(Comment c) {
|
||||
if (_list == null) return;
|
||||
|
||||
try {
|
||||
final p = _list.singleWhere((p) => p.id == c.postID, orElse: () => null);
|
||||
|
||||
if (p == null) return;
|
||||
|
||||
final index = p.comments.indexWhere((d) => d.id == c.id);
|
||||
|
||||
if (index > -1) p.comments[index] = c;
|
||||
} catch (e, stack) {
|
||||
print("$e\n$stack");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user