From 2cdf606c7c9cef0a5073e7fec63e64c1ba931591 Mon Sep 17 00:00:00 2001 From: Carl Schwan Date: Sun, 29 Nov 2020 11:14:19 +0100 Subject: [PATCH] Allow filtering join and leave events Fix #93 --- imports/NeoChat/Page/RoomPage.qml | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/imports/NeoChat/Page/RoomPage.qml b/imports/NeoChat/Page/RoomPage.qml index 8b30f8553..25b58d232 100644 --- a/imports/NeoChat/Page/RoomPage.qml +++ b/imports/NeoChat/Page/RoomPage.qml @@ -153,9 +153,18 @@ Kirigami.ScrollablePage { sourceModel: messageEventModel - filterRowCallback: function(row, parent) { - return messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.MessageRole) !== 0x10 && messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.EventTypeRole) !== "other" - } + filterRowCallback: Config.showLeaveJoinEvent ? dontFilterLeaveJoin : filterLeaveJoin + + function dontFilterLeaveJoin(row, parent) { + return messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.MessageRole) !== 0x10 + && messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.EventTypeRole) !== "other"; + } + + function filterLeaveJoin(row, parent) { + return messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.MessageRole) !== 0x10 + && messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.EventTypeRole) !== "other" + && messageEventModel.data(messageEventModel.index(row, 0), MessageEventModel.EventTypeRole) !== "state"; + } } // populate: Transition {