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 |
6 /* From dev/ppb_fullscreen_dev.idl modified Fri Aug 26 10:51:16 2011. */ | 6 /* From ppb_fullscreen.idl modified Thu Sep 1 14:31:56 2011. */ |
7 | 7 |
8 #ifndef PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ | 8 #ifndef PPAPI_C_PPB_FULLSCREEN_H_ |
9 #define PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ | 9 #define PPAPI_C_PPB_FULLSCREEN_H_ |
10 | 10 |
11 #include "ppapi/c/pp_bool.h" | 11 #include "ppapi/c/pp_bool.h" |
12 #include "ppapi/c/pp_instance.h" | 12 #include "ppapi/c/pp_instance.h" |
13 #include "ppapi/c/pp_macros.h" | 13 #include "ppapi/c/pp_macros.h" |
14 #include "ppapi/c/pp_size.h" | 14 #include "ppapi/c/pp_size.h" |
15 #include "ppapi/c/pp_stdint.h" | 15 #include "ppapi/c/pp_stdint.h" |
16 | 16 |
17 #define PPB_FULLSCREEN_DEV_INTERFACE_0_4 "PPB_Fullscreen(Dev);0.4" | 17 #define PPB_FULLSCREEN_INTERFACE_0_1 "PPB_Fullscreen;0.1" |
18 #define PPB_FULLSCREEN_DEV_INTERFACE PPB_FULLSCREEN_DEV_INTERFACE_0_4 | 18 #define PPB_FULLSCREEN_INTERFACE PPB_FULLSCREEN_INTERFACE_0_1 |
19 | 19 |
20 /** | 20 /** |
21 * @file | 21 * @file |
22 * This file defines the <code>PPB_Fullscreen</code> interface. | 22 * This file defines the <code>PPB_Fullscreen</code> interface. |
23 */ | 23 */ |
24 | 24 |
25 | 25 |
26 /** | 26 /** |
27 * @addtogroup Interfaces | 27 * @addtogroup Interfaces |
28 * @{ | 28 * @{ |
29 */ | 29 */ |
30 struct PPB_Fullscreen_Dev { | 30 struct PPB_Fullscreen { |
31 /** | 31 /** |
32 * Checks whether the plugin instance is currently in fullscreen mode. | 32 * Checks whether the plugin instance is currently in fullscreen mode. |
33 */ | 33 */ |
34 PP_Bool (*IsFullscreen)(PP_Instance instance); | 34 PP_Bool (*IsFullscreen)(PP_Instance instance); |
35 /** | 35 /** |
36 * Switches the plugin instance to/from fullscreen mode. Returns PP_TRUE on | 36 * Switches the plugin instance to/from fullscreen mode. Returns PP_TRUE on |
37 * success, PP_FALSE on failure. | 37 * success, PP_FALSE on failure. |
38 * | 38 * |
39 * This unbinds the current Graphics2D or Surface3D. Pending flushes and | 39 * This unbinds the current 2D or 3D devices. Pending flushes and swapbuffers |
40 * swapbuffers will execute as if the resource was off-screen. The transition | 40 * will execute as if the resource was off-screen. The transition to and from |
41 * is asynchronous. During the transition, IsFullscreen will return PP_False, | 41 * fullscreen is asynchronous. During the transition, IsFullscreen will |
42 * and no Graphics2D or Surface3D can be bound. The transition ends at the | 42 * return PP_FALSE, and no 2D or 3D device can be bound. The transition ends |
43 * next DidChangeView. | 43 * at the next DidChangeView. |
44 * | |
45 * Note: when switching to and from fullscreen, Context3D and Surface3D | |
46 * resources need to be re-created. This is a current limitation that will be | |
47 * lifted in a later revision. | |
48 */ | 44 */ |
49 PP_Bool (*SetFullscreen)(PP_Instance instance, PP_Bool fullscreen); | 45 PP_Bool (*SetFullscreen)(PP_Instance instance, PP_Bool fullscreen); |
50 /** | 46 /** |
51 * Gets the size of the screen. When going fullscreen, the instance will be | 47 * Gets the logical size (aka resolution) of the screen in pixels. |
52 * resized to that size. | 48 * When going fullscreen, the instance will be resized to that size. |
53 */ | 49 */ |
54 PP_Bool (*GetScreenSize)(PP_Instance instance, struct PP_Size* size); | 50 PP_Bool (*GetScreenSize)(PP_Instance instance, struct PP_Size* size); |
55 }; | 51 }; |
56 /** | 52 /** |
57 * @} | 53 * @} |
58 */ | 54 */ |
59 | 55 |
60 #endif /* PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ */ | 56 #endif /* PPAPI_C_PPB_FULLSCREEN_H_ */ |
61 | 57 |
OLD | NEW |