Tree Style Tab by Piro (piro_or)
Show tabs like a tree.
You'll need Firefox to use this extension
Extension Metadata
Screenshots
About this extension
This extension provides the ability to work with tabs as "trees".
New tabs opened from the current tab are automatically organized as "children" of the current tab.
Such "branches" are easily folded (collapsed) by clicking on the arrow shown in the "parent" tab, so you no longer need to suffer from too many visible tabs.
If you want, you can restructure the tree via drag and drop.
Please enjoy as you like!
Tips:
Permissions:
This extension needs following permissions to work as expected:
Extensions extend TST:
TST provides an API for other extensions.
Some extend the behavior of TST's sidebar panel:
Latest information is available at the repository.
New tabs opened from the current tab are automatically organized as "children" of the current tab.
Such "branches" are easily folded (collapsed) by clicking on the arrow shown in the "parent" tab, so you no longer need to suffer from too many visible tabs.
If you want, you can restructure the tree via drag and drop.
- Such a tree of tabs will behave like a visual browsing history for you.
- For example, if you see a list of search results for a topic, each search result link will open in new child tab.
- New tabs opened from these "child" tabs will appear as descendants of their originating tabs.
- You'll easily dig and dig deeply, without losing your browsing trail - if you want to go back to the original search result, you just have to switch to the "root" tab.
- Moreover, each tree will reflect a group of tabs on a similar topic.
Please enjoy as you like!
Tips:
- "F1" key toggles the TST sidebar.
- "Tree Style Tab" toolbar button also toggles the sidebar. If it's unnecessary, you can remove it from the toolbar.
Permissions:
This extension needs following permissions to work as expected:
- Required:
- Access browser tabs: to list both active and non-active tabs in the UI.
- Access recently closed tabs (access to the session information): to save tree information of tabs (structure, collapsed/expanded state, etc.) to tabs' session information and ask to Firefox to manage them as bundled.
- Display notifications to you: to present information and navigate users without blocking.
- Optional:
- Read and modify bookmarks: to simulate bookmark related commands in the tab context menu. / to detect tabs whether they were opened from bookmarks or not.
- Access your data for all websites (run scripts on webpages): to detect the Ctrl key is pressed/released and prevent needless expansion of collapsed trees while tab switching with Ctrl-Tab/Ctrl-Shift-Tab.
- Hide and show browser tabs: just for automated tests, not required on regular use.
Extensions extend TST:
TST provides an API for other extensions.
Some extend the behavior of TST's sidebar panel:
- Multiple Tab Handler allows you to select multiple tabs with long-press on tabs. It also allows you to close mutiple tabs with long-press on the closebox on tabs.
- TST Bookmarks Subpanel allows you to show a small "Bookmarks" sidebar panel below tabs in the TST's sidebar.
- TST More Tree Commands provides more context menu and keyboard shortcut commands to manipulate TST's tree.
- TST Active Tab in Collapsed Tree shows a small tab on a collapsed tree as an alias for the last active tab under the tree.
- TST Active Tab on Scroll Bar shows a marker to indicate the position of the active tab, on the scrollbar.
- TST Auto Group Tabs provides ability to group newly opened tabs automatically in various conditions.
- TST Lock Tree Collapsed allows you to lock arbitrary trees as collapsed. (This was a built-in feature on TST 3.3.0-3.3.6, and now separated.)
- TST Tab Drag Handle provides a small tooltip on tab labels to start dragging of tabs for specific operations. (This was a built-in feature on TST 2.6.0-3.3.6, and now separated.)
- TST Indent Line provides indent lines like Visual Studio Code's one.
- TST Open Bookmarks as Partial Tree allows you to open only some bookmarks in a folder as a partial tree. Moreover, it also provides ability to open tree of container tabs from bookmarks.
- TST-MiddleClick allows you to run "undo close tab" or "close currently active tab" command on middle click on the sidebar.
- Tree Style Tab Mouse Wheel allows you to switch active tab by wheel scrolling.
- Tab flip for Tree Style Tab allows you to move focus to the tab previously focused, by clicking on the active tab.
- Tree Style Tab Focus Preceding Tab on Close focuses the previous tab instead of the next tab when a tab is closed.
- Tab Unloader for Tree Style Tab allows you to unload tabs by clicking on them in the sidebar.
- Move unloaded tabs for Tree Style Tab allows you to move tabs in the sidebar without them becoming active.
- Tree Style Tab in Separate Window allows you to open the Tree Style Tab sidebar page in a new window.
- Auto Tab Discard supports the fake context menu in the Tree Style Tab sidebar.
- UnloadTabs supports the fake context menu in the Tree Style Tab sidebar.
- Bookmark Tree for Tree Style Tab allows you to bookmark and restore trees.
- TST Hoverswitch allows you to switch tabs by hovering over them.
- TST Colored Tabs gives custom background color for tabs based on their domain.
- Add Last Active Class To Tab helps you to give custom appearance for the "previously active tab".
- TSTのタブを閉じるボタンの挙動を変更 (tst-change-close-tab-button-be) allows you to close the parent and its all descendants with a middle click on the closebox of a parent tab, whether the tree is expanded or collapsed.
- TST Select Random Tab adds a context menu option for selecting a random tab in a Tree Style Tab tree.
- TST Tab Search provides a search field (as a subpanel) to filter opened tabs in the sidebar.
- TST Fade Old Tabs sorts all tabs in 3 categories – 'recent', 'older' and 'oldest' by latest visit time, and applies different opacity to them.
- TST Colorize Tabs allows to set individual color for each tab in order to highlight it.
- TST New Tabs First puts a newly opened root level at the top of the sidebar.
Latest information is available at the repository.
Developer comments
Rate your experience
Report this add-on for abuse
If you think this add-on violates Mozilla's add-on policies or has security or privacy issues, please report these issues to Mozilla using this form.
Please don't use this form to report bugs or request add-on features; this report will be sent to Mozilla and not to the add-on developer.
PermissionsLearn more
This add-on needs to:
- Display notifications to you
- Access recently closed tabs
- Access browser tabs
This add-on may also ask to:
- Read and modify bookmarks
- Hide and show browser tabs
- Access your data for all websites
More information
- Add-on Links
- Version
- 3.9.10
- Size
- 1,001.17 KB
- Last updated
- 2 days ago (Nov 10, 2022)
- Related Categories
- License
- Custom License
- Privacy Policy
- Read the privacy policy for this add-on
- Version History
Add to collection
Release notes for 3.9.10
3.9.10 (2022.11.10):
- Fix incompletely applied workaround for missing icons problem.
- Fix regressions from misdetected temporary state of tabs on recent versions.
- Group tabs correctly even if they are opened from a bookmark folder containing any subfolders.
- Fix disability to request "bookmarks" optional permission via options UI about auto-grouping of tabs from bookmarks.
- Fix disability to request optional permissions due to a garbage in internal configs.
- Update
rulocale by wvxwxvw. Thanks!
- Reduce memory allocation and CPU usage (by nirvdrum, thanks!)
- Restoer saved tree structure for tabs opened from a bookmark folder with middle-click, if it is possible.
- Add missing choice corresponding to the option added at 3.9.6 to the shortcut menu on the toolbar button.
- Load internal pages via
ext+treestyletab:URLs with fragment identifiers correctly.
- Fix performance regression with large number tabs on 3.9.6.
- Open new tab with specified "default" container correctly, even if the active tab is in non-default container and new tabs are configured to inherit the container of the active tab.
- Update
rulocale by wvxwxvw. Thanks!
- Fix invisible icons on desktop notifications and the startup page (regression on 3.9.4)
- Use more visible color for scrollbar thumb on some theme including "Dark".
- Add a new expert choice for new child tab from existing tab: simulating Firefox's default behavior
browser.tabs.insertRelatedAfterCurrent=true. - Fixup tree structure correctly when a new tab is inserted middle of a tree by
browser.tabs.insertAfterCurrent=true. - Update the title of a group tab more certainly.
- Clear wrongly memorized "Ctrl key is pressed down" state after tab open/close to avoid unstable behavior after some operations.
- Introduce new placeholders for bookmark folder name to bookmark multiple tabs.
%GROUP%: the title of the parent tab if it is a group tab, otherwise blank.%HOURS%: hours of the time in two digits.%MINUTES%: minutes of the time in two digits.%SECONDS%: seconds of the time in two digits.%MILLISECONDS%: milliseconds of the time in three digits.%ANY(value1, value2, ...)%: the first effective value in the given list.
- Allow to pin group tabs.
- It will leave an alias group tab at its original position.
- Drag-and-drop onto pinned group tab is treated as the action on the alias group tab.
- API: add a new notification message type
try-handle-newtabto allow helper addons to override TST's behavior of opened tab handling.
- Update
delocale by SammysHP. Thanks!
- Becomes more robust around tabs opened and closed immediately (ex. new tabs for download links), and less ghost tabs left on the sidebar.
- Don't treat tabs as "opened from the active tab of the destination window" anymore if they are moved across windows while opening. This improves compatibilit with Aggregate Tabs to Main Window.
- Apply theme color to the toolbar icon more certainly.
- Use the name of the parent "group tab" as the default folder name for the "Bookmark This Tree" command, if possible.
- Detect tabs as opened from bookmarks correctly on Firefox 105 and later.
- Never load pending tabs after they are moved across windows more certainly.
- Update
rulocale by wvxwxvw. Thanks!
- Fix hanging after a tree is moved across windows via drag and drop. (regression on 3.9.0)
- Keep tabs shifted when the mouse cursor moves onto the scrollbar.
- Becomes more safe for invalid value of distance to shift tabs for auto-shown scrollbar.
- Fix incompatibility with user styles including
@mediaand pseudo elements. - Expose options for experts: shifting of tabs avoiding covered by the auto-shown scrollbar.
- Shift tabs to avoid auto-shown scrollbar, only on hover around the scrollbar by default.
- Windows for tabs detached from an existing window inherits the size and state ("maximized" or "fullscreen") from the source window like Firefox does.
- Reduce some edge case problems (like infinite loop, stop working, and so on) around re-layouting and synchronization of the sidebar contents.
- Update indent level and parent information correctly for descendant tabs orphaned by tab detaching via any operation ouside of TST.
- Imitate tab focus behavior about Firefox's
browser.tabs.insertRelatedAfterCurrentandbrowser.tabs.selectOwnerOnClosemore correctly. - Never load pending tabs after they are moved across windows.
- Fix unexpected fail of drag-and-drop of selected multiple trees after drag-and-drop across windows.
- Open
about:readerURL bookmarks with their original URL (because addons cannot openabout:readerURLs.) - Always expose the "Manage Devices..." item under the "Send Tree to Device" menu in the tab context menu, if it is running on Fennec.
- Brush up wording of "other tabs" in Japanese locale.
- Reset configs more safely with the "Reset" in the options page.
- Change the method to keep space to show auto-hidden scrollbar: using
margininstead ofpaddingintab-item-substance. - Never change coloring of auto-hidden scroll bar.
- Reintroduce support for
@importrule in user styles. - Totally reconstruct API to insert extra contents to TST's sidebar area. Now we can insert arbitrary UI element above/below all tabs, and track events about keyboard input and focus.
- Respond to a
get-treerequest more certainly even if it is requested with aTab.idand from atabs.onCreatedlistener. - Add a new log module
sidebar/tst-api-frontend. - Update
zh_CNlocale by NightSharp. Thanks!
More extensions by Piro (piro_or)
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
- There are no ratings yet
*Tree Tabs:
Cross-browser, more powerful faatures, and high customizability.
(One large difference between TST is: the design strategy.
TST is aimed to keep it simple and work together with other addons as possible as it can.)
* Tab Center Reborn:
Vertical tab bar without tree.
* sidebarTabs:
Vertical tab bar with grouped tabs.
Some Google Chrome extensions made by someone not me also provide similar feature.
* Sidewise Tree Style Tabs
* Tabs Outliner
* Treely: Tree Style Tab Manager
* Tree Style Tab
## Public API for other addons
For addon authors, Tree Style Tab provides public API. If your addon provides extra context menu items for context menu on tabs, you can easily support TST's context menu with small changes. For more details, see the API document.