merge devel
This commit is contained in:
@@ -249,13 +249,18 @@ class MessagesView extends React.Component {
|
|||||||
this.postReadNotification(0);
|
this.postReadNotification(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (topic && ((this.state.topic != prevState.topic) || !prevProps.ready)) {
|
if (topic) {
|
||||||
|
if ((this.state.topic != prevState.topic) || !prevProps.ready) {
|
||||||
// Don't immediately subscribe to a new p2p topic, wait for the first message.
|
// Don't immediately subscribe to a new p2p topic, wait for the first message.
|
||||||
if (topic._new && topic.isP2PType()) {
|
if (topic._new && topic.isP2PType()) {
|
||||||
topic.getMeta(topic.startMetaQuery().withDesc().build());
|
topic.getMeta(topic.startMetaQuery().withDesc().build());
|
||||||
} else {
|
} else {
|
||||||
this.subscribe(topic);
|
this.subscribe(topic);
|
||||||
}
|
}
|
||||||
|
} else if (topic.isSubscribed() && this.state.isReader && !prevState.isReader) {
|
||||||
|
// If reader status has changed and data became available.
|
||||||
|
topic.getMeta(topic.startMetaQuery().withLaterData().build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+5
-1
@@ -5289,12 +5289,16 @@ class MessagesView extends (react__WEBPACK_IMPORTED_MODULE_0___default().Compone
|
|||||||
} else {
|
} else {
|
||||||
this.postReadNotification(0);
|
this.postReadNotification(0);
|
||||||
}
|
}
|
||||||
if (topic && (this.state.topic != prevState.topic || !prevProps.ready)) {
|
if (topic) {
|
||||||
|
if (this.state.topic != prevState.topic || !prevProps.ready) {
|
||||||
if (topic._new && topic.isP2PType()) {
|
if (topic._new && topic.isP2PType()) {
|
||||||
topic.getMeta(topic.startMetaQuery().withDesc().build());
|
topic.getMeta(topic.startMetaQuery().withDesc().build());
|
||||||
} else {
|
} else {
|
||||||
this.subscribe(topic);
|
this.subscribe(topic);
|
||||||
}
|
}
|
||||||
|
} else if (topic.isSubscribed() && this.state.isReader && !prevState.isReader) {
|
||||||
|
topic.getMeta(topic.startMetaQuery().withLaterData().build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
static getDerivedStateFromProps(nextProps, prevState) {
|
static getDerivedStateFromProps(nextProps, prevState) {
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2
-1
@@ -4058,8 +4058,9 @@ class Topic {
|
|||||||
return this._tinode.getMeta(this.name, params);
|
return this._tinode.getMeta(this.name, params);
|
||||||
}
|
}
|
||||||
getMessagesPage(limit, forward) {
|
getMessagesPage(limit, forward) {
|
||||||
|
this._tinode._db.missingRanges(this.name, this._maxSeq, limit, forward ? this._maxSeq : undefined).then(ranges => {
|
||||||
let query = forward ? this.startMetaQuery().withLaterData(limit) : this.startMetaQuery().withEarlierData(limit);
|
let query = forward ? this.startMetaQuery().withLaterData(limit) : this.startMetaQuery().withEarlierData(limit);
|
||||||
this._tinode._db.missingRanges(this.name, this._maxSeq, limit).then(ranges => console.log("missing range:", ranges));
|
});
|
||||||
return this._loadMessages(this._tinode._db, query.extract('data')).then(count => {
|
return this._loadMessages(this._tinode._db, query.extract('data')).then(count => {
|
||||||
if (count == limit) {
|
if (count == limit) {
|
||||||
return Promise.resolve({
|
return Promise.resolve({
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user