Chromium Code Reviews| Index: content/browser/frame_host/navigation_entry_impl.h |
| diff --git a/content/browser/frame_host/navigation_entry_impl.h b/content/browser/frame_host/navigation_entry_impl.h |
| index 0528da0db31bda4f4087a3beb3d0f6e105734986..be60261c66316d91e61d5eddf9a005e417ce5ba4 100644 |
| --- a/content/browser/frame_host/navigation_entry_impl.h |
| +++ b/content/browser/frame_host/navigation_entry_impl.h |
| @@ -7,6 +7,7 @@ |
| #include "base/basictypes.h" |
| #include "base/memory/ref_counted.h" |
| +#include "base/memory/scoped_vector.h" |
| #include "base/time/time.h" |
| #include "content/browser/frame_host/frame_navigation_entry.h" |
| #include "content/browser/site_instance_impl.h" |
| @@ -44,6 +45,9 @@ class CONTENT_EXPORT NavigationEntryImpl |
| // Ref counted pointer that keeps the FrameNavigationEntry alive as long as |
| // it is needed by this node's NavigationEntry. |
| scoped_refptr<FrameNavigationEntry> frame_entry; |
| + |
| + // List of child TreeNodes, which will be deleted when this node is. |
| + ScopedVector<TreeNode> children; |
| }; |
| static NavigationEntryImpl* FromNavigationEntry(NavigationEntry* entry); |
| @@ -128,6 +132,24 @@ class CONTENT_EXPORT NavigationEntryImpl |
| // pieces of non-persisted state, as documented on the members below. |
| void ResetForCommit(); |
| + // Exposes the tree of FrameNavigationEntries that make up this joint session |
| + // history item. |
| + // In default Chrome, this tree only has a root node with an unshared |
| + // FrameNavigationEntry. Subframes are only added to the tree if the |
| + // --site-per-process flag is passed. |
| + TreeNode* root_node() const { |
| + return frame_tree_.get(); |
| + } |
| + |
| + // Finds the TreeNode associated with |frame_tree_node_id| to add or update |
| + // its FrameNavigationEntry. A new FrameNavigationEntry is added if none |
| + // exists, or else the existing one (which might be shared with other |
| + // NavigationEntries) is updated with the given parameters. |
| + void AddOrUpdateFrameEntry(int64 frame_tree_node_id, |
| + SiteInstanceImpl* site_instance, |
|
Charlie Reis
2015/03/24 18:05:12
I'm not thrilled with having to take all of the Fr
|
| + const GURL& url, |
| + const Referrer& referrer); |
| + |
| void set_unique_id(int unique_id) { |
| unique_id_ = unique_id; |
| } |