moment/harmonyqml/components/Chat/RoomEventList/RoomEventList.qml
miruka 7004b4ea3f Reorganize Chat component files
- MessageList renamed to RoomEventList
- MessageDelegate renamed to RoomEventDelegate
- Banner and RoomEventList get their own folders
2019-04-28 14:34:29 -04:00

50 lines
1.2 KiB
QML

import QtQuick 2.7
import QtQuick.Controls 2.2
import QtQuick.Layouts 1.4
import "../../Base" as Base
Base.HGlassRectangle {
property bool canLoadPastEvents: true
property int space: 8
color: Base.HStyle.chat.roomEventList.background
Layout.fillWidth: true
Layout.fillHeight: true
ListView {
id: roomEventListView
delegate: RoomEventDelegate {}
model: Backend.models.roomEvents.get(chatPage.roomId)
anchors.fill: parent
anchors.leftMargin: space
anchors.rightMargin: space
clip: true
topMargin: space
bottomMargin: space
verticalLayoutDirection: ListView.BottomToTop
// Keep x scroll pages cached, to limit images having to be
// reloaded from network.
cacheBuffer: height * 6
// Declaring this "alias" provides the on... signal
property real yPos: visibleArea.yPosition
onYPosChanged: {
if (chatPage.canLoadPastEvents && yPos <= 0.1) {
Backend.loadPastEvents(chatPage.roomId)
}
}
}
Base.HNoticeLabel {
text: qsTr("Nothing to show here yet...")
visible: roomEventListView.model.count < 1
anchors.centerIn: parent
}
}