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 $LIBRARYNAME; | 5 part of $LIBRARYNAME; |
6 | 6 |
7 $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS
{ | 7 $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS
{ |
8 $!MEMBERS | 8 $!MEMBERS |
9 /** | 9 /** |
10 * Checks to see if the mutation observer API is supported on the current | 10 * Checks to see if the mutation observer API is supported on the current |
11 * platform. | 11 * platform. |
12 */ | 12 */ |
13 static bool get supported { | 13 static bool get supported { |
14 $if DARTIUM | 14 $if DARTIUM |
15 return true; | 15 return true; |
16 $else | 16 $else |
17 return JS('bool', | 17 return JS('bool', |
18 '!!(window.MutationObserver || window.WebKitMutationObserver)'); | 18 '!!(window.MutationObserver || window.WebKitMutationObserver)'); |
19 $endif | 19 $endif |
20 } | 20 } |
21 $if DARTIUM | 21 $if DARTIUM |
22 @DocsEditable() | 22 @DocsEditable() |
23 $if JSINTEROP | 23 $if JSINTEROP |
24 static MutationObserver _create(callback) => wrap_jso(_blink.BlinkMutationObse
rver.instance.constructorCallback_1_((List<MutationRecord> mutations, MutationOb
server observer) { | 24 static MutationObserver _create(callback) => wrap_jso(_blink.BlinkMutationObse
rver.instance.constructorCallback_1_((mutations, observer) { |
25 var wrapped_mutations = []; | 25 callback(mutations, wrap_jso(observer)); |
26 for (var mutation in mutations) { | |
27 // Wrap the Javascript object for each MutationRecord. | |
28 wrapped_mutations.add(wrap_jso(mutation)); | |
29 } | |
30 // Wrap the MutationObserver too. | |
31 callback(wrapped_mutations, wrap_jso(observer)); | |
32 })); | 26 })); |
33 $else | 27 $else |
34 static MutationObserver _create(callback) => _blink.BlinkMutationObserver.inst
ance.constructorCallback_1_(callback); | 28 static MutationObserver _create(callback) => _blink.BlinkMutationObserver.inst
ance.constructorCallback_1_(callback); |
35 $endif | 29 $endif |
36 $endif | 30 $endif |
37 | 31 |
38 /** | 32 /** |
39 * Observes the target for the specified changes. | 33 * Observes the target for the specified changes. |
40 * | 34 * |
41 * Some requirements for the optional parameters: | 35 * Some requirements for the optional parameters: |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 return JS('MutationObserver', | 104 return JS('MutationObserver', |
111 'new(window.MutationObserver||window.WebKitMutationObserver||' | 105 'new(window.MutationObserver||window.WebKitMutationObserver||' |
112 'window.MozMutationObserver)(#)', | 106 'window.MozMutationObserver)(#)', |
113 convertDartClosureToJS(_wrapBinaryZone(callback), 2)); | 107 convertDartClosureToJS(_wrapBinaryZone(callback), 2)); |
114 } | 108 } |
115 $else | 109 $else |
116 factory MutationObserver(MutationCallback callback) => | 110 factory MutationObserver(MutationCallback callback) => |
117 new MutationObserver._(_wrapBinaryZone(callback)); | 111 new MutationObserver._(_wrapBinaryZone(callback)); |
118 $endif | 112 $endif |
119 } | 113 } |
OLD | NEW |