Repository navigation
Conversation
Add `Preferences > Appearance > Show tabs vertically`. When enabled, the page tabs in the titlebar are hidden and shown as a vertical list on the left side of the main window instead. - The vertical tab bar supports the same features as the horizontal one (bookmark, dirty state, close button, middle-click to close, drag to reorder and the context menu). In vertical mode the context menu says `Close Tabs Below` instead of `Close Tabs to the Right`. - The shared tab behaviors are moved from `LauncherTabBar` into `LauncherTabBarBase` without logic changes, so both tab bars use the same implementation. - The vertical tab bar can be resized with a `GridSplitter` (the same way as the repository sidebar) and its width is persisted in layout. - Add translations of the new strings for all supported locales.
ara-hwang
force-pushed
the
feature/vertical-tabs-upstream
branch
from
October 8, 2026 08:38
89eee69 to
79a0e95
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Title: feature: add option to show launcher tabs vertically
Base:
sourcegit-scm/sourcegit:develop← Head:ara-hwang/sourcegit:feature/vertical-tabs-upstreamDescription
This PR adds a new appearance option: Preferences › Appearance › Show tabs vertically.
When it is enabled, the page tabs are removed from the titlebar and shown as a vertical list on the left side of the main window. This is similar to the vertical tabs layout found in browsers and editors.
The option is disabled by default, so nothing changes for existing users.
Motivation
Screenshots
Default (unchanged): horizontal tabs overflow with 7 repositories open
Vertical tabs
Vertical tabs (dark theme)
Changes
ViewModels/Preferences.cs: adds the persisted propertyUseVerticalTabs(defaultfalse).ViewModels/LayoutInfo.cs: addsLauncherVerticalTabsWidth(default200), which stores the width of the vertical tab bar.Views/Preferences.axaml: adds a checkbox to theAppearancetab, belowUse fixed tab width in titlebar.Views/LauncherVerticalTabBar.axaml(.cs)(new): the vertical tab bar.Create New Tabbutton sits at the bottom. It reuses the existingText.PageTabBar.Newstring.Views/LauncherTabBarBase.cs(new): the shared tab behaviors moved here fromLauncherTabBarwithout logic changes, so both tab bars use the same code. These behaviors are:The only difference is the context menu item that closes the following tabs. In vertical mode it reads
Close Tabs Belowinstead ofClose Tabs to the Right.Views/Launcher.axaml(.cs): when the option is enabled, hides the titlebar tabs and shows the vertical tab bar in a left column. The workspace and page-switcher buttons stay in the titlebar.GridSplitter(min 120 / max 480) and the width is persisted.IsVerticalTabsVisible/VerticalTabsWidthmirrorIsNormalSidebarVisible/SidebarWidthinRepository.axaml.cs.Resources/Locales: addsText.Preferences.Appearance.UseVerticalTabsandText.PageTabBar.Tab.CloseBelowto all 16 locales. Onlyen_USandko_KRwere written by native speakers, so translators are welcome to improve the others.Test
dotnet build -c Release: 0 errors and 0 warnings.dotnet format --verify-no-changes src/SourceGit.csprojpasses.Close Tabs Belowin vertical mode.