OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 part of html; | 5 part of html; |
6 | 6 |
7 // TODO(antonm): support not DOM isolates too. | 7 // TODO(antonm): support not DOM isolates too. |
8 class _Timer implements Timer { | 8 class _Timer implements Timer { |
9 final canceller; | 9 final canceller; |
10 | 10 |
11 _Timer(this.canceller); | 11 _Timer(this.canceller); |
12 | 12 |
13 void cancel() { canceller(); } | 13 void cancel() { canceller(); } |
14 } | 14 } |
15 | 15 |
16 get _timerFactoryClosure => (int milliSeconds, void callback(Timer timer), bool
repeating) { | 16 get _timerFactoryClosure => (int milliSeconds, void callback(Timer timer), bool
repeating) { |
17 var maker; | 17 var maker; |
18 var canceller; | 18 var canceller; |
19 if (repeating) { | 19 if (repeating) { |
20 maker = window._setInterval; | 20 maker = window.setInterval; |
21 canceller = window._clearInterval; | 21 canceller = window.clearInterval; |
22 } else { | 22 } else { |
23 maker = window._setTimeout; | 23 maker = window.setTimeout; |
24 canceller = window._clearTimeout; | 24 canceller = window.clearTimeout; |
25 } | 25 } |
26 Timer timer; | 26 Timer timer; |
27 final int id = maker(() { callback(timer); }, milliSeconds); | 27 final int id = maker(() { callback(timer); }, milliSeconds); |
28 timer = new _Timer(() { canceller(id); }); | 28 timer = new _Timer(() { canceller(id); }); |
29 return timer; | 29 return timer; |
30 }; | 30 }; |
OLD | NEW |