| 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_RENDERER_WEBPLUGIN_DELEGATE_PROXY_H_ | 5 #ifndef CONTENT_RENDERER_WEBPLUGIN_DELEGATE_PROXY_H_ |
| 6 #define CONTENT_RENDERER_WEBPLUGIN_DELEGATE_PROXY_H_ | 6 #define CONTENT_RENDERER_WEBPLUGIN_DELEGATE_PROXY_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 #endif | 27 #endif |
| 28 | 28 |
| 29 struct NPObject; | 29 struct NPObject; |
| 30 struct PluginHostMsg_URLRequest_Params; | 30 struct PluginHostMsg_URLRequest_Params; |
| 31 class SkBitmap; | 31 class SkBitmap; |
| 32 | 32 |
| 33 namespace base { | 33 namespace base { |
| 34 class WaitableEvent; | 34 class WaitableEvent; |
| 35 } | 35 } |
| 36 | 36 |
| 37 namespace skia { | |
| 38 class PlatformCanvas; | |
| 39 } | |
| 40 | |
| 41 namespace webkit { | 37 namespace webkit { |
| 42 namespace npapi { | 38 namespace npapi { |
| 43 class WebPlugin; | 39 class WebPlugin; |
| 44 } | 40 } |
| 45 } | 41 } |
| 46 | 42 |
| 47 namespace content { | 43 namespace content { |
| 48 class NPObjectStub; | 44 class NPObjectStub; |
| 49 class PluginChannelHost; | 45 class PluginChannelHost; |
| 50 class RenderViewImpl; | 46 class RenderViewImpl; |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 136 protected: | 132 protected: |
| 137 friend class base::DeleteHelper<WebPluginDelegateProxy>; | 133 friend class base::DeleteHelper<WebPluginDelegateProxy>; |
| 138 virtual ~WebPluginDelegateProxy(); | 134 virtual ~WebPluginDelegateProxy(); |
| 139 | 135 |
| 140 private: | 136 private: |
| 141 struct SharedBitmap { | 137 struct SharedBitmap { |
| 142 SharedBitmap(); | 138 SharedBitmap(); |
| 143 ~SharedBitmap(); | 139 ~SharedBitmap(); |
| 144 | 140 |
| 145 scoped_ptr<TransportDIB> dib; | 141 scoped_ptr<TransportDIB> dib; |
| 146 scoped_ptr<skia::PlatformCanvas> canvas; | 142 scoped_ptr<SkCanvas> canvas; |
| 147 }; | 143 }; |
| 148 | 144 |
| 149 // Message handlers for messages that proxy WebPlugin methods, which | 145 // Message handlers for messages that proxy WebPlugin methods, which |
| 150 // we translate into calls to the real WebPlugin. | 146 // we translate into calls to the real WebPlugin. |
| 151 void OnSetWindow(gfx::PluginWindowHandle window); | 147 void OnSetWindow(gfx::PluginWindowHandle window); |
| 152 #if defined(OS_WIN) | 148 #if defined(OS_WIN) |
| 153 void OnSetWindowlessData(HANDLE modal_loop_pump_messages_event, | 149 void OnSetWindowlessData(HANDLE modal_loop_pump_messages_event, |
| 154 gfx::NativeViewId dummy_activation_window); | 150 gfx::NativeViewId dummy_activation_window); |
| 155 void OnNotifyIMEStatus(const int input_mode, const gfx::Rect& caret_rect); | 151 void OnNotifyIMEStatus(const int input_mode, const gfx::Rect& caret_rect); |
| 156 #endif | 152 #endif |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 224 void ResetWindowlessBitmaps(); | 220 void ResetWindowlessBitmaps(); |
| 225 | 221 |
| 226 int front_buffer_index() const { | 222 int front_buffer_index() const { |
| 227 return front_buffer_index_; | 223 return front_buffer_index_; |
| 228 } | 224 } |
| 229 | 225 |
| 230 int back_buffer_index() const { | 226 int back_buffer_index() const { |
| 231 return 1 - front_buffer_index_; | 227 return 1 - front_buffer_index_; |
| 232 } | 228 } |
| 233 | 229 |
| 234 skia::PlatformCanvas* front_buffer_canvas() const { | 230 SkCanvas* front_buffer_canvas() const { |
| 235 return transport_stores_[front_buffer_index()].canvas.get(); | 231 return transport_stores_[front_buffer_index()].canvas.get(); |
| 236 } | 232 } |
| 237 | 233 |
| 238 skia::PlatformCanvas* back_buffer_canvas() const { | 234 SkCanvas* back_buffer_canvas() const { |
| 239 return transport_stores_[back_buffer_index()].canvas.get(); | 235 return transport_stores_[back_buffer_index()].canvas.get(); |
| 240 } | 236 } |
| 241 | 237 |
| 242 TransportDIB* front_buffer_dib() const { | 238 TransportDIB* front_buffer_dib() const { |
| 243 return transport_stores_[front_buffer_index()].dib.get(); | 239 return transport_stores_[front_buffer_index()].dib.get(); |
| 244 } | 240 } |
| 245 | 241 |
| 246 TransportDIB* back_buffer_dib() const { | 242 TransportDIB* back_buffer_dib() const { |
| 247 return transport_stores_[back_buffer_index()].dib.get(); | 243 return transport_stores_[back_buffer_index()].dib.get(); |
| 248 } | 244 } |
| 249 | 245 |
| 250 #if !defined(OS_WIN) | 246 #if !defined(OS_WIN) |
| 251 // Creates a process-local memory section and canvas. PlatformCanvas on | 247 // Creates a process-local memory section and canvas. PlatformCanvas on |
| 252 // Windows only works with a DIB, not arbitrary memory. | 248 // Windows only works with a DIB, not arbitrary memory. |
| 253 bool CreateLocalBitmap(std::vector<uint8>* memory, | 249 bool CreateLocalBitmap(std::vector<uint8>* memory, |
| 254 scoped_ptr<skia::PlatformCanvas>* canvas); | 250 scoped_ptr<SkCanvas>* canvas); |
| 255 #endif | 251 #endif |
| 256 | 252 |
| 257 // Creates a shared memory section and canvas. | 253 // Creates a shared memory section and canvas. |
| 258 bool CreateSharedBitmap(scoped_ptr<TransportDIB>* memory, | 254 bool CreateSharedBitmap(scoped_ptr<TransportDIB>* memory, |
| 259 scoped_ptr<skia::PlatformCanvas>* canvas); | 255 scoped_ptr<SkCanvas>* canvas); |
| 260 | 256 |
| 261 // Called for cleanup during plugin destruction. Normally right before the | 257 // Called for cleanup during plugin destruction. Normally right before the |
| 262 // plugin window gets destroyed, or when the plugin has crashed (at which | 258 // plugin window gets destroyed, or when the plugin has crashed (at which |
| 263 // point the window has already been destroyed). | 259 // point the window has already been destroyed). |
| 264 void WillDestroyWindow(); | 260 void WillDestroyWindow(); |
| 265 | 261 |
| 266 #if defined(OS_MACOSX) | 262 #if defined(OS_MACOSX) |
| 267 // Synthesize a fake window handle for the plug-in to identify the instance | 263 // Synthesize a fake window handle for the plug-in to identify the instance |
| 268 // to the browser, allowing mapping to a surface for hardware acceleration | 264 // to the browser, allowing mapping to a surface for hardware acceleration |
| 269 // of plug-in content. The browser generates the handle which is then set on | 265 // of plug-in content. The browser generates the handle which is then set on |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 329 | 325 |
| 330 // The url of the main frame hosting the plugin. | 326 // The url of the main frame hosting the plugin. |
| 331 GURL page_url_; | 327 GURL page_url_; |
| 332 | 328 |
| 333 DISALLOW_COPY_AND_ASSIGN(WebPluginDelegateProxy); | 329 DISALLOW_COPY_AND_ASSIGN(WebPluginDelegateProxy); |
| 334 }; | 330 }; |
| 335 | 331 |
| 336 } // namespace content | 332 } // namespace content |
| 337 | 333 |
| 338 #endif // CONTENT_RENDERER_WEBPLUGIN_DELEGATE_PROXY_H_ | 334 #endif // CONTENT_RENDERER_WEBPLUGIN_DELEGATE_PROXY_H_ |
| OLD | NEW |