Commit graph

3 commits

Author SHA1 Message Date
Chris Hasson
e484bfff32
Reapply "Always focus the panel when clicked to ensure menu buttons are visible" (#4598)
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-06-17 16:51:56 -04:00
Matt Rubens
85fd86e675
Revert "Always focus the panel when clicked to ensure menu buttons are visible" (#4592)
Revert "Always focus the panel when clicked to ensure menu buttons are visibl…"

This reverts commit 1b1e5a20f1.
2025-06-12 12:51:34 -04:00
Chris Hasson
1b1e5a20f1
Always focus the panel when clicked to ensure menu buttons are visible (#4511)
feat: Clicking the panel will always focus it

Adds a new `focusPanel` command and utility function to allow focusing the active webview panel (tab or sidebar). This command is now triggered when a user clicks on non-interactive content within the webview, improving user experience by automatically bringing the panel into focus.

This fixes an issue where sometimes the menu options do not appear because the panel is not in focus:
https://github.com/orgs/Kilo-Org/projects/4/views/1?pane=issue&itemId=113936749&issue=Kilo-Org%7Ckilocode%7C619

**Details**
- **New Command:** Introduced `focusPanel` command to programmatically focus the webview panel.
- **Utility Function:** Created `src/utils/focusPanel.ts` to encapsulate the logic for revealing tab panels or focusing sidebar panels.
- **Webview Integration:** Added a `focusPanelRequest` message type to `WebviewMessage` and implemented a handler in `webviewMessageHandler` to execute the new `focusPanel` command.
- **User Experience:** Implemented a `useAddNonInteractiveClickListener` hook in `webview-ui` that sends a `focusPanelRequest` message to the extension when a click occurs on non-interactive elements, ensuring the webview gains focus.
- **Refactor:** Modified the `focusInput` command to utilize the new `focusPanel` utility, reducing code duplication and centralizing panel focus logic.

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-06-12 00:09:19 -04:00