summaryrefslogtreecommitdiffstats
path: root/chromecast/browser/cast_content_browser_client.h
diff options
context:
space:
mode:
authoralexmos <alexmos@chromium.org>2015-06-10 10:14:21 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-10 17:14:42 +0000
commite201c7cd1473ee1ff5b677bea1d3eb80c6680ed3 (patch)
treec9bb5c005c182dd3b15b4b164939eb659d3f1e91 /chromecast/browser/cast_content_browser_client.h
parent86c8f011706dd12451797fbc14491c8e08db8319 (diff)
downloadchromium_src-e201c7cd1473ee1ff5b677bea1d3eb80c6680ed3.zip
chromium_src-e201c7cd1473ee1ff5b677bea1d3eb80c6680ed3.tar.gz
chromium_src-e201c7cd1473ee1ff5b677bea1d3eb80c6680ed3.tar.bz2
Track frame openers in FrameTreeNodes instead of WebContents.
This CL is the first step of refactoring frame openers to support out-of-process iframes: - Frame openers are now tracked by FrameTreeNodes rather than WebContents. Openers can point to subframes, and this change ensures that a cross-process opener can be properly used for things like navigation or postMessage. As part of this, the logic for clearing an opener when it is destroyed also moved into FrameTreeNode, where it uses a new Observer. - Various renderer->browser opener plumbing is refactored to use RenderFrameHosts instead of RenderViewHosts, which enables a newly created WebContents (or rather, its main frame) to track a subframe opener in the browser process. Future CLs will add support to further propagate per-frame opener information to a new window's renderer process, so that window.opener points to the right RenderFrameProxy in the cross-process case. Note that a subframe does not have an opener when it is created. The only way for it to gain an opener is if it is targeted by window.open(). Support for this will be added in a future CL. BUG=225940, 431769 Review URL: https://codereview.chromium.org/1086283002 Cr-Commit-Position: refs/heads/master@{#333751}
Diffstat (limited to 'chromecast/browser/cast_content_browser_client.h')
-rw-r--r--chromecast/browser/cast_content_browser_client.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/chromecast/browser/cast_content_browser_client.h b/chromecast/browser/cast_content_browser_client.h
index fa71076..5fc6da0 100644
--- a/chromecast/browser/cast_content_browser_client.h
+++ b/chromecast/browser/cast_content_browser_client.h
@@ -112,7 +112,8 @@ class CastContentBrowserClient: public content::ContentBrowserClient {
bool opener_suppressed,
content::ResourceContext* context,
int render_process_id,
- int opener_id,
+ int opener_render_view_id,
+ int opener_render_frame_id,
bool* no_javascript_access) override;
void GetAdditionalMappedFilesForChildProcess(
const base::CommandLine& command_line,