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

Side by Side Diff: content/browser/renderer_host/render_view_host_impl.cc

Issue 2506183002: Make window.open() IPCs be frame-based (Closed)
Patch Set: Compile fix. Created 4 years 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/renderer_host/render_view_host_impl.h" 5 #include "content/browser/renderer_host/render_view_host_impl.h"
6 6
7 #include <set> 7 #include <set>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 734 matching lines...) Expand 10 before | Expand all | Expand 10 after
745 return true; 745 return true;
746 } 746 }
747 } 747 }
748 748
749 if (delegate_->OnMessageReceived(this, msg)) 749 if (delegate_->OnMessageReceived(this, msg))
750 return true; 750 return true;
751 751
752 bool handled = true; 752 bool handled = true;
753 IPC_BEGIN_MESSAGE_MAP(RenderViewHostImpl, msg) 753 IPC_BEGIN_MESSAGE_MAP(RenderViewHostImpl, msg)
754 IPC_MESSAGE_HANDLER(FrameHostMsg_RenderProcessGone, OnRenderProcessGone) 754 IPC_MESSAGE_HANDLER(FrameHostMsg_RenderProcessGone, OnRenderProcessGone)
755 IPC_MESSAGE_HANDLER(ViewHostMsg_ShowView, OnShowView)
756 IPC_MESSAGE_HANDLER(ViewHostMsg_ShowWidget, OnShowWidget) 755 IPC_MESSAGE_HANDLER(ViewHostMsg_ShowWidget, OnShowWidget)
757 IPC_MESSAGE_HANDLER(ViewHostMsg_ShowFullscreenWidget, 756 IPC_MESSAGE_HANDLER(ViewHostMsg_ShowFullscreenWidget,
758 OnShowFullscreenWidget) 757 OnShowFullscreenWidget)
759 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateState, OnUpdateState) 758 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateState, OnUpdateState)
760 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateTargetURL, OnUpdateTargetURL) 759 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateTargetURL, OnUpdateTargetURL)
761 IPC_MESSAGE_HANDLER(ViewHostMsg_Close, OnClose) 760 IPC_MESSAGE_HANDLER(ViewHostMsg_Close, OnClose)
762 IPC_MESSAGE_HANDLER(ViewHostMsg_RequestMove, OnRequestMove) 761 IPC_MESSAGE_HANDLER(ViewHostMsg_RequestMove, OnRequestMove)
763 IPC_MESSAGE_HANDLER(ViewHostMsg_DocumentAvailableInMainFrame, 762 IPC_MESSAGE_HANDLER(ViewHostMsg_DocumentAvailableInMainFrame,
764 OnDocumentAvailableInMainFrame) 763 OnDocumentAvailableInMainFrame)
765 IPC_MESSAGE_HANDLER(ViewHostMsg_DidContentsPreferredSizeChange, 764 IPC_MESSAGE_HANDLER(ViewHostMsg_DidContentsPreferredSizeChange,
(...skipping 23 matching lines...) Expand all
789 RenderProcessHostImpl::ReleaseOnCloseACK( 788 RenderProcessHostImpl::ReleaseOnCloseACK(
790 GetProcess(), 789 GetProcess(),
791 delegate_->GetSessionStorageNamespaceMap(), 790 delegate_->GetSessionStorageNamespaceMap(),
792 GetRoutingID()); 791 GetRoutingID());
793 } 792 }
794 793
795 GetWidget()->ShutdownAndDestroyWidget(false); 794 GetWidget()->ShutdownAndDestroyWidget(false);
796 delete this; 795 delete this;
797 } 796 }
798 797
799 void RenderViewHostImpl::CreateNewWindow(
800 int32_t route_id,
801 int32_t main_frame_route_id,
802 int32_t main_frame_widget_route_id,
803 const mojom::CreateNewWindowParams& params,
804 SessionStorageNamespace* session_storage_namespace) {
805 mojom::CreateNewWindowParamsPtr validated_params(params.Clone());
806 GetProcess()->FilterURL(false, &validated_params->target_url);
807 GetProcess()->FilterURL(false, &validated_params->opener_url);
808 GetProcess()->FilterURL(true, &validated_params->opener_security_origin);
809
810 delegate_->CreateNewWindow(GetSiteInstance(), route_id, main_frame_route_id,
811 main_frame_widget_route_id, *validated_params,
812 session_storage_namespace);
813 }
814
815 void RenderViewHostImpl::CreateNewWidget(int32_t route_id, 798 void RenderViewHostImpl::CreateNewWidget(int32_t route_id,
816 blink::WebPopupType popup_type) { 799 blink::WebPopupType popup_type) {
817 delegate_->CreateNewWidget(GetProcess()->GetID(), route_id, popup_type); 800 delegate_->CreateNewWidget(GetProcess()->GetID(), route_id, popup_type);
818 } 801 }
819 802
820 void RenderViewHostImpl::CreateNewFullscreenWidget(int32_t route_id) { 803 void RenderViewHostImpl::CreateNewFullscreenWidget(int32_t route_id) {
821 delegate_->CreateNewFullscreenWidget(GetProcess()->GetID(), route_id); 804 delegate_->CreateNewFullscreenWidget(GetProcess()->GetID(), route_id);
822 } 805 }
823 806
824 void RenderViewHostImpl::OnShowView(int route_id,
825 WindowOpenDisposition disposition,
826 const gfx::Rect& initial_rect,
827 bool user_gesture) {
828 delegate_->ShowCreatedWindow(GetProcess()->GetID(), route_id, disposition,
829 initial_rect, user_gesture);
830 Send(new ViewMsg_Move_ACK(route_id));
831 }
832
833 void RenderViewHostImpl::OnShowWidget(int route_id, 807 void RenderViewHostImpl::OnShowWidget(int route_id,
834 const gfx::Rect& initial_rect) { 808 const gfx::Rect& initial_rect) {
835 delegate_->ShowCreatedWidget(GetProcess()->GetID(), route_id, initial_rect); 809 delegate_->ShowCreatedWidget(GetProcess()->GetID(), route_id, initial_rect);
836 Send(new ViewMsg_Move_ACK(route_id)); 810 Send(new ViewMsg_Move_ACK(route_id));
837 } 811 }
838 812
839 void RenderViewHostImpl::OnShowFullscreenWidget(int route_id) { 813 void RenderViewHostImpl::OnShowFullscreenWidget(int route_id) {
840 delegate_->ShowCreatedFullscreenWidget(GetProcess()->GetID(), route_id); 814 delegate_->ShowCreatedFullscreenWidget(GetProcess()->GetID(), route_id);
841 Send(new ViewMsg_Move_ACK(route_id)); 815 Send(new ViewMsg_Move_ACK(route_id));
842 } 816 }
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
1083 } else { 1057 } else {
1084 render_view_ready_on_process_launch_ = true; 1058 render_view_ready_on_process_launch_ = true;
1085 } 1059 }
1086 } 1060 }
1087 1061
1088 void RenderViewHostImpl::RenderViewReady() { 1062 void RenderViewHostImpl::RenderViewReady() {
1089 delegate_->RenderViewReady(this); 1063 delegate_->RenderViewReady(this);
1090 } 1064 }
1091 1065
1092 } // namespace content 1066 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698