add option to load more backlog

master
f0x 5 years ago
parent d2eb0adc47
commit 269077092d

@ -99,6 +99,7 @@ let chat = create({
}, },
render: function() { render: function() {
let client = this.props.client
let empty = ( let empty = (
<div className="main"> <div className="main">
</div> </div>
@ -108,7 +109,7 @@ let chat = create({
return empty return empty
} }
let room = this.props.client.getRoom(this.props.roomId) let room = client.getRoom(this.props.roomId)
if (room == null) { if (room == null) {
return empty return empty
} }
@ -128,7 +129,7 @@ let chat = create({
room.getLiveTimeline().getEvents().forEach((MatrixEvent) => { room.getLiveTimeline().getEvents().forEach((MatrixEvent) => {
let event = MatrixEvent.event; let event = MatrixEvent.event;
event = Object.assign(event, eventFunctions) event = Object.assign(event, eventFunctions)
if (event.user_id != null) { // localecho messages if (event.sender == null) { // localecho messages
event.sender = event.user_id event.sender = event.user_id
event.local = true event.local = true
} }
@ -154,10 +155,14 @@ let chat = create({
<Info room={room} /> <Info room={room} />
<div className="chat" ref={this.setRef}> <div className="chat" ref={this.setRef}>
<div className="events"> <div className="events">
<button onClick={() => {
this.props.client.paginateEventTimeline(room.getLiveTimeline(), {backwards: true})
}}>
load older messages</button>
{events} {events}
</div> </div>
</div> </div>
<Input client={this.props.client} roomId={this.props.roomId} replyEvent={this.state.replyEvent} onReplyClick={this.onReplyClick}/> <Input client={client} roomId={this.props.roomId} replyEvent={this.state.replyEvent} onReplyClick={this.onReplyClick}/>
</div> </div>
) )
} }

@ -82,7 +82,9 @@ function parseEvent(event, context) {
html = true html = true
} }
body = body.trim() if (body) {
body = body.trim()
}
let parsedReply = parseReply(event, body) let parsedReply = parseReply(event, body)
if (parsedReply.isReply) { if (parsedReply.isReply) {

Loading…
Cancel
Save