OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 /* Copyright (c) 2011 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 |
5 #ifndef PPAPI_C_PRIVATE_PPB_FLASH_H_ | 6 #ifndef PPAPI_C_PRIVATE_PPB_FLASH_H_ |
6 #define PPAPI_C_PRIVATE_PPB_FLASH_H_ | 7 #define PPAPI_C_PRIVATE_PPB_FLASH_H_ |
7 | 8 |
8 #include "ppapi/c/pp_bool.h" | 9 #include "ppapi/c/pp_bool.h" |
9 #include "ppapi/c/pp_instance.h" | 10 #include "ppapi/c/pp_instance.h" |
10 #include "ppapi/c/pp_module.h" | 11 #include "ppapi/c/pp_module.h" |
11 #include "ppapi/c/pp_point.h" | 12 #include "ppapi/c/pp_point.h" |
12 #include "ppapi/c/pp_rect.h" | 13 #include "ppapi/c/pp_rect.h" |
13 #include "ppapi/c/pp_resource.h" | 14 #include "ppapi/c/pp_resource.h" |
14 #include "ppapi/c/pp_time.h" | 15 #include "ppapi/c/pp_time.h" |
15 #include "ppapi/c/pp_var.h" | 16 #include "ppapi/c/pp_var.h" |
16 | 17 |
17 #define PPB_FLASH_INTERFACE "PPB_Flash;11" | 18 #define PPB_FLASH_INTERFACE "PPB_Flash;11" |
18 | 19 |
| 20 /** |
| 21 * @file |
| 22 * This file contains the <code>PPB_Flash</code> interface. |
| 23 */ |
| 24 |
| 25 |
| 26 /** |
| 27 * @addtogroup Interfaces |
| 28 * @{ |
| 29 */ |
| 30 /** |
| 31 * The <code>PPB_Flash</code> interface contains pointers to various functions |
| 32 * that are only needed to support Pepper Flash. |
| 33 */ |
19 struct PPB_Flash { | 34 struct PPB_Flash { |
20 // Sets or clears the rendering hint that the given plugin instance is always | 35 /** |
21 // on top of page content. Somewhat more optimized painting can be used in | 36 * Sets or clears the rendering hint that the given plugin instance is always |
22 // this case. | 37 * on top of page content. Somewhat more optimized painting can be used in |
| 38 * this case. |
| 39 */ |
23 void (*SetInstanceAlwaysOnTop)(PP_Instance instance, PP_Bool on_top); | 40 void (*SetInstanceAlwaysOnTop)(PP_Instance instance, PP_Bool on_top); |
24 | |
25 PP_Bool (*DrawGlyphs)(PP_Instance instance, | 41 PP_Bool (*DrawGlyphs)(PP_Instance instance, |
26 PP_Resource pp_image_data, | 42 PP_Resource pp_image_data, |
27 const struct PP_FontDescription_Dev* font_desc, | 43 const struct PP_FontDescription_Dev* font_desc, |
28 uint32_t color, | 44 uint32_t color, |
29 struct PP_Point position, | 45 struct PP_Point position, |
30 struct PP_Rect clip, | 46 struct PP_Rect clip, |
31 const float transformation[3][3], | 47 const float transformation[3][3], |
32 uint32_t glyph_count, | 48 uint32_t glyph_count, |
33 const uint16_t glyph_indices[], | 49 const uint16_t glyph_indices[], |
34 const struct PP_Point glyph_advances[]); | 50 const struct PP_Point glyph_advances[]); |
35 | 51 /** |
36 // Retrieves the proxy that will be used for the given URL. The result will | 52 * Retrieves the proxy that will be used for the given URL. The result will |
37 // be a string in PAC format, or an undefined var on error. | 53 * be a string in PAC format, or an undefined var on error. |
| 54 */ |
38 struct PP_Var (*GetProxyForURL)(PP_Instance instance, const char* url); | 55 struct PP_Var (*GetProxyForURL)(PP_Instance instance, const char* url); |
39 | 56 /** |
40 // Navigate to the URL given by the given URLRequestInfo. (This supports GETs, | 57 * Navigate to the URL given by the given URLRequestInfo. (This supports GETs, |
41 // POSTs, and javascript: URLs.) May open a new tab if target is not "_self". | 58 * POSTs, and javascript: URLs.) May open a new tab if target is not "_self". |
| 59 */ |
42 int32_t (*Navigate)(PP_Resource request_info, | 60 int32_t (*Navigate)(PP_Resource request_info, |
43 const char* target, | 61 const char* target, |
44 bool from_user_action); | 62 bool from_user_action); |
45 | 63 /** |
46 // Runs a nested message loop. The plugin will be reentered from this call. | 64 * Runs a nested message loop. The plugin will be reentered from this call. |
47 // This function is used in places where Flash would normally enter a nested | 65 * This function is used in places where Flash would normally enter a nested |
48 // message loop (e.g., when displaying context menus), but Pepper provides | 66 * message loop (e.g., when displaying context menus), but Pepper provides |
49 // only an asynchronous call. After performing that asynchronous call, call | 67 * only an asynchronous call. After performing that asynchronous call, call |
50 // |RunMessageLoop()|. In the callback, call |QuitMessageLoop()|. | 68 * |RunMessageLoop()|. In the callback, call |QuitMessageLoop()|. |
| 69 */ |
51 void (*RunMessageLoop)(PP_Instance instance); | 70 void (*RunMessageLoop)(PP_Instance instance); |
52 | 71 /** |
53 // Posts a quit message for the outermost nested message loop. Use this to | 72 * Posts a quit message for the outermost nested message loop. Use this to |
54 // exit and return back to the caller after you call RunMessageLoop. | 73 * exit and return back to the caller after you call RunMessageLoop. |
| 74 */ |
55 void (*QuitMessageLoop)(PP_Instance instance); | 75 void (*QuitMessageLoop)(PP_Instance instance); |
56 | 76 /** |
57 // Retrieves the local time zone offset from GM time for the given UTC time. | 77 * Retrieves the local time zone offset from GM time for the given UTC time. |
| 78 */ |
58 double (*GetLocalTimeZoneOffset)(PP_Instance instance, PP_Time t); | 79 double (*GetLocalTimeZoneOffset)(PP_Instance instance, PP_Time t); |
59 | 80 /** |
60 // Gets a (string) with "command-line" options for Flash; used to pass | 81 * Gets a (string) with "command-line" options for Flash; used to pass |
61 // run-time debugging parameters, etc. | 82 * run-time debugging parameters, etc. |
| 83 */ |
62 struct PP_Var (*GetCommandLineArgs)(PP_Module module); | 84 struct PP_Var (*GetCommandLineArgs)(PP_Module module); |
63 }; | 85 }; |
| 86 /** |
| 87 * @} |
| 88 */ |
64 | 89 |
65 #endif // PPAPI_C_PRIVATE_PPB_FLASH_H_ | 90 #endif /* PPAPI_C_PRIVATE_PPB_FLASH_H_ */ |
OLD | NEW |