Fix loading events when scrolling or opening a room for the first time
Fix #362
(cherry picked from commit bae7813f68)
This commit is contained in:
@@ -232,20 +232,17 @@ Kirigami.ScrollablePage {
|
||||
|
||||
model: !isLoaded ? undefined : sortedMessageEventModel
|
||||
|
||||
onContentYChanged: fetchMoreContent()
|
||||
|
||||
function fetchMoreContent() {
|
||||
if(!noNeedMoreContent && contentY - 5000 < originY) {
|
||||
currentRoom.getPreviousContent(20);
|
||||
}
|
||||
}
|
||||
|
||||
MessageEventModel {
|
||||
id: messageEventModel
|
||||
|
||||
room: currentRoom
|
||||
}
|
||||
|
||||
// HACK: The view should do this automatically but doesn't.
|
||||
onAtYBeginningChanged: if (atYBeginning && messageEventModel.canFetchMore(messageEventModel.index(0, 0))) {
|
||||
messageEventModel.fetchMore(messageEventModel.index(0, 0));
|
||||
}
|
||||
|
||||
QQC2.Popup {
|
||||
anchors.centerIn: parent
|
||||
|
||||
@@ -596,7 +593,11 @@ Kirigami.ScrollablePage {
|
||||
|
||||
DelegateChoice {
|
||||
roleValue: "other"
|
||||
delegate: Item {}
|
||||
delegate: Rectangle {
|
||||
height: 10
|
||||
width: ListView.view.width
|
||||
color: "red"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -646,10 +647,10 @@ Kirigami.ScrollablePage {
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
updateReadMarker()
|
||||
if (currentRoom) {
|
||||
if (currentRoom.timelineSize < 20)
|
||||
currentRoom.getPreviousContent(50)
|
||||
if (currentRoom.timelineSize < 20) {
|
||||
currentRoom.getPreviousContent(50);
|
||||
}
|
||||
}
|
||||
|
||||
positionViewAtBeginning();
|
||||
|
||||
Reference in New Issue
Block a user