* Add split tab support for tree tabs In order to support split tabs in tree tabs, mainly we need to reimplment two methods - CreateSplit and Unsplit. For CreateSplit, we need to wrap the split tabs in a tree node, and insert it at the position. For Unsplit, we need to extract the tabs back to the tree nodes. - TabStripCollection: virtual CreateSplit, Unsplit, AddCollectionMapping, RemoveCollectionMapping; AddTabCollectionAtPosition for delegate. - BraveTabStripCollection(delegate): override CreateSplit/Unsplit and AddCollectionMapping/RemoveCollectionMapping; PassKey overloads for AddTabCollectionAtPosition and collection mapping. - BraveTreeTabStripCollectionDelegate: implement CreateSplit (wrap split in tree node, insert at position), Unsplit (extract tabs back to tree nodes), AddCollectionMapping/RemoveCollectionMapping for TREE_NODE holding split/group; MoveTabsRecursive same-position handling for split/group creation. - Tab strip API: handle TREE_NODE in tab_converters (unpinned container). - Docs: tree tabs + split tabs flow and MoveTabsRecursive behavior.
Brave docs
This directory contains documentation for the Brave Browser. For additional resources outside this repository, go to:
Important
If you add new documents, please also add a link to them in the Document Index below.
Creating Documentation
Guidelines
- Markdown documents must follow the Markdown Style Guide.
Previewing changes
Locally using md_browser
# in src/brave/
npm run docs
This is only an estimate. The github view may differ.
Document Index
Checking Out and Patching
- Upgrading Chromium Upgrading
brave-coreto a newer Chromium version. - Patching with
plasterA patching engine for semantical patching of upstream Chromium. - WebUI Overriding
- DevTools Frontend Patching Managing changes to the upstream project.
Tools
- Claude Code Skills - Slash commands for automating common development tasks (commit, review, preflight, CI, and more).
General Development
gninotes - Brief notes on the use ofsource.gnifiles in our code base.- Rust notes - General recommendations on integrating rust code
into
brave-core - Adapting Chromium tests to the Brave Codebase - Suggestions on how to make chromium test work on our test targets.
- Ship a File to All Clients - How to ship a file to all clients via component updater.
- Git Configuration - General recommendations for setting up and optimizing your Git environment.
- Ignoring Files from Format and Presubmit Checks - How to exclude files from format and presubmit checks.
- Siso Customization - How we customize Siso to work for us.