From 044546ae0c8f783ece98c965e51b7d7dc79e0496 Mon Sep 17 00:00:00 2001 From: Mohamed Boudra Date: Mon, 20 Apr 2026 10:45:51 +0700 Subject: [PATCH] perf(explorer-sidebar): skip PR queries when sidebar is closed Thread isOpen down to SidebarContent so usePrPaneData stays disabled until the user actually opens the sidebar. --- packages/app/src/components/explorer-sidebar.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/app/src/components/explorer-sidebar.tsx b/packages/app/src/components/explorer-sidebar.tsx index 901999a35..834298f81 100644 --- a/packages/app/src/components/explorer-sidebar.tsx +++ b/packages/app/src/components/explorer-sidebar.tsx @@ -292,6 +292,7 @@ export function ExplorerSidebar({ workspaceRoot={workspaceRoot} isGit={isGit} isMobile={isMobile} + isOpen={isOpen} onOpenFile={onOpenFile} /> @@ -324,6 +325,7 @@ export function ExplorerSidebar({ workspaceRoot={workspaceRoot} isGit={isGit} isMobile={false} + isOpen={isOpen} onOpenFile={onOpenFile} /> @@ -340,6 +342,7 @@ interface SidebarContentProps { workspaceRoot: string; isGit: boolean; isMobile: boolean; + isOpen: boolean; onOpenFile?: (filePath: string) => void; } @@ -352,6 +355,7 @@ function SidebarContent({ workspaceRoot, isGit, isMobile, + isOpen, onOpenFile, }: SidebarContentProps) { const { theme } = useUnistyles(); @@ -360,8 +364,8 @@ function SidebarContent({ const prPane = usePrPaneData({ serverId, cwd: workspaceRoot, - enabled: canQueryPullRequest, - timelineEnabled: activeTab === "pr" && canQueryPullRequest, + enabled: canQueryPullRequest && isOpen, + timelineEnabled: activeTab === "pr" && canQueryPullRequest && isOpen, }); const hasPullRequest = prPane.prNumber !== null; const requestedTab: ExplorerTab =