2019-03-21 23:28:14 -04:00
|
|
|
import QtQuick 2.7
|
2019-07-02 13:59:52 -04:00
|
|
|
import SortFilterProxyModel 0.2
|
2019-04-28 15:18:36 -04:00
|
|
|
import "../../Base"
|
2019-03-21 23:28:14 -04:00
|
|
|
|
2019-05-11 17:51:00 -04:00
|
|
|
HRectangle {
|
2019-03-21 23:28:14 -04:00
|
|
|
property int space: 8
|
|
|
|
|
2019-04-28 15:18:36 -04:00
|
|
|
color: HStyle.chat.roomEventList.background
|
2019-04-28 11:01:38 -04:00
|
|
|
|
2019-05-13 13:15:03 -04:00
|
|
|
HListView {
|
2019-04-28 14:34:29 -04:00
|
|
|
id: roomEventListView
|
2019-05-02 15:01:25 -04:00
|
|
|
clip: true
|
2019-03-21 23:28:14 -04:00
|
|
|
|
2019-07-02 13:59:52 -04:00
|
|
|
model: HListModel {
|
2019-07-04 16:01:44 -04:00
|
|
|
sourceModel: timelines
|
2019-07-02 13:59:52 -04:00
|
|
|
|
|
|
|
filters: ValueFilter {
|
|
|
|
roleName: "roomId"
|
|
|
|
value: chatPage.roomId
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-07-02 22:29:09 -04:00
|
|
|
delegate: EventDelegate {}
|
2019-07-02 13:59:52 -04:00
|
|
|
|
2019-04-28 11:01:38 -04:00
|
|
|
anchors.fill: parent
|
|
|
|
anchors.leftMargin: space
|
|
|
|
anchors.rightMargin: space
|
|
|
|
|
2019-03-21 23:28:14 -04:00
|
|
|
topMargin: space
|
|
|
|
bottomMargin: space
|
2019-04-17 16:43:18 -04:00
|
|
|
verticalLayoutDirection: ListView.BottomToTop
|
2019-04-17 13:44:04 -04:00
|
|
|
|
|
|
|
// Keep x scroll pages cached, to limit images having to be
|
|
|
|
// reloaded from network.
|
|
|
|
cacheBuffer: height * 6
|
2019-04-17 14:27:22 -04:00
|
|
|
|
2019-07-05 02:45:30 -04:00
|
|
|
// Declaring this as "alias" provides the on... signal
|
2019-04-17 22:34:22 -04:00
|
|
|
property real yPos: visibleArea.yPosition
|
2019-07-05 02:45:30 -04:00
|
|
|
property bool canLoad: true
|
2019-07-04 19:49:55 -04:00
|
|
|
property int zz: 0
|
2019-07-05 02:45:30 -04:00
|
|
|
|
2019-04-17 22:34:22 -04:00
|
|
|
onYPosChanged: {
|
2019-07-05 02:45:30 -04:00
|
|
|
if (chatPage.category != "Invites" && canLoad && yPos <= 0.1) {
|
2019-07-04 19:49:55 -04:00
|
|
|
zz += 1
|
2019-07-05 02:45:30 -04:00
|
|
|
print(canLoad, zz)
|
|
|
|
canLoad = false
|
|
|
|
py.callClientCoro(
|
|
|
|
chatPage.userId,
|
|
|
|
"load_past_events",
|
|
|
|
[chatPage.roomId],
|
|
|
|
{},
|
|
|
|
function(more_to_load) { canLoad = more_to_load }
|
|
|
|
)
|
2019-04-17 22:34:22 -04:00
|
|
|
}
|
2019-04-17 16:43:18 -04:00
|
|
|
}
|
2019-03-21 23:28:14 -04:00
|
|
|
}
|
2019-04-22 11:31:06 -04:00
|
|
|
|
2019-05-02 14:20:21 -04:00
|
|
|
HNoticePage {
|
2019-04-28 14:20:30 -04:00
|
|
|
text: qsTr("Nothing to show here yet...")
|
|
|
|
|
2019-04-28 14:34:29 -04:00
|
|
|
visible: roomEventListView.model.count < 1
|
2019-05-02 14:20:21 -04:00
|
|
|
anchors.fill: parent
|
2019-04-22 11:31:06 -04:00
|
|
|
}
|
2019-03-21 23:28:14 -04:00
|
|
|
}
|