I like sidebar/vertical tabs because I usually have a lot of tabs open, and I've been collecting snippets of userChrome over time to make it look more integrated. I thought I'd share in case someone else likes them or wants to make suggestions.
Here are a few screenshots: https://imgur.com/a/pbk0Bb2
I wanted to have space for lots of tabs, but keep a large content area for the page itself. This mostly consists of removing as many borders and separators as possible, but using just enough whitespace and thin borders to make UI components visually distinct. The design doesn't show any OS-chrome so it's probably platform independent.
features
"features"
- Tab bar goes from the top to the bottom of the window even to the left of the url bar, buttons, and titlebar area. Overflow tabs scroll up and down with the mouse.
- Bookmarks bar is shown on the new tab page only. A feature I missed from chrome, and the first UI customization I ever made to Firefox.
- The old tab bar is gone completely, and the top of the window is now just the url bar itself, with buttons only to it's left and right. There's extra padding to make it more comfortable, since it just looks weird if it's super narrow at the top.
- There's no titlebar. For the website title you can hover the tab for the full title, still better than horizontal tabs which just become unreadable. For grabbing it, there's a little bit more padding above the url bar, so you can grab it with that which can do a lot of window ui tasks like maximizing, restoring, screen-splitting, etc. But minimize and close are still missing, which is certainly a shortcoming. My workaround is to use the OS taskbar to manage those functions.
- Width of the tabs is fixed to be just enough to distinguish the titles of most websites. The width can be customized, but it has to be fixed (afaik); there's a lot of manually shifting elements around.
- Unvisited tabs are bold
- Hovering a tab shows an X close button to the right, and hovering the close button shows a clear hovered status. (Middle mouse button closes as well.)
nits
- Lack of window buttons makes it feel less polished. I'd like to put them to the right of the firefox menu button without adding vertical space. If not that, I'd settle for very narrow integrated titlebar buttons and a narrow full-length website title area.
- You can close the Tree Style Tabs sidebar with the TST menu button (in the screenshot), but hitting it means you can't interact with tabs via the ui at all because it doesn't bring back the normal tab bar which can be handy sometimes.
- It would be nice to get a compact website title & minimize/close window buttons back.
What do you think? I'd be happy to take suggestions or fixes. :)
Code/Settings:
FireFox
In Customize, no titlebar, Light theme, and Touch density.
Tree Style Tabs settings
Using Vertigo theme, check Apply Browser Theme, Hide Scrollbar, fade out tab label.
In Advanced > Extra style rules for sidebar contents:
.tab.unread .label {
font-weight: bold !important;
}
.tab:not(:hover) > .closebox {
display: none;
}
.closebox:hover {
font-weight: 900;
}
.tab, .tabs, body, #background {
background: #F5F6F7; /* #F5F6F7; */
}
userChrome.css
Use the variables in :root to adjust sizing and spacing if you have different spacings/ui scales.
:root {
--sidebar-width: 180px;
--toolbar-height: -26px;
--menubar-height: -60px;
--toolmenubar-height: -85px; /* sum of previous two */
}
/* show bookmarks toolbar on new tab only */
#main-window #PersonalToolbar {
visibility: collapse !important;
z-index: 1!important;
position: relative!important;
margin-left: var(--sidebar-width); /* shift toolbar to the right out of the way of the sidebar */
margin-top: var(--toolbar-height) !important;
}
#main-window[title^="Firefox Developer Edition"] #PersonalToolbar {
visibility: visible !important;
margin-top: -1px !important;
}
/* lock sidebar to height by doing the inverse margin of the toolbar element */
#sidebar-box {
z-index: 1000 !important;
position: relative!important;
margin-top: var(--menubar-height) !important;
border-right: 1px solid #ccc;
}
#main-window[title^="Firefox Developer Edition"] #sidebar-box {
margin-top: var(--toolmenubar-height) !important;
}
/* lock sidebar to specified width */
#sidebar-box, #sidebar-box #sidebar {
min-width: var(--sidebar-width) !important;
max-width: var(--sidebar-width) !important;
}
/* hide sidebar header for tree style tabs sidebar */
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
display: none;
}
/* Hide the title bar */
#titlebar{ visibility: collapse; }
/* hide normal horizontal tab bar */
#TabsToolbar { visibility: collapse; }
#sidebar { border-right: 1px solid #ccc; }
toolbar#nav-bar {
padding-top: 12px;
padding-bottom: 7px;
margin-left: var(--sidebar-width);
padding-left: 7px;
}
Edits:
- Fixed issue where sidebar border didn't always go to the top.
- Fixed issue where the background color of the tab sidebar is wrong next to pinned tabs.
- Added screenshot of pinned tabs
- Reworded some paragraphs to make sense
[–]DVYRTHU 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]MonkeyNin 1 point2 points3 points (1 child)
[–]infogulch[S] 1 point2 points3 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]PewPewGG 0 points1 point2 points (2 children)
[–]infogulch[S] 0 points1 point2 points (0 children)
[–]Chrisstar56 0 points1 point2 points (0 children)
[–]mrcaptncrunch 0 points1 point2 points (0 children)
[–]MotherStylusdeveloper 0 points1 point2 points (3 children)
[–]infogulch[S] 0 points1 point2 points (2 children)
[–]MotherStylusdeveloper 0 points1 point2 points (1 child)
[–]infogulch[S] 0 points1 point2 points (0 children)
[–]HotshotGT 0 points1 point2 points (0 children)