| OLD | NEW | 
|    1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2006-2008 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_GLUE_WEBPLUGIN_DELEGATE_H_ |    5 #ifndef WEBKIT_GLUE_WEBPLUGIN_DELEGATE_H_ | 
|    6 #define WEBKIT_GLUE_WEBPLUGIN_DELEGATE_H_ |    6 #define WEBKIT_GLUE_WEBPLUGIN_DELEGATE_H_ | 
|    7  |    7  | 
|    8 #include <string> |  | 
|    9 #include <vector> |    8 #include <vector> | 
|   10  |    9  | 
|   11 #include "base/basictypes.h" |  | 
|   12 #include "base/file_path.h" |  | 
|   13 #include "base/gfx/native_widget_types.h" |   10 #include "base/gfx/native_widget_types.h" | 
|   14 #include "base/gfx/rect.h" |  | 
|   15 #include "build/build_config.h" |  | 
|   16 #include "third_party/npapi/bindings/npapi.h" |   11 #include "third_party/npapi/bindings/npapi.h" | 
|   17  |   12  | 
|   18 // TODO(port): put in OS_WIN check. |   13 // TODO(port): put in OS_WIN check. | 
|   19 typedef struct HDC__* HDC; |   14 typedef struct HDC__* HDC; | 
|   20 struct NPObject; |   15 struct NPObject; | 
|   21  |   16  | 
 |   17 class FilePath; | 
|   22 class GURL; |   18 class GURL; | 
|   23 class WebCursor; |   19 class WebCursor; | 
|   24 class WebPlugin; |   20 class WebPlugin; | 
|   25 class WebPluginResourceClient; |   21 class WebPluginResourceClient; | 
|   26  |   22  | 
 |   23 namespace gfx { | 
 |   24 class Rect; | 
 |   25 } | 
 |   26  | 
|   27 // This is the interface that a plugin implementation needs to provide. |   27 // This is the interface that a plugin implementation needs to provide. | 
|   28 class WebPluginDelegate { |   28 class WebPluginDelegate { | 
|   29  public: |   29  public: | 
|   30 #if defined(OS_WIN) |   30 #if defined(OS_WIN) | 
|   31   enum PluginQuirks { |   31   enum PluginQuirks { | 
|   32     PLUGIN_QUIRK_SETWINDOW_TWICE = 1, |   32     PLUGIN_QUIRK_SETWINDOW_TWICE = 1, | 
|   33     PLUGIN_QUIRK_THROTTLE_WM_USER_PLUS_ONE = 2, |   33     PLUGIN_QUIRK_THROTTLE_WM_USER_PLUS_ONE = 2, | 
|   34     PLUGIN_QUIRK_DONT_CALL_WND_PROC_RECURSIVELY = 4, |   34     PLUGIN_QUIRK_DONT_CALL_WND_PROC_RECURSIVELY = 4, | 
|   35     PLUGIN_QUIRK_DONT_SET_NULL_WINDOW_HANDLE_ON_DESTROY = 8, |   35     PLUGIN_QUIRK_DONT_SET_NULL_WINDOW_HANDLE_ON_DESTROY = 8, | 
|   36     PLUGIN_QUIRK_DONT_ALLOW_MULTIPLE_INSTANCES = 16, |   36     PLUGIN_QUIRK_DONT_ALLOW_MULTIPLE_INSTANCES = 16, | 
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  132   virtual WebPluginResourceClient* CreateResourceClient(int resource_id, |  132   virtual WebPluginResourceClient* CreateResourceClient(int resource_id, | 
|  133                                                         const std::string &url, |  133                                                         const std::string &url, | 
|  134                                                         bool notify_needed, |  134                                                         bool notify_needed, | 
|  135                                                         void *notify_data, |  135                                                         void *notify_data, | 
|  136                                                         void* stream) = 0; |  136                                                         void* stream) = 0; | 
|  137  |  137  | 
|  138   // Notifies the delegate about a Get/Post URL request getting routed. |  138   // Notifies the delegate about a Get/Post URL request getting routed. | 
|  139   virtual void URLRequestRouted(const std::string&url, bool notify_needed, |  139   virtual void URLRequestRouted(const std::string&url, bool notify_needed, | 
|  140                                 void* notify_data) = 0; |  140                                 void* notify_data) = 0; | 
|  141  |  141  | 
|  142   virtual bool IsWindowless() const { |  142   virtual bool IsWindowless() const; | 
|  143     NOTREACHED(); |  | 
|  144     return false; |  | 
|  145   } |  | 
|  146  |  143  | 
|  147   virtual const gfx::Rect& GetRect() const { |  144   virtual const gfx::Rect& GetRect() const; | 
|  148     NOTREACHED(); |  | 
|  149     static gfx::Rect dummy; |  | 
|  150     return dummy; |  | 
|  151   } |  | 
|  152  |  145  | 
|  153   virtual const gfx::Rect& GetClipRect() const { |  146   virtual const gfx::Rect& GetClipRect() const; | 
|  154     NOTREACHED(); |  | 
|  155     return GetRect(); |  | 
|  156   } |  | 
|  157  |  147  | 
|  158 #if defined(OS_WIN) |  148 #if defined(OS_WIN) | 
|  159   // Returns a combinaison of PluginQuirks. |  149   // Returns a combinaison of PluginQuirks. | 
|  160   virtual int GetQuirks() const { |  150   virtual int GetQuirks() const; | 
|  161     NOTREACHED(); |  | 
|  162     return 0; |  | 
|  163   } |  | 
|  164 #endif |  151 #endif | 
|  165  |  152  | 
|  166  private: |  153  private: | 
|  167   DISALLOW_EVIL_CONSTRUCTORS(WebPluginDelegate); |  154   DISALLOW_COPY_AND_ASSIGN(WebPluginDelegate); | 
|  168 }; |  155 }; | 
|  169  |  156  | 
|  170 #endif  // #ifndef WEBKIT_GLUE_WEBPLUGIN_DELEGATE_H_ |  157 #endif  // #ifndef WEBKIT_GLUE_WEBPLUGIN_DELEGATE_H_ | 
| OLD | NEW |