Selaa lähdekoodia

Add fullscreen and pointerlock web APIs.

Closes #3913.
Bruno Garcia 10 vuotta sitten
vanhempi
commit
6ce8d49611
3 muutettua tiedostoa jossa 19 lisäystä ja 0 poistoa
  1. 10 0
      std/js/html/Document.hx
  2. 5 0
      std/js/html/Element.hx
  3. 4 0
      std/js/html/Window.hx

+ 10 - 0
std/js/html/Document.hx

@@ -52,6 +52,10 @@ extern class Document extends Node
 	var onbeforescriptexecute : haxe.Constraints.Function;
 	var onafterscriptexecute : haxe.Constraints.Function;
 	var currentScript(default,null) : Element;
+	var fullScreenEnabled(default,null) : Bool;
+	var fullScreenElement(default,null) : Element;
+	var fullScreen(default,null) : Bool;
+	var pointerLockElement(default,null) : Element;
 	var hidden(default,null) : Bool;
 	var visibilityState(default,null) : VisibilityState;
 	var styleSheets(default,null) : StyleSheetList;
@@ -123,6 +127,10 @@ extern class Document extends Node
 	var onpointerleave : haxe.Constraints.Function;
 	var ongotpointercapture : haxe.Constraints.Function;
 	var onlostpointercapture : haxe.Constraints.Function;
+	var onfullscreenchange : haxe.Constraints.Function;
+	var onfullscreenerror : haxe.Constraints.Function;
+	var onpointerlockchange : haxe.Constraints.Function;
+	var onpointerlockerror : haxe.Constraints.Function;
 	var onerror : haxe.Constraints.Function;
 	var children(default,null) : HTMLCollection;
 	var firstElementChild(default,null) : Element;
@@ -168,6 +176,8 @@ extern class Document extends Node
 	/** @throws DOMError */
 	function hasFocus() : Bool;
 	function releaseCapture() : Void;
+	function cancelFullScreen() : Void;
+	function exitPointerLock() : Void;
 	/** @throws DOMError */
 	function registerElement( name : String, ?options : ElementRegistrationOptions ) : Dynamic;
 	function enableStyleSheetsForSet( name : String ) : Void;

+ 5 - 0
std/js/html/Element.hx

@@ -112,6 +112,10 @@ extern class Element extends Node
 	var onpointerleave : haxe.Constraints.Function;
 	var ongotpointercapture : haxe.Constraints.Function;
 	var onlostpointercapture : haxe.Constraints.Function;
+	var onfullscreenchange : haxe.Constraints.Function;
+	var onfullscreenerror : haxe.Constraints.Function;
+	var onpointerlockchange : haxe.Constraints.Function;
+	var onpointerlockerror : haxe.Constraints.Function;
 	var previousElementSibling(default,null) : Element;
 	var nextElementSibling(default,null) : Element;
 	var onerror : haxe.Constraints.Function;
@@ -147,6 +151,7 @@ extern class Element extends Node
 	function releasePointerCapture( pointerId : Int ) : Void;
 	function setCapture( ?retargetToElement : Bool = false ) : Void;
 	function releaseCapture() : Void;
+	function requestPointerLock() : Void;
 	function getAttributeNode( name : String ) : Attr;
 	/** @throws DOMError */
 	function setAttributeNode( newAttr : Attr ) : Attr;

+ 4 - 0
std/js/html/Window.hx

@@ -138,6 +138,10 @@ extern class Window extends EventTarget
 	var onpointerleave : haxe.Constraints.Function;
 	var ongotpointercapture : haxe.Constraints.Function;
 	var onlostpointercapture : haxe.Constraints.Function;
+	var onfullscreenchange : haxe.Constraints.Function;
+	var onfullscreenerror : haxe.Constraints.Function;
+	var onpointerlockchange : haxe.Constraints.Function;
+	var onpointerlockerror : haxe.Constraints.Function;
 	var indexedDB(default,null) : js.html.idb.Factory;
 	var onerror : haxe.EitherType<Event,String> -> String -> Int -> Int -> Dynamic -> Bool;
 	var speechSynthesis(default,null) : SpeechSynthesis;