| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2009 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_DEFAULT_PLUGIN_PLUGIN_IMPL_WIN_H_ | 5 #ifndef WEBKIT_DEFAULT_PLUGIN_PLUGIN_IMPL_WIN_H_ |
| 6 #define WEBKIT_DEFAULT_PLUGIN_PLUGIN_IMPL_WIN_H_ | 6 #define WEBKIT_DEFAULT_PLUGIN_PLUGIN_IMPL_WIN_H_ |
| 7 | 7 |
| 8 #include <atlbase.h> | 8 #include <atlbase.h> |
| 9 #include <atlwin.h> | 9 #include <atlwin.h> |
| 10 #include <string> | 10 #include <string> |
| 11 #include <vector> | 11 #include <vector> |
| (...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 184 | 184 |
| 185 // Getter for the NPP instance member. | 185 // Getter for the NPP instance member. |
| 186 const NPP instance() const { | 186 const NPP instance() const { |
| 187 return instance_; | 187 return instance_; |
| 188 } | 188 } |
| 189 | 189 |
| 190 // Returns whether or not the UI layout is right-to-left (such as Hebrew or | 190 // Returns whether or not the UI layout is right-to-left (such as Hebrew or |
| 191 // Arabic). | 191 // Arabic). |
| 192 bool IsRTLLayout() const; | 192 bool IsRTLLayout() const; |
| 193 | 193 |
| 194 // Parses the plugin instantiation arguments. This includes checking for |
| 195 // whether this is an activex install and reading the appropriate |
| 196 // arguments like codebase, etc. For plugin installs we download the |
| 197 // plugin finder URL and initalize the mime type and the plugin instance |
| 198 // info. |
| 199 // |
| 200 // Parameters: |
| 201 // module_handle: The handle to the dll in which this object is instantiated. |
| 202 // instance: The plugins opaque instance handle. |
| 203 // mime_type: Identifies the third party plugin |
| 204 // argc: Indicates the count of arguments passed in from the webpage. |
| 205 // argv: Pointer to the arguments. |
| 206 // raw_activex_clsid: Output parameter which contains the CLSID of the |
| 207 // Activex plugin needed for an Activex install |
| 208 // is_activex: Output parameter indicating if this is an activex install |
| 209 // activex_clsid: Output parameter containing the classid of the activex |
| 210 // for an activex install |
| 211 // activex_codebase: Output parameter containing the activex codebase if |
| 212 // this is an activex install |
| 213 // plugin_download_url: Output parameter containing the plugin download url |
| 214 // on success. |
| 215 // plugin_finder_url: Output parameter containing the plugin finder url on |
| 216 // success. |
| 217 // Returns true on success. |
| 218 static bool ParseInstantiationArguments(NPMIMEType mime_type, |
| 219 NPP instance, |
| 220 int16 argc, |
| 221 char* argn[], |
| 222 char* argv[], |
| 223 std::string* raw_activex_clsid, |
| 224 bool* is_activex, |
| 225 std::string* activex_clsid, |
| 226 std::string* activex_codebase, |
| 227 std::string* plugin_download_url, |
| 228 std::string* plugin_finder_url); |
| 194 protected: | 229 protected: |
| 195 // Window message handlers. | 230 // Window message handlers. |
| 196 LRESULT OnPaint(UINT message, WPARAM wparam, LPARAM lparam, BOOL& handled); | 231 LRESULT OnPaint(UINT message, WPARAM wparam, LPARAM lparam, BOOL& handled); |
| 197 LRESULT OnEraseBackGround(UINT message, WPARAM wparam, LPARAM lparam, | 232 LRESULT OnEraseBackGround(UINT message, WPARAM wparam, LPARAM lparam, |
| 198 BOOL& handled); | 233 BOOL& handled); |
| 199 LRESULT OnLButtonDown(UINT message, WPARAM wparam, LPARAM lparam, | 234 LRESULT OnLButtonDown(UINT message, WPARAM wparam, LPARAM lparam, |
| 200 BOOL& handled); | 235 BOOL& handled); |
| 201 LRESULT OnSetCursor(UINT message, WPARAM wparam, LPARAM lparam, | 236 LRESULT OnSetCursor(UINT message, WPARAM wparam, LPARAM lparam, |
| 202 BOOL& handled); | 237 BOOL& handled); |
| 203 | 238 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 247 | 282 |
| 248 // Resolves the relative URL (could be already an absolute URL too) to return | 283 // Resolves the relative URL (could be already an absolute URL too) to return |
| 249 // full URL based on current document's URL and base. | 284 // full URL based on current document's URL and base. |
| 250 // | 285 // |
| 251 // Parameters: | 286 // Parameters: |
| 252 // instance | 287 // instance |
| 253 // The plugins opaque instance handle. | 288 // The plugins opaque instance handle. |
| 254 // relative_url | 289 // relative_url |
| 255 // The URL to be resolved. | 290 // The URL to be resolved. |
| 256 // Returns the resolved URL. | 291 // Returns the resolved URL. |
| 257 std::string ResolveURL(NPP instance, const std::string& relative_url); | 292 static std::string ResolveURL(NPP instance, const std::string& relative_url); |
| 258 | 293 |
| 259 // Initializes resources like the icon, fonts, etc needed by the plugin | 294 // Initializes resources like the icon, fonts, etc needed by the plugin |
| 260 // installer | 295 // installer |
| 261 // | 296 // |
| 262 // Parameters: | 297 // Parameters: |
| 263 // module_handle | 298 // module_handle |
| 264 // Handle to the dll in which this object is instantiated. | 299 // Handle to the dll in which this object is instantiated. |
| 265 // Returns true on success. | 300 // Returns true on success. |
| 266 bool InitializeResources(HINSTANCE module_handle); | 301 bool InitializeResources(HINSTANCE module_handle); |
| 267 | 302 |
| 268 // Parses the plugin instantiation arguments. This includes checking for | |
| 269 // whether this is an activex install and reading the appropriate | |
| 270 // arguments like codebase, etc. For plugin installs we download the | |
| 271 // plugin finder URL and initalize the mime type and the plugin instance | |
| 272 // info. | |
| 273 // | |
| 274 // Parameters: | |
| 275 // module_handle | |
| 276 // The handle to the dll in which this object is instantiated. | |
| 277 // instance | |
| 278 // The plugins opaque instance handle. | |
| 279 // mime_type | |
| 280 // Identifies the third party plugin which would be eventually installed. | |
| 281 // argc | |
| 282 // Indicates the count of arguments passed in from the webpage. | |
| 283 // argv | |
| 284 // Pointer to the arguments. | |
| 285 // raw_activex_clsid | |
| 286 // Output parameter which contains the CLSID of the Activex plugin needed. | |
| 287 // This is only applicable if the webpage specifically requests an ActiveX | |
| 288 // control. | |
| 289 // Returns true on success. | |
| 290 bool ParseInstantiationArguments(NPMIMEType mime_type, NPP instance, | |
| 291 int16 argc, char* argn[], char* argv[], | |
| 292 std::string* raw_activex_clsid); | |
| 293 | |
| 294 // Paints user action messages to the plugin window. These include messages | 303 // Paints user action messages to the plugin window. These include messages |
| 295 // like whether the user should click on the plugin window to download the | 304 // like whether the user should click on the plugin window to download the |
| 296 // plugin, etc. | 305 // plugin, etc. |
| 297 // | 306 // |
| 298 // Parameters: | 307 // Parameters: |
| 299 // paint_dc | 308 // paint_dc |
| 300 // The device context returned in BeginPaint. | 309 // The device context returned in BeginPaint. |
| 301 // x_origin | 310 // x_origin |
| 302 // Horizontal reference point indicating where the text is to be displayed. | 311 // Horizontal reference point indicating where the text is to be displayed. |
| 303 // y_origin | 312 // y_origin |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 364 // ActiveX related. | 373 // ActiveX related. |
| 365 std::string activex_codebase_; | 374 std::string activex_codebase_; |
| 366 std::string activex_clsid_; | 375 std::string activex_clsid_; |
| 367 CComObject<ActiveXInstaller>* activex_installer_; | 376 CComObject<ActiveXInstaller>* activex_installer_; |
| 368 | 377 |
| 369 DISALLOW_EVIL_CONSTRUCTORS(PluginInstallerImpl); | 378 DISALLOW_EVIL_CONSTRUCTORS(PluginInstallerImpl); |
| 370 }; | 379 }; |
| 371 | 380 |
| 372 | 381 |
| 373 #endif // WEBKIT_DEFAULT_PLUGIN_PLUGIN_IMPL_WIN_H_ | 382 #endif // WEBKIT_DEFAULT_PLUGIN_PLUGIN_IMPL_WIN_H_ |
| OLD | NEW |