Use reuseITems for room list and don't have default highlighted room

This commit is contained in:
Devin Lin
2021-03-05 15:48:08 -05:00
parent 34311e4d48
commit 17930e2e2c

View File

@@ -4,7 +4,7 @@
* *
* SPDX-License-Identifier: GPL-3.0-only * SPDX-License-Identifier: GPL-3.0-only
*/ */
import QtQuick 2.12 import QtQuick 2.15
import QtQuick.Controls 2.12 as QQC2 import QtQuick.Controls 2.12 as QQC2
import QtQuick.Layouts 1.12 import QtQuick.Layouts 1.12
@@ -48,6 +48,7 @@ Kirigami.ScrollablePage {
ListView { ListView {
id: listView id: listView
Kirigami.PlaceholderMessage { Kirigami.PlaceholderMessage {
anchors.centerIn: parent anchors.centerIn: parent
width: parent.width - (Kirigami.Units.largeSpacing * 4) width: parent.width - (Kirigami.Units.largeSpacing * 4)
@@ -59,7 +60,8 @@ Kirigami.ScrollablePage {
onTriggered: pageStack.layers.push("qrc:/imports/NeoChat/Page/JoinRoomPage.qml", {"connection": activeConnection, "keyword": sortFilterRoomListModel.filterText}) onTriggered: pageStack.layers.push("qrc:/imports/NeoChat/Page/JoinRoomPage.qml", {"connection": activeConnection, "keyword": sortFilterRoomListModel.filterText})
} }
} }
model: SortFilterRoomListModel {
model: SortFilterRoomListModel {
id: sortFilterRoomListModel id: sortFilterRoomListModel
sourceModel: RoomListModel { sourceModel: RoomListModel {
id: roomListModel id: roomListModel
@@ -90,6 +92,9 @@ Kirigami.ScrollablePage {
} }
} }
reuseItems: true
currentIndex: -1 // we don't want any room highlighted by default
delegate: Kirigami.BasicListItem { delegate: Kirigami.BasicListItem {
id: roomListItem id: roomListItem
visible: model.categoryVisible || sortFilterRoomListModel.filterText.length > 0 || Config.mergeRoomList visible: model.categoryVisible || sortFilterRoomListModel.filterText.length > 0 || Config.mergeRoomList