Fix member filtering
This commit is contained in:
@@ -7,21 +7,37 @@ HColumnLayout {
|
||||
HListView {
|
||||
id: memberList
|
||||
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: true
|
||||
|
||||
|
||||
readonly property var originSource:
|
||||
modelSources[["Member", chatPage.roomId]] || []
|
||||
|
||||
|
||||
onOriginSourceChanged: filterLimiter.requestFire()
|
||||
|
||||
|
||||
function filterSource() {
|
||||
model.source =
|
||||
Utils.filterModelSource(originSource, filterField.text)
|
||||
}
|
||||
|
||||
|
||||
model: HListModel {
|
||||
keyField: "user_id"
|
||||
source: Utils.filterModelSource(
|
||||
modelSources[["Member", chatPage.roomId]] || [],
|
||||
filterField.text
|
||||
)
|
||||
source: originSource
|
||||
}
|
||||
|
||||
delegate: MemberDelegate {
|
||||
width: memberList.width
|
||||
}
|
||||
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: true
|
||||
|
||||
HRateLimiter {
|
||||
id: filterLimiter
|
||||
cooldown: 16
|
||||
onFired: memberList.filterSource()
|
||||
}
|
||||
}
|
||||
|
||||
HTextField {
|
||||
@@ -30,6 +46,8 @@ HColumnLayout {
|
||||
backgroundColor: theme.sidePane.filterRooms.background
|
||||
bordered: false
|
||||
|
||||
onTextChanged: filterLimiter.requestFire()
|
||||
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: theme.baseElementsHeight
|
||||
}
|
||||
|
Reference in New Issue
Block a user