From cb481d9ac861813d4ff091ed33bcac9e882da1a1 Mon Sep 17 00:00:00 2001 From: Adam <2363879+adamdotdevin@users.noreply.github.com> Date: Wed, 21 Jan 2026 06:17:55 -0600 Subject: wip(app): line selection --- packages/app/src/components/prompt-input.tsx | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'packages/app/src/components') diff --git a/packages/app/src/components/prompt-input.tsx b/packages/app/src/components/prompt-input.tsx index 5e936737a..b2c8cccca 100644 --- a/packages/app/src/components/prompt-input.tsx +++ b/packages/app/src/components/prompt-input.tsx @@ -30,6 +30,7 @@ import { useLayout } from "@/context/layout" import { useSDK } from "@/context/sdk" import { useNavigate, useParams } from "@solidjs/router" import { useSync } from "@/context/sync" +import { useComments } from "@/context/comments" import { FileIcon } from "@opencode-ai/ui/file-icon" import { Button } from "@opencode-ai/ui/button" import { Icon } from "@opencode-ai/ui/icon" @@ -115,6 +116,7 @@ export const PromptInput: Component = (props) => { const files = useFile() const prompt = usePrompt() const layout = useLayout() + const comments = useComments() const params = useParams() const dialog = useDialog() const providers = useProviders() @@ -158,6 +160,7 @@ export const PromptInput: Component = (props) => { const sessionKey = createMemo(() => `${params.dir}${params.id ? "/" + params.id : ""}`) const tabs = createMemo(() => layout.tabs(sessionKey())) + const view = createMemo(() => layout.view(sessionKey())) const activeFile = createMemo(() => { const tab = tabs().active() if (!tab) return @@ -1555,7 +1558,18 @@ export const PromptInput: Component = (props) => { {(item) => { const preview = createMemo(() => selectionPreview(item.path, item.selection, item.preview)) return ( -
+
{ + if (!item.commentID) return + comments.setFocus({ file: item.path, id: item.commentID }) + view().reviewPanel.open() + tabs().open("review") + }} + >
@@ -1576,7 +1590,10 @@ export const PromptInput: Component = (props) => { icon="close" variant="ghost" class="h-5 w-5" - onClick={() => prompt.context.remove(item.key)} + onClick={(e) => { + e.stopPropagation() + prompt.context.remove(item.key) + }} aria-label={language.t("prompt.context.removeFile")} />
-- cgit v1.2.3