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

Side by Side Diff: content/renderer/render_frame_proxy.cc

Issue 2714943004: Move unique name generation and tracking into //content. (Closed)
Patch Set: . Created 3 years, 9 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/renderer/render_frame_proxy.h" 5 #include "content/renderer/render_frame_proxy.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <map> 8 #include <map>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 if (!render_view->is_swapped_out()) 118 if (!render_view->is_swapped_out())
119 render_view->SetSwappedOut(true); 119 render_view->SetSwappedOut(true);
120 } else { 120 } else {
121 // Create a frame under an existing parent. The parent is always expected 121 // Create a frame under an existing parent. The parent is always expected
122 // to be a RenderFrameProxy, because navigations initiated by local frames 122 // to be a RenderFrameProxy, because navigations initiated by local frames
123 // should not wind up here. 123 // should not wind up here.
124 124
125 web_frame = parent->web_frame()->createRemoteChild( 125 web_frame = parent->web_frame()->createRemoteChild(
126 replicated_state.scope, 126 replicated_state.scope,
127 blink::WebString::fromUTF8(replicated_state.name), 127 blink::WebString::fromUTF8(replicated_state.name),
128 blink::WebString::fromUTF8(replicated_state.unique_name),
129 replicated_state.sandbox_flags, proxy.get(), opener); 128 replicated_state.sandbox_flags, proxy.get(), opener);
129 proxy->unique_name_ = replicated_state.unique_name;
130 render_view = parent->render_view(); 130 render_view = parent->render_view();
131 render_widget = parent->render_widget(); 131 render_widget = parent->render_widget();
132 } 132 }
133 133
134 proxy->Init(web_frame, render_view, render_widget); 134 proxy->Init(web_frame, render_view, render_widget);
135 135
136 // Initialize proxy's WebRemoteFrame with the security origin and other 136 // Initialize proxy's WebRemoteFrame with the security origin and other
137 // replicated information. 137 // replicated information.
138 // TODO(dcheng): Calling this when parent_routing_id != MSG_ROUTING_NONE is 138 // TODO(dcheng): Calling this when parent_routing_id != MSG_ROUTING_NONE is
139 // mostly redundant, since we already pass the name and sandbox flags in 139 // mostly redundant, since we already pass the name and sandbox flags in
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 } 212 }
213 } 213 }
214 214
215 void RenderFrameProxy::DidCommitCompositorFrame() { 215 void RenderFrameProxy::DidCommitCompositorFrame() {
216 } 216 }
217 217
218 void RenderFrameProxy::SetReplicatedState(const FrameReplicationState& state) { 218 void RenderFrameProxy::SetReplicatedState(const FrameReplicationState& state) {
219 DCHECK(web_frame_); 219 DCHECK(web_frame_);
220 web_frame_->setReplicatedOrigin(state.origin); 220 web_frame_->setReplicatedOrigin(state.origin);
221 web_frame_->setReplicatedSandboxFlags(state.sandbox_flags); 221 web_frame_->setReplicatedSandboxFlags(state.sandbox_flags);
222 web_frame_->setReplicatedName(blink::WebString::fromUTF8(state.name), 222 web_frame_->setReplicatedName(blink::WebString::fromUTF8(state.name));
223 blink::WebString::fromUTF8(state.unique_name));
224 web_frame_->setReplicatedInsecureRequestPolicy(state.insecure_request_policy); 223 web_frame_->setReplicatedInsecureRequestPolicy(state.insecure_request_policy);
225 web_frame_->setReplicatedPotentiallyTrustworthyUniqueOrigin( 224 web_frame_->setReplicatedPotentiallyTrustworthyUniqueOrigin(
226 state.has_potentially_trustworthy_unique_origin); 225 state.has_potentially_trustworthy_unique_origin);
227 web_frame_->setReplicatedFeaturePolicyHeader( 226 web_frame_->setReplicatedFeaturePolicyHeader(
228 FeaturePolicyHeaderToWeb(state.feature_policy_header)); 227 FeaturePolicyHeaderToWeb(state.feature_policy_header));
229 if (state.has_received_user_gesture) 228 if (state.has_received_user_gesture)
230 web_frame_->setHasReceivedUserGesture(); 229 web_frame_->setHasReceivedUserGesture();
231 230
232 web_frame_->resetReplicatedContentSecurityPolicy(); 231 web_frame_->resetReplicatedContentSecurityPolicy();
233 for (const auto& header : state.accumulated_csp_headers) 232 for (const auto& header : state.accumulated_csp_headers)
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 void RenderFrameProxy::OnDidStopLoading() { 338 void RenderFrameProxy::OnDidStopLoading() {
340 web_frame_->didStopLoading(); 339 web_frame_->didStopLoading();
341 } 340 }
342 341
343 void RenderFrameProxy::OnDispatchLoad() { 342 void RenderFrameProxy::OnDispatchLoad() {
344 web_frame_->dispatchLoadEventOnFrameOwner(); 343 web_frame_->dispatchLoadEventOnFrameOwner();
345 } 344 }
346 345
347 void RenderFrameProxy::OnDidUpdateName(const std::string& name, 346 void RenderFrameProxy::OnDidUpdateName(const std::string& name,
348 const std::string& unique_name) { 347 const std::string& unique_name) {
349 web_frame_->setReplicatedName(blink::WebString::fromUTF8(name), 348 web_frame_->setReplicatedName(blink::WebString::fromUTF8(name));
350 blink::WebString::fromUTF8(unique_name)); 349 unique_name_ = unique_name;
351 } 350 }
352 351
353 void RenderFrameProxy::OnAddContentSecurityPolicy( 352 void RenderFrameProxy::OnAddContentSecurityPolicy(
354 const ContentSecurityPolicyHeader& header) { 353 const ContentSecurityPolicyHeader& header) {
355 web_frame_->addReplicatedContentSecurityPolicyHeader( 354 web_frame_->addReplicatedContentSecurityPolicyHeader(
356 blink::WebString::fromUTF8(header.header_value), header.type, 355 blink::WebString::fromUTF8(header.header_value), header.type,
357 header.source); 356 header.source);
358 } 357 }
359 358
360 void RenderFrameProxy::OnResetContentSecurityPolicy() { 359 void RenderFrameProxy::OnResetContentSecurityPolicy() {
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
526 blink::WebLocalFrame* source) { 525 blink::WebLocalFrame* source) {
527 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID(); 526 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID();
528 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id)); 527 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id));
529 } 528 }
530 529
531 void RenderFrameProxy::frameFocused() { 530 void RenderFrameProxy::frameFocused() {
532 Send(new FrameHostMsg_FrameFocused(routing_id_)); 531 Send(new FrameHostMsg_FrameFocused(routing_id_));
533 } 532 }
534 533
535 } // namespace 534 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698