Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1217)

Side by Side Diff: tools/dom/templates/html/impl/impl_CustomEvent.darttemplate

Issue 1832713002: Optimize dartium dart:html bindings so real world application performance is acceptable. Improves d… (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: update cached patches Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 // WARNING: Do not edit - generated code. 5 // WARNING: Do not edit - generated code.
6 6
7 part of $LIBRARYNAME; 7 part of $LIBRARYNAME;
8 8
9 $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS { 9 $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS {
10 $if DART2JS 10 $if DART2JS
11 @Creates('Null') // Set from Dart code; does not instantiate a native type. 11 @Creates('Null') // Set from Dart code; does not instantiate a native type.
12 $endif 12 $endif
13 var _dartDetail; 13 var _dartDetail;
14 14
15 factory $CLASSNAME(String type, 15 factory $CLASSNAME(String type,
16 {bool canBubble: true, bool cancelable: true, Object detail}) { 16 {bool canBubble: true, bool cancelable: true, Object detail}) {
17 17
18 final CustomEvent e = document._createEvent('CustomEvent'); 18 final CustomEvent e = document._createEvent('CustomEvent');
19 19
20 e._dartDetail = detail; 20 e._dartDetail = detail;
21 21
22 // Only try setting the detail if it's one of these types to avoid 22 // Only try setting the detail if it's one of these types to avoid
23 // first-chance exceptions. Can expand this list in the future as needed. 23 // first-chance exceptions. Can expand this list in the future as needed.
24 if (detail is List || detail is Map || detail is String || detail is num) { 24 if (detail is List || detail is Map || detail is String || detail is num) {
25 try { 25 try {
26 $if DART2JS
27 detail = convertDartToNative_SerializedScriptValue(detail); 26 detail = convertDartToNative_SerializedScriptValue(detail);
28 $endif
29 e._initCustomEvent(type, canBubble, cancelable, detail); 27 e._initCustomEvent(type, canBubble, cancelable, detail);
30 } catch(_) { 28 } catch(_) {
31 e._initCustomEvent(type, canBubble, cancelable, null); 29 e._initCustomEvent(type, canBubble, cancelable, null);
32 } 30 }
33 } else { 31 } else {
34 e._initCustomEvent(type, canBubble, cancelable, null); 32 e._initCustomEvent(type, canBubble, cancelable, null);
35 } 33 }
36 34
37 $if DARTIUM
38 // Need for identity.
39 js.setDartHtmlWrapperFor(e.blink_jsObject, e);
40
41 $endif
42 return e; 35 return e;
43 } 36 }
44 37
45 @DomName('CustomEvent.detail') 38 @DomName('CustomEvent.detail')
46 get detail { 39 get detail {
47 if (_dartDetail != null) { 40 if (_dartDetail != null) {
48 return _dartDetail; 41 return _dartDetail;
49 } 42 }
50 return _detail; 43 return _detail;
51 } 44 }
52 $!MEMBERS 45 $!MEMBERS
53 } 46 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698