* RequestIdleCallback (patch from Henrique)

This commit is contained in:
michael 2021-05-20 14:03:35 +00:00
parent 8482033b45
commit aa84856ad8

View File

@ -2024,7 +2024,6 @@ TEventListenerEvent = class external name 'EventListener_Event' (TJSObject)
function redirect(url: String; Status: NativeInt): TJSResponse; function redirect(url: String; Status: NativeInt): TJSResponse;
end; end;
{ TJSWindow }
TJSDOMHighResTimeStamp = Double; TJSDOMHighResTimeStamp = Double;
TFrameRequestCallback = reference to procedure (aTime: TJSDOMHighResTimeStamp); TFrameRequestCallback = reference to procedure (aTime: TJSDOMHighResTimeStamp);
@ -2033,7 +2032,26 @@ TEventListenerEvent = class external name 'EventListener_Event' (TJSObject)
transfer : TJSValueDynArray; transfer : TJSValueDynArray;
end; end;
TJSIdleCallbackOptions = class
public
timeout: Cardinal;
end;
TJSIdleDeadline = class external name 'IdleDeadline'
private
FDidTimeout: Boolean; external name 'didTimeout';
public
function timeRemaining: TJSDOMHighResTimeStamp;
property didTimeout: Boolean read FDidTimeout;
end;
TIdleCallbackProc = reference to procedure(idleDeadline: TJSIdleDeadline);
TJSWindowArray = Array of TJSWindow; TJSWindowArray = Array of TJSWindow;
{ TJSWindow }
TJSWindow = class external name 'Window' (TJSObject) TJSWindow = class external name 'Window' (TJSObject)
Private Private
FClosed: boolean; external name 'closed'; FClosed: boolean; external name 'closed';
@ -2183,6 +2201,9 @@ TEventListenerEvent = class external name 'EventListener_Event' (TJSObject)
Function setTimeout(ahandler : TJSTimerCallBack; aTimeout : NativeUInt) : NativeInt; varargs; Function setTimeout(ahandler : TJSTimerCallBack; aTimeout : NativeUInt) : NativeInt; varargs;
Function setTimeout(ahandler : TJSTimerCallBack) : NativeInt; Function setTimeout(ahandler : TJSTimerCallBack) : NativeInt;
procedure stop; procedure stop;
procedure cancelIdleCallback(handle: NativeInt);
function requestIdleCallback(handler: TIdleCallbackProc): NativeInt; overload;
function requestIdleCallback(handler: TIdleCallbackProc; options: TJSIdleCallbackOptions): NativeInt; overload;
{ public properties } { public properties }
property console : TJSConsole Read FConsole; property console : TJSConsole Read FConsole;
property closed : boolean read FClosed; property closed : boolean read FClosed;