From 75832876fa83c64feba1af3705e8160f45056fe3 Mon Sep 17 00:00:00 2001 From: Bohdan Triapitsyn Date: Sun, 2 Aug 2026 21:32:27 +0300 Subject: [PATCH] fix(ui): align multi-file patch interactions --- .../chat/message/parts/ToolPart.tsx | 38 ++++++++++++++----- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/packages/ui/src/components/chat/message/parts/ToolPart.tsx b/packages/ui/src/components/chat/message/parts/ToolPart.tsx index f62cf195..0067b05a 100644 --- a/packages/ui/src/components/chat/message/parts/ToolPart.tsx +++ b/packages/ui/src/components/chat/message/parts/ToolPart.tsx @@ -2198,12 +2198,17 @@ const ToolPartContent: React.FC = ({
onToggle(part.id) : handleMainClick} + onKeyDown={isMultiFileApplyPatch ? (event) => { + if (event.target !== event.currentTarget) return; + if (event.key !== 'Enter' && event.key !== ' ') return; + event.preventDefault(); + onToggle(part.id); + } : handleMainKeyDown} + role="button" + tabIndex={0} >
{isMultiFileApplyPatch ? ( @@ -2215,11 +2220,26 @@ const ToolPartContent: React.FC = ({ aria-expanded={isExpanded} aria-label={displayName} title={displayName} - onClick={() => onToggle(part.id)} + onClick={(event) => { + event.stopPropagation(); + onToggle(part.id); + }} > - {isExpanded - ? - : getToolIcon(normalizedPartTool || part.tool)} + + + {getToolIcon(normalizedPartTool || part.tool)} + + +