From 9ca2133e34aa822d114a67771e30bb9d7538c6f6 Mon Sep 17 00:00:00 2001 From: akumatus Date: Tue, 11 Feb 2025 13:43:41 +0000 Subject: [PATCH] fix(core): input not automatically focused (#10050) Fix issue [AF-2161](https://linear.app/affine-design/issue/AF-2161). --- .../presets/ai/chat-panel/components/add-popover.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/frontend/core/src/blocksuite/presets/ai/chat-panel/components/add-popover.ts b/packages/frontend/core/src/blocksuite/presets/ai/chat-panel/components/add-popover.ts index 7c43624e7..502f102ff 100644 --- a/packages/frontend/core/src/blocksuite/presets/ai/chat-panel/components/add-popover.ts +++ b/packages/frontend/core/src/blocksuite/presets/ai/chat-panel/components/add-popover.ts @@ -7,7 +7,7 @@ import { SignalWatcher, WithDisposable } from '@blocksuite/affine/global/utils'; import { SearchIcon } from '@blocksuite/icons/lit'; import type { DocMeta } from '@blocksuite/store'; import { css, html } from 'lit'; -import { property, state } from 'lit/decorators.js'; +import { property, query, state } from 'lit/decorators.js'; import type { DocSearchMenuConfig } from '../chat-config'; import type { ChatChip } from '../chat-context'; @@ -93,11 +93,20 @@ export class ChatPanelAddPopover extends SignalWatcher( @property({ attribute: false }) accessor abortController!: AbortController; + @query('.search-input') + accessor searchInput!: HTMLInputElement; + override connectedCallback() { super.connectedCallback(); this._updateDocGroup(); } + override firstUpdated() { + requestAnimationFrame(() => { + this.searchInput.focus(); + }); + } + override render() { const items = Array.isArray(this._docGroup.items) ? this._docGroup.items