diff --git a/packages/app/src/pages/session/composer/session-question-dock.tsx b/packages/app/src/pages/session/composer/session-question-dock.tsx index 9397171164..65d570a748 100644 --- a/packages/app/src/pages/session/composer/session-question-dock.tsx +++ b/packages/app/src/pages/session/composer/session-question-dock.tsx @@ -233,25 +233,10 @@ export const SessionQuestionDock: Component<{ request: QuestionRequest; onSubmit setStore("editing", false) } - const click = (target: EventTarget | null) => { - if (store.sending) return - if (!(target instanceof Node)) { - fold() - return - } - - const list = root?.querySelector('[data-slot="question-options"]') - if (list instanceof HTMLElement && list.contains(target)) return - fold() - } - return ( (root = el)} - bodyProps={{ - onClick: (event) => click(event.target), - }} header={
{ - event.stopPropagation() - fold() - }} + onClick={fold} onKeyDown={(event) => { if (event.key !== "Enter" && event.key !== " ") return event.preventDefault() @@ -314,14 +296,13 @@ export const SessionQuestionDock: Component<{ request: QuestionRequest; onSubmit classList={{ "mb-6": store.collapsed && picked() === 0, }} - onClick={(event) => { - event.stopPropagation() - fold() - }} + role={store.collapsed ? "button" : undefined} + tabIndex={store.collapsed ? 0 : undefined} + onClick={fold} onKeyDown={(event) => { + if (!store.collapsed) return if (event.key !== "Enter" && event.key !== " ") return event.preventDefault() - event.stopPropagation() fold() }} > diff --git a/packages/ui/src/components/dock-prompt.tsx b/packages/ui/src/components/dock-prompt.tsx index 3f180679d5..d774e7f17a 100644 --- a/packages/ui/src/components/dock-prompt.tsx +++ b/packages/ui/src/components/dock-prompt.tsx @@ -1,4 +1,4 @@ -import type { ComponentProps, JSX } from "solid-js" +import type { JSX } from "solid-js" import { DockShell, DockTray } from "./dock-surface" export function DockPrompt(props: { @@ -7,13 +7,12 @@ export function DockPrompt(props: { children: JSX.Element footer: JSX.Element ref?: (el: HTMLDivElement) => void - bodyProps?: Omit, "children"> }) { const slot = (name: string) => `${props.kind}-${name}` return (
- +
{props.header}
{props.children}