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

Side by Side Diff: content/renderer/render_frame_impl.h

Issue 1303773002: Give the main frame a RenderWidget. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years, 3 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 #ifndef CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 5 #ifndef CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 class WebGeolocationClient; 58 class WebGeolocationClient;
59 class WebMouseEvent; 59 class WebMouseEvent;
60 class WebContentDecryptionModule; 60 class WebContentDecryptionModule;
61 class WebMediaPlayer; 61 class WebMediaPlayer;
62 class WebPresentationClient; 62 class WebPresentationClient;
63 class WebPushClient; 63 class WebPushClient;
64 class WebSecurityOrigin; 64 class WebSecurityOrigin;
65 struct WebCompositionUnderline; 65 struct WebCompositionUnderline;
66 struct WebContextMenuData; 66 struct WebContextMenuData;
67 struct WebCursorInfo; 67 struct WebCursorInfo;
68 struct WebScreenInfo;
68 } 69 }
69 70
70 namespace gfx { 71 namespace gfx {
71 class Point; 72 class Point;
72 class Range; 73 class Range;
73 class Rect; 74 class Rect;
74 } 75 }
75 76
76 namespace media { 77 namespace media {
77 class CdmFactory; 78 class CdmFactory;
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 struct ResourceResponseHead; 122 struct ResourceResponseHead;
122 struct StartNavigationParams; 123 struct StartNavigationParams;
123 struct StreamOverrideParameters; 124 struct StreamOverrideParameters;
124 class VRDispatcher; 125 class VRDispatcher;
125 126
126 class CONTENT_EXPORT RenderFrameImpl 127 class CONTENT_EXPORT RenderFrameImpl
127 : public RenderFrame, 128 : public RenderFrame,
128 NON_EXPORTED_BASE(public blink::WebFrameClient), 129 NON_EXPORTED_BASE(public blink::WebFrameClient),
129 NON_EXPORTED_BASE(public media::WebMediaPlayerDelegate) { 130 NON_EXPORTED_BASE(public media::WebMediaPlayerDelegate) {
130 public: 131 public:
131 // Creates a new RenderFrame. |render_view| is the RenderView object that this 132 static RenderFrameImpl* CreateMainFrame(
132 // frame belongs to. 133 RenderViewImpl* render_view,
133 // Callers *must* call |SetWebFrame| immediately after creation. 134 int32 routing_id,
134 // Note: This is called only when RenderFrame is created by Blink through 135 int32 widget_routing_id,
135 // createChildFrame. 136 int32 surface_id,
136 // TODO(creis): We should structure this so that |SetWebFrame| isn't needed. 137 bool hidden,
137 static RenderFrameImpl* Create(RenderViewImpl* render_view, int32 routing_id); 138 const blink::WebScreenInfo& screen_info,
139 CompositorDependencies* compositor_deps);
138 140
141 // TODO(dcheng): This should probably be renamed to CreateChildFrame.
ncarter (slow) 2015/08/24 20:55:35 I agree. There are only two callers, so I think yo
dcheng 2015/09/03 16:33:09 It turns out this isn't just used for subframes, s
139 // Creates a new RenderFrame with |routing_id| as a child of the RenderFrame 142 // Creates a new RenderFrame with |routing_id| as a child of the RenderFrame
140 // identified by |parent_routing_id| or as the top-level frame if the latter 143 // identified by |parent_routing_id| or as the top-level frame if the latter
141 // is MSG_ROUTING_NONE. If |proxy_routing_id| is MSG_ROUTING_NONE, it creates 144 // is MSG_ROUTING_NONE. If |proxy_routing_id| is MSG_ROUTING_NONE, it creates
142 // the Blink WebLocalFrame and inserts it into the frame tree after the frame 145 // the Blink WebLocalFrame and inserts it into the frame tree after the frame
143 // identified by |previous_sibling_routing_id|, or as the first child if 146 // identified by |previous_sibling_routing_id|, or as the first child if
144 // |previous_sibling_routing_id| is MSG_ROUTING_NONE. Otherwise, the frame is 147 // |previous_sibling_routing_id| is MSG_ROUTING_NONE. Otherwise, the frame is
145 // semi-orphaned until it commits, at which point it replaces the proxy 148 // semi-orphaned until it commits, at which point it replaces the proxy
146 // identified by |proxy_routing_id|. Note: This is called only when 149 // identified by |proxy_routing_id|. Note: This is called only when
147 // RenderFrame is being created in response to IPC message from the browser 150 // RenderFrame is being created in response to IPC message from the browser
148 // process. All other frame creation is driven through Blink and Create. 151 // process. All other frame creation is driven through Blink and Create.
(...skipping 468 matching lines...) Expand 10 before | Expand all | Expand 10 after
617 int id_; 620 int id_;
618 bool notify_result_; 621 bool notify_result_;
619 int routing_id_; 622 int routing_id_;
620 base::WeakPtr<RenderFrameImpl> render_frame_impl_; 623 base::WeakPtr<RenderFrameImpl> render_frame_impl_;
621 624
622 DISALLOW_COPY_AND_ASSIGN(JavaScriptIsolatedWorldRequest); 625 DISALLOW_COPY_AND_ASSIGN(JavaScriptIsolatedWorldRequest);
623 }; 626 };
624 627
625 typedef std::map<GURL, double> HostZoomLevels; 628 typedef std::map<GURL, double> HostZoomLevels;
626 629
630 // Creates a new RenderFrame. |render_view| is the RenderView object that this
631 // frame belongs to.
632 // Callers *must* call |SetWebFrame| immediately after creation.
633 static RenderFrameImpl* Create(RenderViewImpl* render_view, int32 routing_id);
634
627 // Functions to add and remove observers for this object. 635 // Functions to add and remove observers for this object.
628 void AddObserver(RenderFrameObserver* observer); 636 void AddObserver(RenderFrameObserver* observer);
629 void RemoveObserver(RenderFrameObserver* observer); 637 void RemoveObserver(RenderFrameObserver* observer);
630 638
631 // Builds and sends DidCommitProvisionalLoad to the host. 639 // Builds and sends DidCommitProvisionalLoad to the host.
632 void SendDidCommitProvisionalLoad(blink::WebFrame* frame, 640 void SendDidCommitProvisionalLoad(blink::WebFrame* frame,
633 blink::WebHistoryCommitType commit_type, 641 blink::WebHistoryCommitType commit_type,
634 const blink::WebHistoryItem& item); 642 const blink::WebHistoryItem& item);
635 643
636 // IPC message handlers ------------------------------------------------------ 644 // IPC message handlers ------------------------------------------------------
(...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after
1038 #endif 1046 #endif
1039 1047
1040 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; 1048 base::WeakPtrFactory<RenderFrameImpl> weak_factory_;
1041 1049
1042 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); 1050 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl);
1043 }; 1051 };
1044 1052
1045 } // namespace content 1053 } // namespace content
1046 1054
1047 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 1055 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698