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

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

Issue 1098763003: Send origin updates to frame proxies when a frame navigates to new origin. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix Windows builds (add missing base:: to UTF16toASCII) Created 5 years, 8 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 <map> 7 #include <map>
8 8
9 #include "base/lazy_instance.h" 9 #include "base/lazy_instance.h"
10 #include "content/child/webmessageportchannel_impl.h" 10 #include "content/child/webmessageportchannel_impl.h"
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 IPC_MESSAGE_HANDLER(FrameMsg_DeleteProxy, OnDeleteProxy) 204 IPC_MESSAGE_HANDLER(FrameMsg_DeleteProxy, OnDeleteProxy)
205 IPC_MESSAGE_HANDLER(FrameMsg_ChildFrameProcessGone, OnChildFrameProcessGone) 205 IPC_MESSAGE_HANDLER(FrameMsg_ChildFrameProcessGone, OnChildFrameProcessGone)
206 IPC_MESSAGE_HANDLER_GENERIC(FrameMsg_CompositorFrameSwapped, 206 IPC_MESSAGE_HANDLER_GENERIC(FrameMsg_CompositorFrameSwapped,
207 OnCompositorFrameSwapped(msg)) 207 OnCompositorFrameSwapped(msg))
208 IPC_MESSAGE_HANDLER(FrameMsg_DisownOpener, OnDisownOpener) 208 IPC_MESSAGE_HANDLER(FrameMsg_DisownOpener, OnDisownOpener)
209 IPC_MESSAGE_HANDLER(FrameMsg_DidStartLoading, OnDidStartLoading) 209 IPC_MESSAGE_HANDLER(FrameMsg_DidStartLoading, OnDidStartLoading)
210 IPC_MESSAGE_HANDLER(FrameMsg_DidStopLoading, OnDidStopLoading) 210 IPC_MESSAGE_HANDLER(FrameMsg_DidStopLoading, OnDidStopLoading)
211 IPC_MESSAGE_HANDLER(FrameMsg_DidUpdateSandboxFlags, OnDidUpdateSandboxFlags) 211 IPC_MESSAGE_HANDLER(FrameMsg_DidUpdateSandboxFlags, OnDidUpdateSandboxFlags)
212 IPC_MESSAGE_HANDLER(FrameMsg_DispatchLoad, OnDispatchLoad) 212 IPC_MESSAGE_HANDLER(FrameMsg_DispatchLoad, OnDispatchLoad)
213 IPC_MESSAGE_HANDLER(FrameMsg_DidUpdateName, OnDidUpdateName) 213 IPC_MESSAGE_HANDLER(FrameMsg_DidUpdateName, OnDidUpdateName)
214 IPC_MESSAGE_HANDLER(FrameMsg_DidUpdateOrigin, OnDidUpdateOrigin)
214 IPC_MESSAGE_UNHANDLED(handled = false) 215 IPC_MESSAGE_UNHANDLED(handled = false)
215 IPC_END_MESSAGE_MAP() 216 IPC_END_MESSAGE_MAP()
216 217
217 // Note: If |handled| is true, |this| may have been deleted. 218 // Note: If |handled| is true, |this| may have been deleted.
218 return handled; 219 return handled;
219 } 220 }
220 221
221 bool RenderFrameProxy::Send(IPC::Message* message) { 222 bool RenderFrameProxy::Send(IPC::Message* message) {
222 return RenderThread::Get()->Send(message); 223 return RenderThread::Get()->Send(message);
223 } 224 }
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
296 } 297 }
297 298
298 void RenderFrameProxy::OnDispatchLoad() { 299 void RenderFrameProxy::OnDispatchLoad() {
299 web_frame_->DispatchLoadEventForFrameOwner(); 300 web_frame_->DispatchLoadEventForFrameOwner();
300 } 301 }
301 302
302 void RenderFrameProxy::OnDidUpdateName(const std::string& name) { 303 void RenderFrameProxy::OnDidUpdateName(const std::string& name) {
303 web_frame_->setReplicatedName(blink::WebString::fromUTF8(name)); 304 web_frame_->setReplicatedName(blink::WebString::fromUTF8(name));
304 } 305 }
305 306
307 void RenderFrameProxy::OnDidUpdateOrigin(const url::Origin& origin) {
308 web_frame_->setReplicatedOrigin(blink::WebSecurityOrigin::createFromString(
309 blink::WebString::fromUTF8(origin.string())));
310 }
311
306 void RenderFrameProxy::frameDetached() { 312 void RenderFrameProxy::frameDetached() {
307 if (web_frame_->parent()) { 313 if (web_frame_->parent()) {
308 web_frame_->parent()->removeChild(web_frame_); 314 web_frame_->parent()->removeChild(web_frame_);
309 315
310 // Let the browser process know this subframe is removed, so that it is 316 // Let the browser process know this subframe is removed, so that it is
311 // destroyed in its current process. 317 // destroyed in its current process.
312 Send(new FrameHostMsg_Detach(routing_id_)); 318 Send(new FrameHostMsg_Detach(routing_id_));
313 } 319 }
314 320
315 web_frame_->close(); 321 web_frame_->close();
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 blink::WebUserGestureIndicator::isProcessingUserGesture(); 374 blink::WebUserGestureIndicator::isProcessingUserGesture();
369 blink::WebUserGestureIndicator::consumeUserGesture(); 375 blink::WebUserGestureIndicator::consumeUserGesture();
370 Send(new FrameHostMsg_OpenURL(routing_id_, params)); 376 Send(new FrameHostMsg_OpenURL(routing_id_, params));
371 } 377 }
372 378
373 void RenderFrameProxy::forwardInputEvent(const blink::WebInputEvent* event) { 379 void RenderFrameProxy::forwardInputEvent(const blink::WebInputEvent* event) {
374 Send(new FrameHostMsg_ForwardInputEvent(routing_id_, event)); 380 Send(new FrameHostMsg_ForwardInputEvent(routing_id_, event));
375 } 381 }
376 382
377 } // namespace 383 } // namespace
OLDNEW
« no previous file with comments | « content/renderer/render_frame_proxy.h ('k') | content/test/data/frame_tree/page_with_two_frames.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698