Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Side by Side Diff: ppapi/c/ppb_instance.h

Issue 7038044: First step to remove scripting from PPP_Instance and PPB_Instance. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 9 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | ppapi/c/ppp_instance.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #ifndef PPAPI_C_PPB_INSTANCE_H_ 5 #ifndef PPAPI_C_PPB_INSTANCE_H_
6 #define PPAPI_C_PPB_INSTANCE_H_ 6 #define PPAPI_C_PPB_INSTANCE_H_
7 7
8 #include "ppapi/c/pp_bool.h" 8 #include "ppapi/c/pp_bool.h"
9 #include "ppapi/c/pp_instance.h" 9 #include "ppapi/c/pp_instance.h"
10 #include "ppapi/c/pp_resource.h" 10 #include "ppapi/c/pp_resource.h"
11 #include "ppapi/c/pp_var.h" 11 #include "ppapi/c/pp_var.h"
12 12
13 #define PPB_INSTANCE_INTERFACE_0_4 "PPB_Instance;0.4" 13 #define PPB_INSTANCE_INTERFACE_0_4 "PPB_Instance;0.4"
14 #define PPB_INSTANCE_INTERFACE_0_5 "PPB_Instance;0.5"
15 #ifdef PPAPI_INSTANCE_REMOVE_SCRIPTING
16 #define PPB_INSTANCE_INTERFACE PPB_INSTANCE_INTERFACE_0_5
17 #else
14 #define PPB_INSTANCE_INTERFACE PPB_INSTANCE_INTERFACE_0_4 18 #define PPB_INSTANCE_INTERFACE PPB_INSTANCE_INTERFACE_0_4
19 #endif
15 20
16 /** 21 /**
17 * @file 22 * @file
18 * This file defines the PPB_Instance interface implemented by the 23 * This file defines the PPB_Instance interface implemented by the
19 * browser and containing pointers to functions related to 24 * browser and containing pointers to functions related to
20 * the module instance on a web page. 25 * the module instance on a web page.
21 * 26 *
22 * @addtogroup Interfaces 27 * @addtogroup Interfaces
23 * @{ 28 * @{
24 */ 29 */
25 30
26 /** 31 /**
27 * The PPB_Instance interface contains pointers to functions 32 * The PPB_Instance interface contains pointers to functions
28 * related to the module instance on a web page. 33 * related to the module instance on a web page.
29 * 34 *
30 */ 35 */
36
37 #ifdef PPAPI_INSTANCE_REMOVE_SCRIPTING
31 struct PPB_Instance { 38 struct PPB_Instance {
32 /** 39 #else
33 * GetWindowObject is a pointer to a function that determines 40 struct PPB_Instance_0_5 {
34 * the DOM window containing this module instance. 41 #endif
35 *
36 * @param[in] instance A PP_Instance whose WindowObject should be retrieved.
37 * @return A PP_Var containing window object on success.
38 */
39 struct PP_Var (*GetWindowObject)(PP_Instance instance);
40
41 /**
42 * GetOwnerElementObject is a pointer to a function that determines
43 * the DOM element containing this module instance.
44 *
45 * @param[in] instance A PP_Instance whose WindowObject should be retrieved.
46 * @return A PP_Var containing DOM element on success.
47 */
48 struct PP_Var (*GetOwnerElementObject)(PP_Instance instance);
49
50 /** 42 /**
51 * BindGraphics is a pointer to a function that binds the given 43 * BindGraphics is a pointer to a function that binds the given
52 * graphics as the current drawing surface. The 44 * graphics as the current drawing surface. The
53 * contents of this device is what will be displayed in the plugin's area 45 * contents of this device is what will be displayed in the plugin's area
54 * on the web page. The device must be a 2D or a 3D device. 46 * on the web page. The device must be a 2D or a 3D device.
55 * 47 *
56 * You can pass a NULL resource as the device parameter to unbind all 48 * You can pass a NULL resource as the device parameter to unbind all
57 * devices from the given instance. The instance will then appear 49 * devices from the given instance. The instance will then appear
58 * transparent. Re-binding the same device will return PP_TRUE and will do 50 * transparent. Re-binding the same device will return PP_TRUE and will do
59 * nothing. Unbinding a device will drop any pending flush callbacks. 51 * nothing. Unbinding a device will drop any pending flush callbacks.
(...skipping 20 matching lines...) Expand all
80 * module instance is full-frame (repr). Such a module represents 72 * module instance is full-frame (repr). Such a module represents
81 * the entire document in a frame rather than an embedded resource. This can 73 * the entire document in a frame rather than an embedded resource. This can
82 * happen if the user does a top level navigation or the page specifies an 74 * happen if the user does a top level navigation or the page specifies an
83 * iframe to a resource with a MIME type registered by the plugin. 75 * iframe to a resource with a MIME type registered by the plugin.
84 * 76 *
85 * @param[in] instance A PP_Instance indentifying one instance of a module. 77 * @param[in] instance A PP_Instance indentifying one instance of a module.
86 * @return A PP_Bool containing PP_TRUE if the instance is full-frame. 78 * @return A PP_Bool containing PP_TRUE if the instance is full-frame.
87 */ 79 */
88 PP_Bool (*IsFullFrame)(PP_Instance instance); 80 PP_Bool (*IsFullFrame)(PP_Instance instance);
89 81
90 /** 82 };
91 * ExecuteScript is a pointer to a function that executes the given 83
92 * script in the context of the frame containing the module. 84 #ifdef PPAPI_INSTANCE_REMOVE_SCRIPTING
93 * 85 struct PPB_Instance_0_4 {
94 * The exception, if any, will be returned in *exception. As with the PPB_Var 86 #else
95 * interface, the exception parameter, if non-NULL, must be initialized 87 struct PPB_Instance {
96 * to a void exception or the function will immediately return. On success, 88 #endif
97 * the exception parameter will be set to a "void" var. On failure, the 89 struct PP_Var (*GetWindowObject)(PP_Instance instance);
98 * return value will be a "void" var. 90 struct PP_Var (*GetOwnerElementObject)(PP_Instance instance);
99 * 91 PP_Bool (*BindGraphics)(PP_Instance instance, PP_Resource device);
100 * @param[in] script A string containing the JavaScript to execute. 92 PP_Bool (*IsFullFrame)(PP_Instance instance);
101 * @param[in/out] exception PP_Var containing the exception. Initialize
102 * this to NULL if you don't want exception info; initialize this to a void
103 * exception if want exception info.
104 *
105 * @return The result of the script execution, or a "void" var
106 * if execution failed.
107 */
108 struct PP_Var (*ExecuteScript)(PP_Instance instance, 93 struct PP_Var (*ExecuteScript)(PP_Instance instance,
109 struct PP_Var script, 94 struct PP_Var script,
110 struct PP_Var* exception); 95 struct PP_Var* exception);
111 }; 96 };
97
112 /** 98 /**
113 * @} 99 * @}
114 */ 100 */
115 101
116 #endif /* PPAPI_C_PPB_INSTANCE_H_ */ 102 #endif /* PPAPI_C_PPB_INSTANCE_H_ */
117 103
OLDNEW
« no previous file with comments | « no previous file | ppapi/c/ppp_instance.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698