Przeglądaj źródła

fix(desktop): focus prompt input after dialog close

Adam 3 miesięcy temu
rodzic
commit
99680baf83

+ 1 - 0
packages/desktop/src/components/prompt-input.tsx

@@ -850,6 +850,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
         </Show>
         <div class="relative max-h-[240px] overflow-y-auto">
           <div
+            data-component="prompt-input"
             ref={(el) => {
               editorRef = el
               props.ref?.(el)

+ 1 - 2
packages/ui/src/components/session-turn.tsx

@@ -108,8 +108,7 @@ export function SessionTurn(
 
   createResizeObserver(
     () => state.contentRef,
-    ({ height }) => {
-      console.log(height)
+    () => {
       scrollToBottom()
     },
   )

+ 4 - 1
packages/ui/src/context/dialog.tsx

@@ -33,6 +33,10 @@ function init() {
     },
     close() {
       active()?.onClose?.()
+      if (!active()?.onClose) {
+        const promptInput = document.querySelector("[data-component=prompt-input]") as HTMLElement
+        promptInput?.focus()
+      }
       setActive(undefined)
     },
     show(element: DialogElement, owner: Owner, onClose?: () => void) {
@@ -48,7 +52,6 @@ function init() {
                 open={true}
                 onOpenChange={(open) => {
                   if (!open) {
-                    console.log("closing")
                     result.close()
                   }
                 }}