Index: ppapi/c/dev/ppb_fullscreen_dev.h |
diff --git a/ppapi/c/dev/ppb_fullscreen_dev.h b/ppapi/c/dev/ppb_fullscreen_dev.h |
index ebf2adef024078a1262ac4193aa58d094fdd8ccf..ed91ed1e196fdb6b1636780222b95f3031344f5e 100644 |
--- a/ppapi/c/dev/ppb_fullscreen_dev.h |
+++ b/ppapi/c/dev/ppb_fullscreen_dev.h |
@@ -7,9 +7,10 @@ |
#include "ppapi/c/pp_bool.h" |
#include "ppapi/c/pp_instance.h" |
+#include "ppapi/c/pp_size.h" |
#include "ppapi/c/pp_stdint.h" |
-#define PPB_FULLSCREEN_DEV_INTERFACE "PPB_Fullscreen(Dev);0.3" |
+#define PPB_FULLSCREEN_DEV_INTERFACE "PPB_Fullscreen(Dev);0.4" |
// Use this interface to change a plugin instance to fullscreen mode. |
struct PPB_Fullscreen_Dev { |
@@ -18,11 +19,19 @@ struct PPB_Fullscreen_Dev { |
// Switches the plugin instance to/from fullscreen mode. Returns PP_TRUE on |
// success, PP_FALSE on failure. |
- // When in fullscreen mode, the plugin will be transparently scaled to the |
- // size of the screen. It will not receive a ViewChanged event, and doesn't |
- // need to rebind the graphics context. The pending flushes will execute |
- // normally, to the new fullscreen window. |
+ // This unbinds the current Graphics2D or Surface3D. Pending flushes and |
+ // swapbuffers will execute as if the resource was off-screen. The transition |
+ // is asynchronous. During the transition, IsFullscreen will return PP_False, |
+ // and no Graphics2D or Surface3D can be bound. The transition ends at the |
+ // next DidChangeView. |
+ // Note: when switching to and from fullscreen, Context3D and Surface3D |
+ // resources need to be re-created. This is a current limitation that will be |
+ // lifted in a later revision. |
PP_Bool (*SetFullscreen)(PP_Instance instance, PP_Bool fullscreen); |
+ |
+ // Gets the size of the screen. When going fullscreen, the instance will be |
+ // resized to that size. |
+ PP_Bool (*GetScreenSize)(PP_Instance instance, struct PP_Size* size); |
}; |
#endif /* PPAPI_C_DEV_PPB_FULLSCREEN_DEV_H_ */ |