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

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

Issue 616133002: Make RenderFrame(Host) own a RenderWidget(Host). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: git cl format, changed WebWidget creation Created 6 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 #ifndef CONTENT_RENDERER_RENDER_WIDGET_H_ 5 #ifndef CONTENT_RENDERER_RENDER_WIDGET_H_
6 #define CONTENT_RENDERER_RENDER_WIDGET_H_ 6 #define CONTENT_RENDERER_RENDER_WIDGET_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <map> 9 #include <map>
10 10
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 struct ViewMsg_Resize_Params; 47 struct ViewMsg_Resize_Params;
48 class ViewHostMsg_UpdateRect; 48 class ViewHostMsg_UpdateRect;
49 49
50 namespace IPC { 50 namespace IPC {
51 class SyncMessage; 51 class SyncMessage;
52 class SyncMessageFilter; 52 class SyncMessageFilter;
53 } 53 }
54 54
55 namespace blink { 55 namespace blink {
56 struct WebDeviceEmulationParams; 56 struct WebDeviceEmulationParams;
57 class WebFrameWidget;
57 class WebGestureEvent; 58 class WebGestureEvent;
58 class WebKeyboardEvent; 59 class WebKeyboardEvent;
60 class WebLocalFrame;
59 class WebMouseEvent; 61 class WebMouseEvent;
60 class WebTouchEvent; 62 class WebTouchEvent;
63 class WebView;
61 } 64 }
62 65
63 namespace cc { 66 namespace cc {
64 class OutputSurface; 67 class OutputSurface;
65 class SwapPromise; 68 class SwapPromise;
66 } 69 }
67 70
68 namespace gfx { 71 namespace gfx {
69 class Range; 72 class Range;
70 } 73 }
(...skipping 17 matching lines...) Expand all
88 public IPC::Sender, 91 public IPC::Sender,
89 NON_EXPORTED_BASE(virtual public blink::WebWidgetClient), 92 NON_EXPORTED_BASE(virtual public blink::WebWidgetClient),
90 public base::RefCounted<RenderWidget> { 93 public base::RefCounted<RenderWidget> {
91 public: 94 public:
92 // Creates a new RenderWidget. The opener_id is the routing ID of the 95 // Creates a new RenderWidget. The opener_id is the routing ID of the
93 // RenderView that this widget lives inside. 96 // RenderView that this widget lives inside.
94 static RenderWidget* Create(int32 opener_id, 97 static RenderWidget* Create(int32 opener_id,
95 blink::WebPopupType popup_type, 98 blink::WebPopupType popup_type,
96 const blink::WebScreenInfo& screen_info); 99 const blink::WebScreenInfo& screen_info);
97 100
101 // Creates a new RenderWidget that will be attached to a RenderFrame.
102 static RenderWidget* CreateForFrame(int routing_id,
103 int surface_id,
104 bool hidden,
105 const blink::WebScreenInfo& screen_info,
106 blink::WebLocalFrame* frame);
107
108 static blink::WebWidget* CreateWebFrameWidget(RenderWidget* render_widget,
109 blink::WebLocalFrame* frame);
110
98 // Creates a WebWidget based on the popup type. 111 // Creates a WebWidget based on the popup type.
99 static blink::WebWidget* CreateWebWidget(RenderWidget* render_widget); 112 static blink::WebWidget* CreateWebWidget(RenderWidget* render_widget);
100 113
101 int32 routing_id() const { return routing_id_; } 114 int32 routing_id() const { return routing_id_; }
102 int32 surface_id() const { return surface_id_; } 115 int32 surface_id() const { return surface_id_; }
103 blink::WebWidget* webwidget() const { return webwidget_; } 116 blink::WebWidget* webwidget() const { return webwidget_; }
104 gfx::Size size() const { return size_; } 117 gfx::Size size() const { return size_; }
105 bool has_focus() const { return has_focus_; } 118 bool has_focus() const { return has_focus_; }
106 bool is_fullscreen() const { return is_fullscreen_; } 119 bool is_fullscreen() const { return is_fullscreen_; }
107 bool is_hidden() const { return is_hidden_; } 120 bool is_hidden() const { return is_hidden_; }
108 bool handling_input_event() const { return handling_input_event_; } 121 bool handling_input_event() const { return handling_input_event_; }
109 // Temporary for debugging purposes... 122 // Temporary for debugging purposes...
110 bool closing() const { return closing_; } 123 bool closing() const { return closing_; }
111 bool is_swapped_out() { return is_swapped_out_; } 124 bool is_swapped_out() { return is_swapped_out_; }
112 ui::MenuSourceType context_menu_source_type() { 125 ui::MenuSourceType context_menu_source_type() {
113 return context_menu_source_type_; 126 return context_menu_source_type_;
114 } 127 }
115 bool has_host_context_menu_location() { 128 bool has_host_context_menu_location() {
116 return has_host_context_menu_location_; 129 return has_host_context_menu_location_;
117 } 130 }
118 gfx::Point host_context_menu_location() { 131 gfx::Point host_context_menu_location() {
119 return host_context_menu_location_; 132 return host_context_menu_location_;
120 } 133 }
121 134
135 // ScreenInfo exposed so it can be passed to subframe RenderWidgets.
136 blink::WebScreenInfo screen_info() const { return screen_info_; }
137
122 // Functions to track out-of-process frames for special notifications. 138 // Functions to track out-of-process frames for special notifications.
123 void RegisterRenderFrameProxy(RenderFrameProxy* proxy); 139 void RegisterRenderFrameProxy(RenderFrameProxy* proxy);
124 void UnregisterRenderFrameProxy(RenderFrameProxy* proxy); 140 void UnregisterRenderFrameProxy(RenderFrameProxy* proxy);
125 141
126 // Functions to track all RenderFrame objects associated with this 142 // Functions to track all RenderFrame objects associated with this
127 // RenderWidget. 143 // RenderWidget.
128 void RegisterRenderFrame(RenderFrameImpl* frame); 144 void RegisterRenderFrame(RenderFrameImpl* frame);
129 void UnregisterRenderFrame(RenderFrameImpl* frame); 145 void UnregisterRenderFrame(RenderFrameImpl* frame);
130 146
131 #if defined(VIDEO_HOLE) 147 #if defined(VIDEO_HOLE)
(...skipping 632 matching lines...) Expand 10 before | Expand all | Expand 10 after
764 ui::MenuSourceType context_menu_source_type_; 780 ui::MenuSourceType context_menu_source_type_;
765 bool has_host_context_menu_location_; 781 bool has_host_context_menu_location_;
766 gfx::Point host_context_menu_location_; 782 gfx::Point host_context_menu_location_;
767 783
768 DISALLOW_COPY_AND_ASSIGN(RenderWidget); 784 DISALLOW_COPY_AND_ASSIGN(RenderWidget);
769 }; 785 };
770 786
771 } // namespace content 787 } // namespace content
772 788
773 #endif // CONTENT_RENDERER_RENDER_WIDGET_H_ 789 #endif // CONTENT_RENDERER_RENDER_WIDGET_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698