This commit is contained in:
James Brunton 2025-09-18 15:54:34 +01:00
parent d8ff2c0aa8
commit 98a0274bc9

View File

@ -20,8 +20,7 @@ const viewOptionStyle = {
// Build view options showing text always // Build view options showing text always
const createViewOptions = (currentView: WorkbenchType, switchingTo: WorkbenchType | null, isToolSelected: boolean) => { const createViewOptions = (currentView: WorkbenchType, switchingTo: WorkbenchType | null, isToolSelected: boolean) => {
const options = [ const viewerOption = {
{
label: ( label: (
<div style={viewOptionStyle as React.CSSProperties}> <div style={viewOptionStyle as React.CSSProperties}>
{switchingTo === "viewer" ? ( {switchingTo === "viewer" ? (
@ -33,30 +32,9 @@ const createViewOptions = (currentView: WorkbenchType, switchingTo: WorkbenchTyp
</div> </div>
), ),
value: "viewer", value: "viewer",
}, };
{
label: (
<div style={viewOptionStyle as React.CSSProperties}>
{currentView === "fileEditor" ? (
<>
{switchingTo === "fileEditor" ? <Loader size="xs" /> : <FolderIcon fontSize="small" />}
<span>Active Files</span>
</>
) : (
<>
{switchingTo === "fileEditor" ? <Loader size="xs" /> : <FolderIcon fontSize="small" />}
<span>Active Files</span>
</>
)}
</div>
),
value: "fileEditor",
},
];
// Only add Page Editor option when not in a tool const pageEditorOption = {
if (!isToolSelected) {
options.splice(1, 0, {
label: ( label: (
<div style={viewOptionStyle as React.CSSProperties}> <div style={viewOptionStyle as React.CSSProperties}>
{currentView === "pageEditor" ? ( {currentView === "pageEditor" ? (
@ -73,10 +51,33 @@ const createViewOptions = (currentView: WorkbenchType, switchingTo: WorkbenchTyp
</div> </div>
), ),
value: "pageEditor", value: "pageEditor",
}); };
}
return options; const fileEditorOption = {
label: (
<div style={viewOptionStyle as React.CSSProperties}>
{currentView === "fileEditor" ? (
<>
{switchingTo === "fileEditor" ? <Loader size="xs" /> : <FolderIcon fontSize="small" />}
<span>Active Files</span>
</>
) : (
<>
{switchingTo === "fileEditor" ? <Loader size="xs" /> : <FolderIcon fontSize="small" />}
<span>Active Files</span>
</>
)}
</div>
),
value: "fileEditor",
};
// Build options array conditionally
return [
viewerOption,
...(isToolSelected ? [] : [pageEditorOption]),
fileEditorOption,
];
}; };
interface TopControlsProps { interface TopControlsProps {