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)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC { | 7 $(ANNOTATIONS)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC { |
8 factory $CLASSNAME(String type, | 8 factory $CLASSNAME(String type, |
9 {Window view, int detail: 0, int screenX: 0, int screenY: 0, | 9 {Window view, int detail: 0, int screenX: 0, int screenY: 0, |
10 int clientX: 0, int clientY: 0, int button: 0, bool canBubble: true, | 10 int clientX: 0, int clientY: 0, int button: 0, bool canBubble: true, |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
62 var x = JS('int', '#.offsetX', this); | 62 var x = JS('int', '#.offsetX', this); |
63 var y = JS('int', '#.offsetY', this); | 63 var y = JS('int', '#.offsetY', this); |
64 return new Point(x, y); | 64 return new Point(x, y); |
65 } else { | 65 } else { |
66 // Firefox does not support offsetX. | 66 // Firefox does not support offsetX. |
67 if (!(this.target is Element)) { | 67 if (!(this.target is Element)) { |
68 throw new UnsupportedError( | 68 throw new UnsupportedError( |
69 'offsetX is only supported on elements'); | 69 'offsetX is only supported on elements'); |
70 } | 70 } |
71 Element target = this.target; | 71 Element target = this.target; |
72 return (this.client - target.getBoundingClientRect().topLeft).toInt(); | 72 var point = (this.client - target.getBoundingClientRect().topLeft); |
| 73 return new Point(point.x.toInt(), point.y.toInt()); |
73 } | 74 } |
74 } | 75 } |
75 | 76 |
76 @DomName('MouseEvent.screenX') | 77 @DomName('MouseEvent.screenX') |
77 @DomName('MouseEvent.screenY') | 78 @DomName('MouseEvent.screenY') |
78 Point get screen => new Point(_screenX, _screenY); | 79 Point get screen => new Point(_screenX, _screenY); |
79 } | 80 } |
OLD | NEW |