| 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 WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_PEPPER_PPAPI_PLUGIN_INSTANCE_IMPL_H_ |
| 6 #define WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_IMPL_H_ | 6 #define CONTENT_RENDERER_PEPPER_PPAPI_PLUGIN_INSTANCE_IMPL_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| 11 | 11 |
| 12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" |
| 13 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
| 14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
| 15 #include "base/memory/weak_ptr.h" | 15 #include "base/memory/weak_ptr.h" |
| 16 #include "base/strings/string16.h" | 16 #include "base/strings/string16.h" |
| 17 #include "cc/layers/texture_layer_client.h" | 17 #include "cc/layers/texture_layer_client.h" |
| 18 #include "content/common/content_export.h" |
| 19 #include "content/public/renderer/ppapi_plugin_instance.h" |
| 20 #include "content/renderer/pepper/plugin_delegate.h" |
| 21 #include "content/renderer/pepper/ppp_pdf.h" |
| 18 #include "ppapi/c/dev/pp_cursor_type_dev.h" | 22 #include "ppapi/c/dev/pp_cursor_type_dev.h" |
| 19 #include "ppapi/c/dev/ppp_find_dev.h" | 23 #include "ppapi/c/dev/ppp_find_dev.h" |
| 20 #include "ppapi/c/dev/ppp_printing_dev.h" | 24 #include "ppapi/c/dev/ppp_printing_dev.h" |
| 21 #include "ppapi/c/dev/ppp_selection_dev.h" | 25 #include "ppapi/c/dev/ppp_selection_dev.h" |
| 22 #include "ppapi/c/dev/ppp_text_input_dev.h" | 26 #include "ppapi/c/dev/ppp_text_input_dev.h" |
| 23 #include "ppapi/c/dev/ppp_zoom_dev.h" | 27 #include "ppapi/c/dev/ppp_zoom_dev.h" |
| 24 #include "ppapi/c/pp_completion_callback.h" | 28 #include "ppapi/c/pp_completion_callback.h" |
| 25 #include "ppapi/c/pp_instance.h" | 29 #include "ppapi/c/pp_instance.h" |
| 26 #include "ppapi/c/pp_time.h" | 30 #include "ppapi/c/pp_time.h" |
| 27 #include "ppapi/c/pp_var.h" | 31 #include "ppapi/c/pp_var.h" |
| (...skipping 15 matching lines...) Expand all Loading... |
| 43 #include "skia/ext/refptr.h" | 47 #include "skia/ext/refptr.h" |
| 44 #include "third_party/WebKit/public/platform/WebCanvas.h" | 48 #include "third_party/WebKit/public/platform/WebCanvas.h" |
| 45 #include "third_party/WebKit/public/platform/WebString.h" | 49 #include "third_party/WebKit/public/platform/WebString.h" |
| 46 #include "third_party/WebKit/public/platform/WebURLLoaderClient.h" | 50 #include "third_party/WebKit/public/platform/WebURLLoaderClient.h" |
| 47 #include "third_party/WebKit/public/platform/WebURLResponse.h" | 51 #include "third_party/WebKit/public/platform/WebURLResponse.h" |
| 48 #include "third_party/WebKit/public/web/WebPlugin.h" | 52 #include "third_party/WebKit/public/web/WebPlugin.h" |
| 49 #include "third_party/WebKit/public/web/WebUserGestureToken.h" | 53 #include "third_party/WebKit/public/web/WebUserGestureToken.h" |
| 50 #include "ui/base/ime/text_input_type.h" | 54 #include "ui/base/ime/text_input_type.h" |
| 51 #include "ui/gfx/rect.h" | 55 #include "ui/gfx/rect.h" |
| 52 #include "url/gurl.h" | 56 #include "url/gurl.h" |
| 53 #include "webkit/plugins/ppapi/plugin_delegate.h" | |
| 54 #include "webkit/plugins/ppapi/ppapi_plugin_instance.h" | |
| 55 #include "webkit/plugins/ppapi/ppp_pdf.h" | |
| 56 #include "webkit/plugins/webkit_plugins_export.h" | |
| 57 | 57 |
| 58 struct PP_Point; | 58 struct PP_Point; |
| 59 struct _NPP; | 59 struct _NPP; |
| 60 | 60 |
| 61 class SkBitmap; | 61 class SkBitmap; |
| 62 class TransportDIB; | 62 class TransportDIB; |
| 63 | 63 |
| 64 namespace WebKit { | 64 namespace WebKit { |
| 65 class WebInputEvent; | 65 class WebInputEvent; |
| 66 class WebLayer; | 66 class WebLayer; |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 class PluginModule; | 102 class PluginModule; |
| 103 class PluginObject; | 103 class PluginObject; |
| 104 class PPB_Graphics3D_Impl; | 104 class PPB_Graphics3D_Impl; |
| 105 class PPB_ImageData_Impl; | 105 class PPB_ImageData_Impl; |
| 106 class PPB_URLLoader_Impl; | 106 class PPB_URLLoader_Impl; |
| 107 | 107 |
| 108 // Represents one time a plugin appears on one web page. | 108 // Represents one time a plugin appears on one web page. |
| 109 // | 109 // |
| 110 // Note: to get from a PP_Instance to a PluginInstance*, use the | 110 // Note: to get from a PP_Instance to a PluginInstance*, use the |
| 111 // ResourceTracker. | 111 // ResourceTracker. |
| 112 class WEBKIT_PLUGINS_EXPORT PluginInstanceImpl : | 112 class CONTENT_EXPORT PluginInstanceImpl |
| 113 public base::RefCounted<PluginInstanceImpl>, | 113 : public base::RefCounted<PluginInstanceImpl>, |
| 114 public base::SupportsWeakPtr<PluginInstanceImpl>, | 114 public base::SupportsWeakPtr<PluginInstanceImpl>, |
| 115 public NON_EXPORTED_BASE(PluginInstance), | 115 public NON_EXPORTED_BASE(PluginInstance), |
| 116 public ::ppapi::PPB_Instance_Shared { | 116 public ::ppapi::PPB_Instance_Shared { |
| 117 public: | 117 public: |
| 118 // Create and return a PluginInstanceImpl object which supports the most | 118 // Create and return a PluginInstanceImpl object which supports the most |
| 119 // recent version of PPP_Instance possible by querying the given | 119 // recent version of PPP_Instance possible by querying the given |
| 120 // get_plugin_interface function. If the plugin does not support any valid | 120 // get_plugin_interface function. If the plugin does not support any valid |
| 121 // PPP_Instance interface, returns NULL. | 121 // PPP_Instance interface, returns NULL. |
| 122 static PluginInstanceImpl* Create(PluginDelegate* delegate, | 122 static PluginInstanceImpl* Create( |
| 123 content::RenderView* render_view, | 123 PluginDelegate* delegate, |
| 124 PluginModule* module, | 124 content::RenderView* render_view, |
| 125 WebKit::WebPluginContainer* container, | 125 PluginModule* module, |
| 126 const GURL& plugin_url); | 126 WebKit::WebPluginContainer* container, |
| 127 const GURL& plugin_url); |
| 127 // Delete should be called by the WebPlugin before this destructor. | 128 // Delete should be called by the WebPlugin before this destructor. |
| 128 virtual ~PluginInstanceImpl(); | 129 virtual ~PluginInstanceImpl(); |
| 129 | 130 |
| 130 PluginDelegate* delegate() const { return delegate_; } | 131 PluginDelegate* delegate() const { return delegate_; } |
| 131 PluginModule* module() const { return module_.get(); } | 132 PluginModule* module() const { return module_.get(); } |
| 132 MessageChannel& message_channel() { return *message_channel_; } | 133 MessageChannel& message_channel() { return *message_channel_; } |
| 133 | 134 |
| 134 WebKit::WebPluginContainer* container() const { return container_; } | 135 WebKit::WebPluginContainer* container() const { return container_; } |
| 135 | 136 |
| 136 // Returns the PP_Instance uniquely identifying this instance. Guaranteed | 137 // Returns the PP_Instance uniquely identifying this instance. Guaranteed |
| (...skipping 714 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 851 // Isolate in which this Instance was created when interacting with v8. | 852 // Isolate in which this Instance was created when interacting with v8. |
| 852 v8::Isolate* isolate_; | 853 v8::Isolate* isolate_; |
| 853 | 854 |
| 854 friend class PpapiPluginInstanceTest; | 855 friend class PpapiPluginInstanceTest; |
| 855 DISALLOW_COPY_AND_ASSIGN(PluginInstanceImpl); | 856 DISALLOW_COPY_AND_ASSIGN(PluginInstanceImpl); |
| 856 }; | 857 }; |
| 857 | 858 |
| 858 } // namespace ppapi | 859 } // namespace ppapi |
| 859 } // namespace webkit | 860 } // namespace webkit |
| 860 | 861 |
| 861 #endif // WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_IMPL_H_ | 862 #endif // CONTENT_RENDERER_PEPPER_PPAPI_PLUGIN_INSTANCE_IMPL_H_ |
| OLD | NEW |