OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 14 matching lines...) Expand all Loading... |
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #ifndef WebHelperPlugin_h | 31 #ifndef WebHelperPlugin_h |
32 #define WebHelperPlugin_h | 32 #define WebHelperPlugin_h |
33 | 33 |
34 #include "../platform/WebCommon.h" | 34 #include "../platform/WebCommon.h" |
| 35 #include "WebFrame.h" |
35 | 36 |
36 namespace blink { | 37 namespace blink { |
37 | 38 |
38 class WebFrame; | |
39 class WebPlugin; | 39 class WebPlugin; |
40 class WebString; | 40 class WebString; |
41 | 41 |
42 class WebHelperPlugin { | 42 class WebHelperPlugin { |
43 public: | 43 public: |
44 // May return null if initialization fails. If the returned pointer is | 44 // May return null if initialization fails. If the returned pointer is |
45 // non-null, the caller must free it by calling destroy(). | 45 // non-null, the caller must free it by calling destroy(). |
46 BLINK_EXPORT static WebHelperPlugin* create(const WebString& PluginType, Web
Frame*); | 46 BLINK_EXPORT static WebHelperPlugin* create(const WebString& PluginType, Web
LocalFrame*); |
47 | 47 |
48 // Returns a WebPlugin corresponding to the instantiated plugin. This will | 48 // Returns a WebPlugin corresponding to the instantiated plugin. This will |
49 // never return null. | 49 // never return null. |
50 virtual WebPlugin* getPlugin() = 0; | 50 virtual WebPlugin* getPlugin() = 0; |
51 | 51 |
52 // Initiates destruction of the WebHelperPlugin. | 52 // Initiates destruction of the WebHelperPlugin. |
53 virtual void destroy() = 0; | 53 virtual void destroy() = 0; |
54 | 54 |
55 protected: | 55 protected: |
56 virtual ~WebHelperPlugin() { } | 56 virtual ~WebHelperPlugin() { } |
57 }; | 57 }; |
58 | 58 |
59 } // namespace blink | 59 } // namespace blink |
60 | 60 |
61 namespace WTF { | 61 namespace WTF { |
62 | 62 |
63 template<typename T> struct OwnedPtrDeleter; | 63 template<typename T> struct OwnedPtrDeleter; |
64 template<> struct OwnedPtrDeleter<blink::WebHelperPlugin> { | 64 template<> struct OwnedPtrDeleter<blink::WebHelperPlugin> { |
65 static void deletePtr(blink::WebHelperPlugin* plugin) | 65 static void deletePtr(blink::WebHelperPlugin* plugin) |
66 { | 66 { |
67 if (plugin) | 67 if (plugin) |
68 plugin->destroy(); | 68 plugin->destroy(); |
69 } | 69 } |
70 }; | 70 }; |
71 | 71 |
72 } // namespace WTF | 72 } // namespace WTF |
73 | 73 |
74 #endif | 74 #endif |
OLD | NEW |