Add support for message history pagination, preserve scroll in rendering, and improve draft/message workflows.
This commit is contained in:
@@ -222,7 +222,7 @@ export function createMessageRenderer({
|
||||
return msgDiv;
|
||||
}
|
||||
|
||||
function renderMessages() {
|
||||
function renderMessages({preserveScroll = false} = {}) {
|
||||
if (scrollFrame !== null) { cancelAnimationFrame(scrollFrame); scrollFrame = null; }
|
||||
const sameChat = renderedChatId === state.activeChatId;
|
||||
const wasReadingEarlier = sameChat && messagesDiv.scrollHeight - messagesDiv.scrollTop - messagesDiv.clientHeight >= 100;
|
||||
@@ -256,7 +256,7 @@ export function createMessageRenderer({
|
||||
renderDrawerSummary();
|
||||
updateChatActionState();
|
||||
updateComposerPlaceholder();
|
||||
if (wasReadingEarlier) {
|
||||
if (wasReadingEarlier || preserveScroll) {
|
||||
messagesDiv.scrollTop = previousScrollTop;
|
||||
updateJumpToLatest();
|
||||
} else if (state.currentMessages.length) {
|
||||
|
||||
Reference in New Issue
Block a user