Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(97)

Side by Side Diff: content/browser/frame_host/render_frame_host_manager.cc

Issue 1938753002: OOPIF: Replicate allowFullscreen flag. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/frame_host/render_frame_host_manager.h" 5 #include "content/browser/frame_host/render_frame_host_manager.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <utility> 10 #include <utility>
(...skipping 954 matching lines...) Expand 10 before | Expand all | Expand 10 after
965 bool should_enforce) { 965 bool should_enforce) {
966 if (!SiteIsolationPolicy::AreCrossProcessFramesPossible()) 966 if (!SiteIsolationPolicy::AreCrossProcessFramesPossible())
967 return; 967 return;
968 968
969 for (const auto& pair : proxy_hosts_) { 969 for (const auto& pair : proxy_hosts_) {
970 pair.second->Send(new FrameMsg_EnforceStrictMixedContentChecking( 970 pair.second->Send(new FrameMsg_EnforceStrictMixedContentChecking(
971 pair.second->GetRoutingID(), should_enforce)); 971 pair.second->GetRoutingID(), should_enforce));
972 } 972 }
973 } 973 }
974 974
975 void RenderFrameHostManager::OnDidUpdateFrameOwnerProperties(
976 const blink::WebFrameOwnerProperties& properties) {
977 if (!SiteIsolationPolicy::AreCrossProcessFramesPossible())
978 return;
979
980 // WebFrameOwnerProperties exist only for frames that have a parent.
981 CHECK(frame_tree_node_->parent());
982 SiteInstance* parent_instance =
983 frame_tree_node_->parent()->current_frame_host()->GetSiteInstance();
984
985 // Notify the RenderFrame if it lives in a different process from its parent.
986 if (render_frame_host_->GetSiteInstance() != parent_instance) {
987 render_frame_host_->Send(new FrameMsg_SetFrameOwnerProperties(
988 render_frame_host_->GetRoutingID(), properties));
989 }
990
991 // Notify this frame's proxies if they live in a different process from its
992 // parent. This is only currently needed for the allowFullscreen property,
993 // since that can be queried on RemoteFrame ancestors.
994 //
995 // TODO(alexmos): It would be sufficient to only send this update to proxies
996 // in the current FrameTree.
997 for (const auto& pair : proxy_hosts_) {
998 if (pair.second->GetSiteInstance() != parent_instance) {
999 pair.second->Send(new FrameMsg_SetFrameOwnerProperties(
1000 pair.second->GetRoutingID(), properties));
1001 }
1002 }
1003 }
1004
975 void RenderFrameHostManager::OnDidUpdateOrigin( 1005 void RenderFrameHostManager::OnDidUpdateOrigin(
976 const url::Origin& origin, 1006 const url::Origin& origin,
977 bool is_potentially_trustworthy_unique_origin) { 1007 bool is_potentially_trustworthy_unique_origin) {
978 for (const auto& pair : proxy_hosts_) { 1008 for (const auto& pair : proxy_hosts_) {
979 pair.second->Send( 1009 pair.second->Send(
980 new FrameMsg_DidUpdateOrigin(pair.second->GetRoutingID(), origin, 1010 new FrameMsg_DidUpdateOrigin(pair.second->GetRoutingID(), origin,
981 is_potentially_trustworthy_unique_origin)); 1011 is_potentially_trustworthy_unique_origin));
982 } 1012 }
983 } 1013 }
984 1014
(...skipping 1582 matching lines...) Expand 10 before | Expand all | Expand 10 after
2567 resolved_url)) { 2597 resolved_url)) {
2568 DCHECK(!dest_instance || 2598 DCHECK(!dest_instance ||
2569 dest_instance == render_frame_host_->GetSiteInstance()); 2599 dest_instance == render_frame_host_->GetSiteInstance());
2570 return false; 2600 return false;
2571 } 2601 }
2572 2602
2573 return true; 2603 return true;
2574 } 2604 }
2575 2605
2576 } // namespace content 2606 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/frame_host/render_frame_host_manager.h ('k') | content/browser/frame_host/render_frame_proxy_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698