Skip to content

Commit 2bcdd27

Browse files
dallins feedback
1 parent 093f069 commit 2bcdd27

File tree

2 files changed

+25
-21
lines changed

2 files changed

+25
-21
lines changed

gui/src/pages/gui/ToolCallDiv/ToolCallDisplay.tsx

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import { Tool, ToolCallState } from "core";
2+
import { useContext, useMemo } from "react";
3+
import { openContextItem } from "../../../components/mainInput/belowMainInput/ContextItemsPeek";
4+
import { IdeMessengerContext } from "../../../context/IdeMessenger";
25
import { ToolCallStatusMessage } from "./ToolCallStatusMessage";
6+
import { toolCallStateToContextItems } from "./utils";
37

48
interface ToolCallDisplayProps {
59
children: React.ReactNode;
@@ -16,11 +20,29 @@ export function ToolCallDisplay({
1620
icon,
1721
historyIndex,
1822
}: ToolCallDisplayProps) {
23+
const ideMessenger = useContext(IdeMessengerContext);
24+
const shownContextItems = useMemo(() => {
25+
const contextItems = toolCallStateToContextItems(toolCallState);
26+
return contextItems.filter((item) => !item.hidden);
27+
}, [toolCallState]);
28+
29+
const isClickable = shownContextItems.length > 0;
30+
31+
function handleClick() {
32+
if (shownContextItems.length > 0) {
33+
openContextItem(shownContextItems[0], ideMessenger);
34+
}
35+
}
1936
return (
2037
<div className="flex flex-col justify-center px-4">
2138
<div className="mb-2 flex flex-col">
2239
<div className="flex flex-row items-center justify-between gap-1.5">
23-
<div className="flex min-w-0 flex-row items-center gap-2">
40+
<div
41+
className={`flex min-w-0 flex-row items-center gap-2 transition-colors duration-200 ease-in-out ${
42+
isClickable ? "cursor-pointer hover:brightness-125" : ""
43+
}`}
44+
onClick={isClickable ? handleClick : undefined}
45+
>
2446
<div className="mt-[1px] h-4 w-4 flex-shrink-0 font-semibold">
2547
{icon}
2648
</div>

gui/src/pages/gui/ToolCallDiv/ToolCallStatusMessage.tsx

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
import { Tool, ToolCallState } from "core";
22
import Mustache from "mustache";
3-
import { useContext } from "react";
4-
import { openContextItem } from "../../../components/mainInput/belowMainInput/ContextItemsPeek";
5-
import { IdeMessengerContext } from "../../../context/IdeMessenger";
6-
import { getStatusIntro, toolCallStateToContextItems } from "./utils";
3+
import { getStatusIntro } from "./utils";
74

85
interface ToolCallStatusMessageProps {
96
tool: Tool | undefined;
@@ -14,13 +11,6 @@ export function ToolCallStatusMessage({
1411
tool,
1512
toolCallState,
1613
}: ToolCallStatusMessageProps) {
17-
const ideMessenger = useContext(IdeMessengerContext);
18-
19-
function handleClick() {
20-
if (contextItems.length > 0) {
21-
openContextItem(contextItems[0], ideMessenger);
22-
}
23-
}
2414

2515
if (!tool) return "Agent tool use";
2616

@@ -62,18 +52,10 @@ export function ToolCallStatusMessage({
6252
}
6353
}
6454

65-
const contextItems = toolCallStateToContextItems(toolCallState).filter(
66-
(item) => !item.hidden,
67-
);
68-
const isClickable = contextItems.length > 0;
69-
7055
return (
7156
<div
72-
className={`text-description line-clamp-4 min-w-0 break-all transition-colors duration-200 ease-in-out ${
73-
isClickable ? "cursor-pointer hover:brightness-125" : ""
74-
}`}
57+
className="text-description line-clamp-4 min-w-0 break-all"
7558
data-testid="tool-call-title"
76-
onClick={isClickable ? handleClick : undefined}
7759
>
7860
{`Continue ${intro} ${message}`}
7961
</div>

0 commit comments

Comments
 (0)