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_((List<MutationRecord> mutations, MutationOb
server observer) { |
25 var wrapped_mutations = []; | 25 var wrapped_mutations = []; |
26 for (var mutation in mutations) { | 26 for (var mutation in mutations) { |
27 // Wrap the Javascript object for each MutationRecord. | 27 // Wrap the Javascript object for each MutationRecord. |
28 wrapped_mutations.add(wrap_jso(mutation)); | 28 wrapped_mutations.add(wrap_jso(mutation)); |
29 } | 29 } |
30 // Wrap the MutationObserver too. | 30 // Wrap the MutationObserver too. |
31 callback(wrapped_mutations, wrap_jso(observer)); | 31 callback(wrapped_mutations, wrap_jso(observer)); |
32 })); | 32 })); |
33 $else | 33 $else |
34 static MutationObserver _create(callback) => _blink.BlinkMutationObserver.inst
ance.constructorCallback_1_((List<MutationRecord> mutations, MutationObserver ob
server) { | 34 static MutationObserver _create(callback) => _blink.BlinkMutationObserver.inst
ance.constructorCallback_1_(callback); |
35 var wrapped_mutations = []; | 35 $endif |
36 for (var mutation in mutations) { | |
37 // Wrap the Javascript object for each MutationRecord. | |
38 wrapped_mutations.add(wrap_jso(mutation)); | |
39 } | |
40 // Wrap the MutationObserver too. | |
41 callback(wrapped_mutations, wrap_jso(observer)); | |
42 }); | |
43 $endif | |
44 $endif | 36 $endif |
45 | 37 |
46 /** | 38 /** |
47 * Observes the target for the specified changes. | 39 * Observes the target for the specified changes. |
48 * | 40 * |
49 * Some requirements for the optional parameters: | 41 * Some requirements for the optional parameters: |
50 * | 42 * |
51 * * Either childList, attributes or characterData must be true. | 43 * * Either childList, attributes or characterData must be true. |
52 * * If attributeOldValue is true then attributes must also be true. | 44 * * If attributeOldValue is true then attributes must also be true. |
53 * * If attributeFilter is specified then attributes must be true. | 45 * * If attributeFilter is specified then attributes must be true. |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 return JS('MutationObserver', | 110 return JS('MutationObserver', |
119 'new(window.MutationObserver||window.WebKitMutationObserver||' | 111 'new(window.MutationObserver||window.WebKitMutationObserver||' |
120 'window.MozMutationObserver)(#)', | 112 'window.MozMutationObserver)(#)', |
121 convertDartClosureToJS(_wrapBinaryZone(callback), 2)); | 113 convertDartClosureToJS(_wrapBinaryZone(callback), 2)); |
122 } | 114 } |
123 $else | 115 $else |
124 factory MutationObserver(MutationCallback callback) => | 116 factory MutationObserver(MutationCallback callback) => |
125 new MutationObserver._(_wrapBinaryZone(callback)); | 117 new MutationObserver._(_wrapBinaryZone(callback)); |
126 $endif | 118 $endif |
127 } | 119 } |
OLD | NEW |