diff --git a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/components/copilot/components/tool-call/tool-call.tsx b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/components/copilot/components/tool-call/tool-call.tsx index c7f103209..83c053e15 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/components/copilot/components/tool-call/tool-call.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel/components/copilot/components/tool-call/tool-call.tsx @@ -23,7 +23,7 @@ import { ParallelTool } from '@/app/workspace/[workspaceId]/w/[workflowId]/compo import { getDisplayValue } from '@/app/workspace/[workspaceId]/w/[workflowId]/components/workflow-block/workflow-block' import { getBlock } from '@/blocks/registry' import type { CopilotToolCall } from '@/stores/panel' -import { useCopilotStore } from '@/stores/panel' +import { useCopilotStore, usePanelStore } from '@/stores/panel' import type { SubAgentContentBlock } from '@/stores/panel/copilot/types' import { useWorkflowStore } from '@/stores/workflows/workflow/store' @@ -341,16 +341,20 @@ export function OptionsSelector({ const [hoveredIndex, setHoveredIndex] = useState(-1) const [chosenKey, setChosenKey] = useState(selectedOptionKey) const containerRef = useRef(null) + const activeTab = usePanelStore((s) => s.activeTab) const isLocked = chosenKey !== null - // Handle keyboard navigation - only for the active options selector + // Handle keyboard navigation - only for the active options selector when copilot is active useEffect(() => { if (isInteractionDisabled || !enableKeyboardNav || isLocked) return const handleKeyDown = (e: KeyboardEvent) => { if (e.defaultPrevented) return + // Only handle keyboard shortcuts when the copilot panel is active + if (activeTab !== 'copilot') return + const activeElement = document.activeElement const isInputFocused = activeElement?.tagName === 'INPUT' || @@ -387,7 +391,7 @@ export function OptionsSelector({ document.addEventListener('keydown', handleKeyDown) return () => document.removeEventListener('keydown', handleKeyDown) - }, [isInteractionDisabled, enableKeyboardNav, isLocked, sortedOptions, hoveredIndex, onSelect]) + }, [isInteractionDisabled, enableKeyboardNav, isLocked, sortedOptions, hoveredIndex, onSelect, activeTab]) if (sortedOptions.length === 0) return null