Index: headless/lib/browser/headless_browser_context_impl.h |
diff --git a/headless/lib/browser/headless_browser_context_impl.h b/headless/lib/browser/headless_browser_context_impl.h |
index 688244917936123d7ac9e369501f85f4135758bb..05c595cb09a8f9caa0ac3cb845dcf2b3440e5b60 100644 |
--- a/headless/lib/browser/headless_browser_context_impl.h |
+++ b/headless/lib/browser/headless_browser_context_impl.h |
@@ -45,6 +45,12 @@ class HeadlessBrowserContextImpl : public HeadlessBrowserContext, |
void Close() override; |
const std::string& Id() const override; |
+ void SetFrameTreeNodeId(int render_process_id, |
+ int render_frame_routing_id, |
+ int frame_tree_node_id); |
+ |
+ void RemoveFrameTreeNode(int render_process_id, int render_frame_routing_id); |
+ |
// BrowserContext implementation: |
std::unique_ptr<content::ZoomLevelDelegate> CreateZoomLevelDelegate( |
const base::FilePath& partition_path) override; |
@@ -81,6 +87,10 @@ class HeadlessBrowserContextImpl : public HeadlessBrowserContext, |
HeadlessBrowserImpl* browser() const; |
const HeadlessBrowserContextOptions* options() const; |
+ // Returns the FrameTreeNode id for the corresponding RenderFrameHost or -1 |
+ // if it can't be found. Can be called on any thread. |
+ int GetFrameTreeNodeId(int render_process_id, int render_frame_id) const; |
+ |
private: |
HeadlessBrowserContextImpl( |
HeadlessBrowserImpl* browser, |
@@ -98,6 +108,9 @@ class HeadlessBrowserContextImpl : public HeadlessBrowserContext, |
std::unordered_map<std::string, std::unique_ptr<HeadlessWebContents>> |
web_contents_map_; |
+ mutable base::Lock frame_tree_node_map_lock_; // Guards frame_tree_node_map_ |
Charlie Reis
2017/04/27 18:58:02
If we need to keep this, please include more comme
alex clarke (OOO till 29th)
2017/04/28 09:14:44
Done.
|
+ std::map<std::pair<int, int>, int> frame_tree_node_map_; |
+ |
std::unique_ptr<content::PermissionManager> permission_manager_; |
std::string id_; |