Scroll to bottom of conversation when message is sent
This commit is contained in:
parent
34740bdaff
commit
e8eb7638c4
2 changed files with 12 additions and 2 deletions
|
@ -594,7 +594,14 @@ export class Timeline extends React.Component<
|
|||
}
|
||||
}
|
||||
|
||||
if (oldItems.length !== newItems.length) {
|
||||
// We know that all items will be in order and that items can only be added at either
|
||||
// end, so we can check for equality without checking each item in the array
|
||||
const haveItemsChanged =
|
||||
oldItems.length !== newItems.length ||
|
||||
oldItems.at(0) !== newItems.at(0) ||
|
||||
oldItems.at(-1) !== newItems.at(-1);
|
||||
|
||||
if (haveItemsChanged) {
|
||||
this.updateIntersectionObserver();
|
||||
|
||||
// This condition is somewhat arbitrary.
|
||||
|
|
|
@ -1436,7 +1436,10 @@ export class ConversationModel extends window.Backbone
|
|||
newestId && messageIds && messageIds[messageIds.length - 1] === newestId;
|
||||
|
||||
if (isJustSent && existingConversation && !isLatestInMemory) {
|
||||
void this.loadNewestMessages(undefined, undefined);
|
||||
// The message is being sent before the user has scrolled down to load the newest
|
||||
// messages into memory; in that case, we scroll the user all the way down by
|
||||
// loading the newest message
|
||||
drop(this.loadNewestMessages(newestId, undefined));
|
||||
} else if (
|
||||
// The message has to be not a story or has to be a story reply in direct
|
||||
// conversation.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue