feat(settings): Session tabs toggle in General → Navigation

A new Session tabs group (web/desktop only) turns the header session
tabs off; disabled, the header renders the exact pre-tabs view — plain
session title with meta row and the always-visible session menu (the
same block VS Code uses). The Alt+W close-tab shortcut no-ops while
tabs are off. Registered in settings search with a matching anchor;
labels translated in all locales.
This commit is contained in:
Bohdan Triapitsyn
2026-08-25 00:05:45 +03:00
parent 2c1d8d592e
commit ce90e7e24f
16 changed files with 83 additions and 5 deletions
+3 -2
View File
@@ -436,6 +436,7 @@ export const Header: React.FC = () => {
const openContextPlan = useUIStore((state) => state.openContextPlan);
const closeContextPanel = useUIStore((state) => state.closeContextPanel);
const shortcutOverrides = useUIStore((state) => state.shortcutOverrides);
const sessionTabsEnabled = useUIStore((state) => state.sessionTabsEnabled);
const getCurrentModel = useConfigStore((state) => state.getCurrentModel);
const runtimeApis = useRuntimeAPIs();
@@ -1654,7 +1655,7 @@ export const Header: React.FC = () => {
</span>
) : null}
</div>
) : isVSCode ? (
) : (isVSCode || !sessionTabsEnabled) ? (
<div className="app-region-no-drag mr-3 flex min-w-0 max-w-full items-center gap-0.5 py-0.5 -my-0.5 text-left">
{!isSidebarOpen ? (
<SessionSwitcherDropdown align="start">
@@ -1876,7 +1877,7 @@ export const Header: React.FC = () => {
</div>
)}
{activeSurfaceHeader || isVSCode ? <div className="flex-1" /> : null}
{activeSurfaceHeader || isVSCode || !sessionTabsEnabled ? <div className="flex-1" /> : null}
<div className="flex shrink-0 items-center gap-1">
{showDesktopHeaderContextUsage && stableDesktopContextUsage ? (