mirror of
https://github.com/QwenLM/qwen-code.git
synced 2025-12-19 09:33:53 +00:00
fix: pendingSlashCommandHistoryItems corrected to properly memoize updates (#6282)
Co-authored-by: Bryan Morgan <bryanmorgan@google.com>
This commit is contained in:
@@ -8,7 +8,6 @@ import { useCallback, useMemo, useEffect, useState } from 'react';
|
|||||||
import { type PartListUnion } from '@google/genai';
|
import { type PartListUnion } from '@google/genai';
|
||||||
import process from 'node:process';
|
import process from 'node:process';
|
||||||
import { UseHistoryManagerReturn } from './useHistoryManager.js';
|
import { UseHistoryManagerReturn } from './useHistoryManager.js';
|
||||||
import { useStateAndRef } from './useStateAndRef.js';
|
|
||||||
import {
|
import {
|
||||||
Config,
|
Config,
|
||||||
GitService,
|
GitService,
|
||||||
@@ -93,16 +92,16 @@ export const useSlashCommandProcessor = (
|
|||||||
return l;
|
return l;
|
||||||
}, [config]);
|
}, [config]);
|
||||||
|
|
||||||
const [pendingCompressionItemRef, setPendingCompressionItem] =
|
const [pendingCompressionItem, setPendingCompressionItem] =
|
||||||
useStateAndRef<HistoryItemWithoutId | null>(null);
|
useState<HistoryItemWithoutId | null>(null);
|
||||||
|
|
||||||
const pendingHistoryItems = useMemo(() => {
|
const pendingHistoryItems = useMemo(() => {
|
||||||
const items: HistoryItemWithoutId[] = [];
|
const items: HistoryItemWithoutId[] = [];
|
||||||
if (pendingCompressionItemRef.current != null) {
|
if (pendingCompressionItem != null) {
|
||||||
items.push(pendingCompressionItemRef.current);
|
items.push(pendingCompressionItem);
|
||||||
}
|
}
|
||||||
return items;
|
return items;
|
||||||
}, [pendingCompressionItemRef]);
|
}, [pendingCompressionItem]);
|
||||||
|
|
||||||
const addMessage = useCallback(
|
const addMessage = useCallback(
|
||||||
(message: Message) => {
|
(message: Message) => {
|
||||||
@@ -173,7 +172,7 @@ export const useSlashCommandProcessor = (
|
|||||||
},
|
},
|
||||||
loadHistory,
|
loadHistory,
|
||||||
setDebugMessage: onDebugMessage,
|
setDebugMessage: onDebugMessage,
|
||||||
pendingItem: pendingCompressionItemRef.current,
|
pendingItem: pendingCompressionItem,
|
||||||
setPendingItem: setPendingCompressionItem,
|
setPendingItem: setPendingCompressionItem,
|
||||||
toggleCorgiMode,
|
toggleCorgiMode,
|
||||||
toggleVimEnabled,
|
toggleVimEnabled,
|
||||||
@@ -196,7 +195,7 @@ export const useSlashCommandProcessor = (
|
|||||||
refreshStatic,
|
refreshStatic,
|
||||||
session.stats,
|
session.stats,
|
||||||
onDebugMessage,
|
onDebugMessage,
|
||||||
pendingCompressionItemRef,
|
pendingCompressionItem,
|
||||||
setPendingCompressionItem,
|
setPendingCompressionItem,
|
||||||
toggleCorgiMode,
|
toggleCorgiMode,
|
||||||
toggleVimEnabled,
|
toggleVimEnabled,
|
||||||
|
|||||||
Reference in New Issue
Block a user