33 */
44var timeoutHandler ;
55var timeoutCallbacks = { } ;
6+ var timerId = 0 ;
67
7- function createHadlerAndGetId ( ) : number {
8+ function createHandlerAndGetId ( ) : number {
89 if ( ! timeoutHandler ) {
910 timeoutHandler = new android . os . Handler ( android . os . Looper . getMainLooper ( ) ) ;
1011 }
1112
12- return new Date ( ) . getUTCMilliseconds ( ) ;
13+ timerId ++ ;
14+ return timerId ;
1315}
1416
1517export function setTimeout ( callback : Function , milliseconds = 0 ) : number {
16- var id = createHadlerAndGetId ( ) ;
18+ var id = createHandlerAndGetId ( ) ;
1719
1820 var runnable = new java . lang . Runnable ( {
1921 run : ( ) => {
2022 callback ( ) ;
2123
22- if ( timeoutCallbacks && timeoutCallbacks [ id ] ) {
23- timeoutCallbacks [ id ] = null ;
24+ if ( timeoutCallbacks [ id ] ) {
25+ delete timeoutCallbacks [ id ] ;
2426 }
2527 }
2628 } ) ;
@@ -37,12 +39,12 @@ export function setTimeout(callback: Function, milliseconds = 0): number {
3739export function clearTimeout ( id : number ) : void {
3840 if ( timeoutCallbacks [ id ] ) {
3941 timeoutHandler . removeCallbacks ( timeoutCallbacks [ id ] ) ;
40- timeoutCallbacks [ id ] = null ;
42+ delete timeoutCallbacks [ id ] ;
4143 }
4244}
4345
4446export function setInterval ( callback : Function , milliseconds = 0 ) : number {
45- var id = createHadlerAndGetId ( ) ;
47+ var id = createHandlerAndGetId ( ) ;
4648 var handler = timeoutHandler ;
4749
4850 var runnable = new java . lang . Runnable ( {
@@ -61,4 +63,4 @@ export function setInterval(callback: Function, milliseconds = 0): number {
6163 return id ;
6264}
6365
64- export var clearInterval = clearTimeout ;
66+ export var clearInterval = clearTimeout ;
0 commit comments