From 2ba1ecabc925d2a4a83c81d7ceab2f88abb90701 Mon Sep 17 00:00:00 2001 From: Adam <2363879+adamdotdevin@users.noreply.github.com> Date: Thu, 5 Mar 2026 13:40:19 -0600 Subject: [PATCH] fix(app): load tab on open file --- packages/app/src/pages/session.tsx | 1 + packages/app/src/pages/session/helpers.test.ts | 3 ++- packages/app/src/pages/session/helpers.ts | 11 ++++++++--- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/app/src/pages/session.tsx b/packages/app/src/pages/session.tsx index 9ef7cffe5..1476e616e 100644 --- a/packages/app/src/pages/session.tsx +++ b/packages/app/src/pages/session.tsx @@ -720,6 +720,7 @@ export default function Page() { showAllFiles, tabForPath: file.tab, openTab: tabs().open, + setActive: tabs().setActive, loadFile: file.load, }) diff --git a/packages/app/src/pages/session/helpers.test.ts b/packages/app/src/pages/session/helpers.test.ts index aaa5b932f..9c77c34af 100644 --- a/packages/app/src/pages/session/helpers.test.ts +++ b/packages/app/src/pages/session/helpers.test.ts @@ -11,12 +11,13 @@ describe("createOpenReviewFile", () => { return `file://${path}` }, openTab: (tab) => calls.push(`open:${tab}`), + setActive: (tab) => calls.push(`active:${tab}`), loadFile: (path) => calls.push(`load:${path}`), }) openReviewFile("src/a.ts") - expect(calls).toEqual(["show", "load:src/a.ts", "tab:src/a.ts", "open:file://src/a.ts"]) + expect(calls).toEqual(["show", "load:src/a.ts", "tab:src/a.ts", "open:file://src/a.ts", "active:file://src/a.ts"]) }) }) diff --git a/packages/app/src/pages/session/helpers.ts b/packages/app/src/pages/session/helpers.ts index 20f1d99a8..60b26cdf4 100644 --- a/packages/app/src/pages/session/helpers.ts +++ b/packages/app/src/pages/session/helpers.ts @@ -24,15 +24,20 @@ export const createOpenReviewFile = (input: { showAllFiles: () => void tabForPath: (path: string) => string openTab: (tab: string) => void + setActive: (tab: string) => void loadFile: (path: string) => any | Promise }) => { return (path: string) => { batch(() => { input.showAllFiles() const maybePromise = input.loadFile(path) - const openTab = () => input.openTab(input.tabForPath(path)) - if (maybePromise instanceof Promise) maybePromise.then(openTab) - else openTab() + const open = () => { + const tab = input.tabForPath(path) + input.openTab(tab) + input.setActive(tab) + } + if (maybePromise instanceof Promise) maybePromise.then(open) + else open() }) } }