| 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 dev/ppb_fullscreen_dev.idl modified Mon Sep 26 15:06:40 2011. */ |
| 7 | 7 |
| 8 #ifndef PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ | 8 #ifndef PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ |
| 9 #define PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ | 9 #define PPAPI_C_DEV_PPB_FULLSCREEN_DEV_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_DEV_INTERFACE_0_5 "PPB_Fullscreen(Dev);0.5" |
| 18 #define PPB_FULLSCREEN_DEV_INTERFACE PPB_FULLSCREEN_DEV_INTERFACE_0_4 | 18 #define PPB_FULLSCREEN_DEV_INTERFACE PPB_FULLSCREEN_DEV_INTERFACE_0_5 |
| 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_Dev</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_Dev { |
| 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 the original value, and no 2D or 3D device can be bound. |
| 43 * next DidChangeView. | 43 * The transition ends at the next DidChangeView. |
| 44 * | 44 * |
| 45 * Note: when switching to and from fullscreen, Context3D and Surface3D | 45 * The transition to fullscreen can only occur while the browser is |
| 46 * resources need to be re-created. This is a current limitation that will be | 46 * processing a user gesture, even if PP_TRUE is returned. Note that two |
| 47 * lifted in a later revision. | 47 * DidChangeView calls will happen when switching to fullscreen: |
| 48 * one for moving the plugin to the middle of the window and one for |
| 49 * stretching the window placing the plugin in the middle of the screen. |
| 50 * Plugin size will not be affected. |
| 48 */ | 51 */ |
| 49 PP_Bool (*SetFullscreen)(PP_Instance instance, PP_Bool fullscreen); | 52 PP_Bool (*SetFullscreen)(PP_Instance instance, PP_Bool fullscreen); |
| 50 /** | 53 /** |
| 51 * Gets the size of the screen. When going fullscreen, the instance will be | 54 * Gets the size of the screen in pixels. When going fullscreen, the instance |
| 52 * resized to that size. | 55 * will be resized to that size. |
| 53 */ | 56 */ |
| 54 PP_Bool (*GetScreenSize)(PP_Instance instance, struct PP_Size* size); | 57 PP_Bool (*GetScreenSize)(PP_Instance instance, struct PP_Size* size); |
| 55 }; | 58 }; |
| 56 /** | 59 /** |
| 57 * @} | 60 * @} |
| 58 */ | 61 */ |
| 59 | 62 |
| 60 #endif /* PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ */ | 63 #endif /* PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ */ |
| 61 | 64 |
| OLD | NEW |