diff --git a/src/activate/registerCommands.ts b/src/activate/registerCommands.ts index 486566357b..1883083b6e 100644 --- a/src/activate/registerCommands.ts +++ b/src/activate/registerCommands.ts @@ -114,8 +114,20 @@ const getCommandsMap = ({ context, outputChannel, provider }: RegisterCommandOpt const { promptForCustomStoragePath } = await import("../shared/storagePathManager") await promptForCustomStoragePath() }, - "roo-cline.focusInput": () => { - provider.postMessageToWebview({ type: "action", action: "focusInput" }) + "roo-cline.focusInput": async () => { + try { + const panel = getPanel() + if (!panel) { + await vscode.commands.executeCommand("workbench.view.extension.roo-cline-ActivityBar") + } else if (panel === tabPanel) { + panel.reveal(vscode.ViewColumn.Active, false) + } else if (panel === sidebarPanel) { + await vscode.commands.executeCommand(`${ClineProvider.sideBarId}.focus`) + provider.postMessageToWebview({ type: "action", action: "focusInput" }) + } + } catch (error) { + outputChannel.appendLine(`Error focusing input: ${error}`) + } }, "roo.acceptInput": () => { const visibleProvider = getVisibleProviderOrLog(outputChannel)