Skip to content
Merged
2 changes: 1 addition & 1 deletion src-tauri/gen/apple/codex-monitor_iOS/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,4 @@
<key>NSMicrophoneUsageDescription</key>
<string>Allow access to the microphone for dictation.</string>
</dict>
</plist>
</plist>
9 changes: 7 additions & 2 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,10 @@ import { useWorkspaceFileListing } from "@app/hooks/useWorkspaceFileListing";
import { useGitBranches } from "@/features/git/hooks/useGitBranches";
import { useBranchSwitcher } from "@/features/git/hooks/useBranchSwitcher";
import { useBranchSwitcherShortcut } from "@/features/git/hooks/useBranchSwitcherShortcut";
import { useWorkspaceRefreshOnFocus } from "@/features/workspaces/hooks/useWorkspaceRefreshOnFocus";
import {
REMOTE_WORKSPACE_REFRESH_INTERVAL_MS,
useWorkspaceRefreshOnFocus,
} from "@/features/workspaces/hooks/useWorkspaceRefreshOnFocus";
import { useWorkspaceRestore } from "@/features/workspaces/hooks/useWorkspaceRestore";
import { useRenameWorktreePrompt } from "@/features/workspaces/hooks/useRenameWorktreePrompt";
import { useLayoutController } from "@app/hooks/useLayoutController";
Expand Down Expand Up @@ -1691,7 +1694,9 @@ function MainApp() {
useWorkspaceRefreshOnFocus({
workspaces,
refreshWorkspaces,
listThreadsForWorkspace
listThreadsForWorkspace,
backendMode: appSettings.backendMode,
pollIntervalMs: REMOTE_WORKSPACE_REFRESH_INTERVAL_MS,
});

useRemoteThreadRefreshOnFocus({
Expand Down
47 changes: 47 additions & 0 deletions src/features/app/components/Sidebar.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -242,4 +242,51 @@ describe("Sidebar", () => {
fireEvent.click(draftRow);
expect(onSelectWorkspace).toHaveBeenCalledWith("ws-1");
});

it("does not show a workspace activity indicator when a thread is processing", () => {
render(
<Sidebar
{...baseProps}
workspaces={[
{
id: "ws-1",
name: "Workspace",
path: "/tmp/workspace",
connected: true,
settings: { sidebarCollapsed: false },
},
]}
groupedWorkspaces={[
{
id: null,
name: "Workspaces",
workspaces: [
{
id: "ws-1",
name: "Workspace",
path: "/tmp/workspace",
connected: true,
settings: { sidebarCollapsed: false },
},
],
},
]}
threadsByWorkspace={{
"ws-1": [
{
id: "thread-1",
name: "Thread 1",
updated_at: new Date().toISOString(),
} as never,
],
}}
threadStatusById={{
"thread-1": { isProcessing: true, hasUnread: false, isReviewing: false },
}}
/>,
);

const indicator = screen.queryByTitle("Streaming updates in progress");
expect(indicator).toBeNull();
});
});
Loading