OLD | NEW |
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_BROWSER_RENDERER_HOST_RENDER_WIDGET_HELPER_H_ | 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HELPER_H_ |
6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HELPER_H_ | 6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HELPER_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <map> | 9 #include <map> |
10 | 10 |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "ui/surface/transport_dib.h" | 23 #include "ui/surface/transport_dib.h" |
24 | 24 |
25 namespace IPC { | 25 namespace IPC { |
26 class Message; | 26 class Message; |
27 } | 27 } |
28 | 28 |
29 namespace base { | 29 namespace base { |
30 class TimeDelta; | 30 class TimeDelta; |
31 } | 31 } |
32 | 32 |
| 33 struct GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params; |
33 struct ViewHostMsg_CreateWindow_Params; | 34 struct ViewHostMsg_CreateWindow_Params; |
34 struct ViewMsg_SwapOut_Params; | 35 struct ViewMsg_SwapOut_Params; |
35 | 36 |
36 namespace content { | 37 namespace content { |
37 class ResourceDispatcherHostImpl; | 38 class ResourceDispatcherHostImpl; |
38 class SessionStorageNamespace; | 39 class SessionStorageNamespace; |
39 | 40 |
40 // Instantiated per RenderProcessHost to provide various optimizations on | 41 // Instantiated per RenderProcessHost to provide various optimizations on |
41 // behalf of a RenderWidgetHost. This class bridges between the IO thread | 42 // behalf of a RenderWidgetHost. This class bridges between the IO thread |
42 // where the RenderProcessHost's MessageFilter lives and the UI thread where | 43 // where the RenderProcessHost's MessageFilter lives and the UI thread where |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 // FreeTransportDIB(). In all cases, the caller is responsible for deleting | 161 // FreeTransportDIB(). In all cases, the caller is responsible for deleting |
161 // the resulting TransportDIB. | 162 // the resulting TransportDIB. |
162 void AllocTransportDIB(uint32 size, | 163 void AllocTransportDIB(uint32 size, |
163 bool cache_in_browser, | 164 bool cache_in_browser, |
164 TransportDIB::Handle* result); | 165 TransportDIB::Handle* result); |
165 | 166 |
166 // Called on the IO thread to handle the freeing of a transport DIB | 167 // Called on the IO thread to handle the freeing of a transport DIB |
167 void FreeTransportDIB(TransportDIB::Id dib_id); | 168 void FreeTransportDIB(TransportDIB::Id dib_id); |
168 #endif | 169 #endif |
169 | 170 |
| 171 #if defined(OS_MACOSX) |
| 172 static void OnNativeSurfaceBuffersSwapped( |
| 173 const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& params); |
| 174 #endif |
| 175 |
170 private: | 176 private: |
171 // A class used to proxy a paint message. PaintMsgProxy objects are created | 177 // A class used to proxy a paint message. PaintMsgProxy objects are created |
172 // on the IO thread and destroyed on the UI thread. | 178 // on the IO thread and destroyed on the UI thread. |
173 class BackingStoreMsgProxy; | 179 class BackingStoreMsgProxy; |
174 friend class BackingStoreMsgProxy; | 180 friend class BackingStoreMsgProxy; |
175 friend class base::RefCountedThreadSafe<RenderWidgetHelper>; | 181 friend class base::RefCountedThreadSafe<RenderWidgetHelper>; |
176 friend struct BrowserThread::DeleteOnThread<BrowserThread::IO>; | 182 friend struct BrowserThread::DeleteOnThread<BrowserThread::IO>; |
177 friend class base::DeleteHelper<RenderWidgetHelper>; | 183 friend class base::DeleteHelper<RenderWidgetHelper>; |
178 | 184 |
179 typedef std::deque<BackingStoreMsgProxy*> BackingStoreMsgProxyQueue; | 185 typedef std::deque<BackingStoreMsgProxy*> BackingStoreMsgProxyQueue; |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
237 base::AtomicSequenceNumber next_routing_id_; | 243 base::AtomicSequenceNumber next_routing_id_; |
238 | 244 |
239 ResourceDispatcherHostImpl* resource_dispatcher_host_; | 245 ResourceDispatcherHostImpl* resource_dispatcher_host_; |
240 | 246 |
241 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHelper); | 247 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHelper); |
242 }; | 248 }; |
243 | 249 |
244 } // namespace content | 250 } // namespace content |
245 | 251 |
246 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HELPER_H_ | 252 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HELPER_H_ |
OLD | NEW |