Add files via upload

This commit is contained in:
RT15548
2026-01-01 17:43:53 +08:00
committed by GitHub
parent 52a3e1cd94
commit 584fa6bbc2

View File

@@ -158,21 +158,30 @@ function toggleImmersiveMode() {
} }
function bindMessageEvents() { function bindMessageEvents() {
if (state.messageEventsBound) return; if (state.messageEventsBound) return;
const onUserMessage = () => {
const refreshOnAI = () => state.isActive && updateMessageDisplay(); if (!state.isActive) return;
updateMessageDisplay();
messageEvents.on(event_types.MESSAGE_SENT, () => {}); scrollToBottom();
messageEvents.on(event_types.MESSAGE_RECEIVED, refreshOnAI); };
messageEvents.on(event_types.MESSAGE_DELETED, refreshOnAI); const onAIMessage = () => {
messageEvents.on(event_types.MESSAGE_UPDATED, refreshOnAI); if (!state.isActive) return;
messageEvents.on(event_types.MESSAGE_SWIPED, refreshOnAI); updateMessageDisplay();
if (event_types.GENERATION_STARTED) { if (getSettings().autoJumpOnAI) {
messageEvents.on(event_types.GENERATION_STARTED, () => {}); scrollToBottom();
} }
messageEvents.on(event_types.GENERATION_ENDED, refreshOnAI); };
const onMessageChange = () => {
state.messageEventsBound = true; if (!state.isActive) return;
updateMessageDisplay();
};
messageEvents.on(event_types.MESSAGE_SENT, onUserMessage);
messageEvents.on(event_types.MESSAGE_RECEIVED, onAIMessage);
messageEvents.on(event_types.MESSAGE_DELETED, onMessageChange);
messageEvents.on(event_types.MESSAGE_UPDATED, onMessageChange);
messageEvents.on(event_types.MESSAGE_SWIPED, onMessageChange);
messageEvents.on(event_types.GENERATION_ENDED, onAIMessage);
state.messageEventsBound = true;
} }
function unbindMessageEvents() { function unbindMessageEvents() {
@@ -269,7 +278,11 @@ function showSingleModeMessages() {
const $prevMessage = $targetAI.prevAll('.mes').first(); const $prevMessage = $targetAI.prevAll('.mes').first();
if ($prevMessage.length) { if ($prevMessage.length) {
$prevMessage.show();
const isUserMessage = $prevMessage.attr('is_user') === 'true';
if (isUserMessage) {
$prevMessage.show();
}
} }
$targetAI.nextAll('.mes').show(); $targetAI.nextAll('.mes').show();
@@ -377,13 +390,14 @@ function updateSwipesCounter($targetMes) {
} }
$swipesCounter.html('1​/​1'); $swipesCounter.html('1​/​1');
} }
function scrollToBottom() {
const chatContainer = document.getElementById('chat'); const chatContainer = document.getElementById('chat');
const chatContainer = document.getElementById('chat'); if (!chatContainer) return;
if (chatContainer) {
requestAnimationFrame(() => { chatContainer.scrollTop = chatContainer.scrollHeight;
chatContainer.scrollTop = chatContainer.scrollHeight; requestAnimationFrame(() => {
}); chatContainer.scrollTop = chatContainer.scrollHeight;
});
} }
function toggleDisplayMode() { function toggleDisplayMode() {
if (!state.isActive) return; if (!state.isActive) return;