
When a link click opens the page in a new tab, the previous primary main frame and opener values are severed. Prior to this CL, this meant that a triple-partitioned :visited links key could not be constructed. To support triple-key partitioning for links that open in a new tab, this CL allows HistoryTabHelper to populate top_level_url with the URL of the LiveOriginalOpenerChain in the case that PreviousPrimaryMainFrameURL and Opener are empty or invalid. For simplicity, this CL also combines/simplifies the existing code paths for replacing PreviousPrimaryMainFrameURL with Opener (that added support for context clicks). Now, all of this code lives in HistoryTabHelper. Bug: 400828290 Change-Id: Ie39210ff6ebacd327e430d19ae6df269c4e750d0 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6388415 Reviewed-by: manuk hovanesian <manukh@chromium.org> Reviewed-by: Alex Moshchuk <alexmos@chromium.org> Commit-Queue: Kyra Seevers <kyraseevers@chromium.org> Cr-Commit-Position: refs/heads/main@{#1437866}
Chromium
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead,
follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.