* Make TreeTabModel::SetCollapsed/DoesBelongToCollapsedNode() TreeTabModel: - Cache closest collapsed ancestor per node for O(1) visibility checks. - Add SetCollapsed(id, collapsed) as UI entry point; calls TreeTabNode::set_collapsed() and updates cache for affected descendants. - Add DoesBelongToCollapsedNode(id) for quick "under collapsed" queries. - Update cache in AddTreeTabNode (new node's closest collapsed), RemoveTreeTabNode (recompute nodes that had removed id as closest), and OnTreeTabNodeMoved (recompute moved node and its descendants after reparent). TreeTabNode: - Add GetClosestCollapsedAncestorId(), IsUnderCollapsedAncestor(), CollectDescendantIds() for cache maintenance and tree traversal. TreeTabNodeTabCollection: - Add on_move callback; BuildTreeTabs and constructor take on_move. - OnReparented invokes on_move so TreeTabModel can refresh collapse cache. - Change on_create signature from void(const TreeTabNode&) to void(TreeTabNode&) so delegate can pass AddTreeTabNode (non-const). BraveTreeTabStripCollectionDelegate: - Wire on_move to TreeTabModel::OnTreeTabNodeMoved in BuildTreeTabs and in single-node TreeTabNodeTabCollection creation sites.
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.
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.