| 1 | import { createContext, type ReactNode } from "react"; |
| 2 | |
| 3 | // The router is shared with the other platforms; only iOS uses native columns. |
| 4 | export const NativeWorkspaceModeContext = createContext(false); |
| 5 | /** Retained tabs must not update another tab's navigation options. */ |
| 6 | export const NativeWorkspaceTabActivityContext = createContext<{ |
| 7 | readonly active: boolean; |
| 8 | readonly isActive: () => boolean; |
| 9 | } | null>(null); |
| 10 | export const NativePrimaryColumnContext = createContext<{ |
| 11 | readonly selectedThreadKey: string | null; |
| 12 | readonly selectedPullRequestKey: string | null; |
| 13 | } | null>(null); |
| 14 | export const NativeWorkspaceInspectorContext = createContext<{ |
| 15 | readonly render: (() => ReactNode) | undefined; |
| 16 | readonly visible: boolean; |
| 17 | }>({ render: undefined, visible: false }); |