OLD | NEW |
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 #ifndef CONTENT_RENDERER_RENDER_FRAME_PROXY_H_ | 5 #ifndef CONTENT_RENDERER_RENDER_FRAME_PROXY_H_ |
6 #define CONTENT_RENDERER_RENDER_FRAME_PROXY_H_ | 6 #define CONTENT_RENDERER_RENDER_FRAME_PROXY_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "content/common/content_export.h" | 10 #include "content/common/content_export.h" |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 static RenderFrameProxy* CreateFrameProxy(int routing_id, | 77 static RenderFrameProxy* CreateFrameProxy(int routing_id, |
78 int parent_routing_id, | 78 int parent_routing_id, |
79 int render_view_routing_id); | 79 int render_view_routing_id); |
80 | 80 |
81 // Returns the RenderFrameProxy for the given routing ID. | 81 // Returns the RenderFrameProxy for the given routing ID. |
82 static RenderFrameProxy* FromRoutingID(int routing_id); | 82 static RenderFrameProxy* FromRoutingID(int routing_id); |
83 | 83 |
84 // Returns the RenderFrameProxy given a WebFrame. | 84 // Returns the RenderFrameProxy given a WebFrame. |
85 static RenderFrameProxy* FromWebFrame(blink::WebFrame* web_frame); | 85 static RenderFrameProxy* FromWebFrame(blink::WebFrame* web_frame); |
86 | 86 |
87 virtual ~RenderFrameProxy(); | 87 ~RenderFrameProxy() override; |
88 | 88 |
89 // IPC::Sender | 89 // IPC::Sender |
90 virtual bool Send(IPC::Message* msg) override; | 90 bool Send(IPC::Message* msg) override; |
91 | 91 |
92 // Out-of-process child frames receive a signal from RenderWidgetCompositor | 92 // Out-of-process child frames receive a signal from RenderWidgetCompositor |
93 // when a compositor frame has committed. | 93 // when a compositor frame has committed. |
94 void DidCommitCompositorFrame(); | 94 void DidCommitCompositorFrame(); |
95 | 95 |
96 int routing_id() { return routing_id_; } | 96 int routing_id() { return routing_id_; } |
97 RenderViewImpl* render_view() { return render_view_; } | 97 RenderViewImpl* render_view() { return render_view_; } |
98 blink::WebRemoteFrame* web_frame() { return web_frame_; } | 98 blink::WebRemoteFrame* web_frame() { return web_frame_; } |
99 | 99 |
100 // blink::WebRemoteFrameClient implementation: | 100 // blink::WebRemoteFrameClient implementation: |
101 virtual void frameDetached(); | 101 virtual void frameDetached(); |
102 virtual void postMessageEvent( | 102 virtual void postMessageEvent( |
103 blink::WebLocalFrame* sourceFrame, | 103 blink::WebLocalFrame* sourceFrame, |
104 blink::WebRemoteFrame* targetFrame, | 104 blink::WebRemoteFrame* targetFrame, |
105 blink::WebSecurityOrigin target, | 105 blink::WebSecurityOrigin target, |
106 blink::WebDOMMessageEvent event); | 106 blink::WebDOMMessageEvent event); |
107 virtual void initializeChildFrame( | 107 virtual void initializeChildFrame( |
108 const blink::WebRect& frame_rect, | 108 const blink::WebRect& frame_rect, |
109 float scale_factor); | 109 float scale_factor); |
110 virtual void navigate(const blink::WebURLRequest& request, | 110 virtual void navigate(const blink::WebURLRequest& request, |
111 bool should_replace_current_entry); | 111 bool should_replace_current_entry); |
112 virtual void forwardInputEvent(const blink::WebInputEvent* event); | 112 virtual void forwardInputEvent(const blink::WebInputEvent* event); |
113 | 113 |
114 private: | 114 private: |
115 RenderFrameProxy(int routing_id, int frame_routing_id); | 115 RenderFrameProxy(int routing_id, int frame_routing_id); |
116 | 116 |
117 void Init(blink::WebRemoteFrame* frame, RenderViewImpl* render_view); | 117 void Init(blink::WebRemoteFrame* frame, RenderViewImpl* render_view); |
118 | 118 |
119 // IPC::Listener | 119 // IPC::Listener |
120 virtual bool OnMessageReceived(const IPC::Message& msg) override; | 120 bool OnMessageReceived(const IPC::Message& msg) override; |
121 | 121 |
122 // IPC handlers | 122 // IPC handlers |
123 void OnDeleteProxy(); | 123 void OnDeleteProxy(); |
124 void OnChildFrameProcessGone(); | 124 void OnChildFrameProcessGone(); |
125 void OnCompositorFrameSwapped(const IPC::Message& message); | 125 void OnCompositorFrameSwapped(const IPC::Message& message); |
126 void OnDisownOpener(); | 126 void OnDisownOpener(); |
127 | 127 |
128 // The routing ID by which this RenderFrameProxy is known. | 128 // The routing ID by which this RenderFrameProxy is known. |
129 const int routing_id_; | 129 const int routing_id_; |
130 | 130 |
131 // The routing ID of the local RenderFrame (if any) which this | 131 // The routing ID of the local RenderFrame (if any) which this |
132 // RenderFrameProxy is meant to replace in the frame tree. | 132 // RenderFrameProxy is meant to replace in the frame tree. |
133 const int frame_routing_id_; | 133 const int frame_routing_id_; |
134 | 134 |
135 // Stores the WebRemoteFrame we are associated with. | 135 // Stores the WebRemoteFrame we are associated with. |
136 blink::WebRemoteFrame* web_frame_; | 136 blink::WebRemoteFrame* web_frame_; |
137 scoped_refptr<ChildFrameCompositingHelper> compositing_helper_; | 137 scoped_refptr<ChildFrameCompositingHelper> compositing_helper_; |
138 | 138 |
139 RenderViewImpl* render_view_; | 139 RenderViewImpl* render_view_; |
140 | 140 |
141 DISALLOW_COPY_AND_ASSIGN(RenderFrameProxy); | 141 DISALLOW_COPY_AND_ASSIGN(RenderFrameProxy); |
142 }; | 142 }; |
143 | 143 |
144 } // namespace | 144 } // namespace |
145 | 145 |
146 #endif // CONTENT_RENDERER_RENDER_FRAME_PROXY_H_ | 146 #endif // CONTENT_RENDERER_RENDER_FRAME_PROXY_H_ |
OLD | NEW |