OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 * Library General Public License for more details. | 12 * Library General Public License for more details. |
13 * | 13 * |
14 * You should have received a copy of the GNU Library General Public License | 14 * You should have received a copy of the GNU Library General Public License |
15 * along with this library; see the file COPYING.LIB. If not, write to | 15 * along with this library; see the file COPYING.LIB. If not, write to |
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 * Boston, MA 02110-1301, USA. | 17 * Boston, MA 02110-1301, USA. |
18 */ | 18 */ |
19 | 19 |
20 // https://w3c.github.io/uievents/#interface-MouseEvent | 20 // https://w3c.github.io/uievents/#interface-MouseEvent |
21 | 21 |
22 [ | 22 [ |
23 Constructor(DOMString type, optional MouseEventInit eventInitDict), | 23 Constructor(DOMString type, optional MouseEventInit eventInitDict), |
24 ConstructorCallWith=ScriptState, | 24 ConstructorCallWith=ScriptState, |
25 ] interface MouseEvent : UIEvent { | 25 ] interface MouseEvent : UIEvent { |
26 readonly attribute long screenX; | 26 readonly attribute double screenX; |
27 readonly attribute long screenY; | 27 readonly attribute double screenY; |
28 readonly attribute long clientX; | 28 readonly attribute double clientX; |
29 readonly attribute long clientY; | 29 readonly attribute double clientY; |
30 readonly attribute boolean ctrlKey; | 30 readonly attribute boolean ctrlKey; |
31 readonly attribute boolean shiftKey; | 31 readonly attribute boolean shiftKey; |
32 readonly attribute boolean altKey; | 32 readonly attribute boolean altKey; |
33 readonly attribute boolean metaKey; | 33 readonly attribute boolean metaKey; |
34 readonly attribute short button; | 34 readonly attribute short button; |
35 readonly attribute unsigned short buttons; | 35 readonly attribute unsigned short buttons; |
36 readonly attribute EventTarget? relatedTarget; | 36 readonly attribute EventTarget? relatedTarget; |
37 boolean getModifierState(DOMString keyArg); | 37 boolean getModifierState(DOMString keyArg); |
38 | 38 |
39 // https://w3c.github.io/uievents/#idl-interface-MouseEvent-initializers | 39 // https://w3c.github.io/uievents/#idl-interface-MouseEvent-initializers |
40 // TODO(foolip): None of the initMouseEvent() arguments should be optional. | 40 // TODO(foolip): None of the initMouseEvent() arguments should be optional. |
41 [CallWith=ScriptState, Measure] void initMouseEvent([Default=Undefined] opti
onal DOMString type, | 41 [CallWith=ScriptState, Measure] void initMouseEvent([Default=Undefined] opti
onal DOMString type, |
42 [Default=Undefined] opti
onal boolean bubbles, | 42 [Default=Undefined] opti
onal boolean bubbles, |
43 [Default=Undefined] opti
onal boolean cancelable, | 43 [Default=Undefined] opti
onal boolean cancelable, |
44 [Default=Undefined] opti
onal Window? view, | 44 [Default=Undefined] opti
onal Window? view, |
45 [Default=Undefined] opti
onal long detail, | 45 [Default=Undefined] opti
onal long detail, |
46 [Default=Undefined] opti
onal long screenX, | 46 [Default=Undefined] opti
onal long screenX, |
47 [Default=Undefined] opti
onal long screenY, | 47 [Default=Undefined] opti
onal long screenY, |
48 [Default=Undefined] opti
onal long clientX, | 48 [Default=Undefined] opti
onal long clientX, |
49 [Default=Undefined] opti
onal long clientY, | 49 [Default=Undefined] opti
onal long clientY, |
50 [Default=Undefined] opti
onal boolean ctrlKey, | 50 [Default=Undefined] opti
onal boolean ctrlKey, |
51 [Default=Undefined] opti
onal boolean altKey, | 51 [Default=Undefined] opti
onal boolean altKey, |
52 [Default=Undefined] opti
onal boolean shiftKey, | 52 [Default=Undefined] opti
onal boolean shiftKey, |
53 [Default=Undefined] opti
onal boolean metaKey, | 53 [Default=Undefined] opti
onal boolean metaKey, |
54 [Default=Undefined] opti
onal unsigned short button, | 54 [Default=Undefined] opti
onal unsigned short button, |
55 [Default=Undefined] opti
onal EventTarget? relatedTarget); | 55 [Default=Undefined] opti
onal EventTarget? relatedTarget); |
56 | 56 |
57 // CSSOM View Module | 57 readonly attribute double pageX; |
58 // http://dev.w3.org/csswg/cssom-view/#extensions-to-the-mouseevent-interfac
e | 58 readonly attribute double pageY; |
59 // TODO(foolip): These attributes should be of type double, and the spec | 59 [MeasureAs=MouseEventX] readonly attribute double x; |
60 // also redefines screenX/Y and clientX/Y as double. | 60 [MeasureAs=MouseEventY] readonly attribute double y; |
61 readonly attribute long pageX; | 61 [MeasureAs=MouseEventOffsetX] readonly attribute double offsetX; |
62 readonly attribute long pageY; | 62 [MeasureAs=MouseEventOffsetY] readonly attribute double offsetY; |
63 [MeasureAs=MouseEventX] readonly attribute long x; | |
64 [MeasureAs=MouseEventY] readonly attribute long y; | |
65 [MeasureAs=MouseEventOffsetX] readonly attribute long offsetX; | |
66 [MeasureAs=MouseEventOffsetY] readonly attribute long offsetY; | |
67 | 63 |
68 // Pointer Lock | 64 // Pointer Lock |
69 // https://dvcs.w3.org/hg/pointerlock/raw-file/default/index.html#extensions
-to-the-mouseevent-interface | 65 // https://dvcs.w3.org/hg/pointerlock/raw-file/default/index.html#extensions
-to-the-mouseevent-interface |
70 [MeasureAs=MouseEventMovementX] readonly attribute long movementX; | 66 [MeasureAs=MouseEventMovementX] readonly attribute long movementX; |
71 [MeasureAs=MouseEventMovementY] readonly attribute long movementY; | 67 [MeasureAs=MouseEventMovementY] readonly attribute long movementY; |
72 | 68 |
73 // Canvas Hit Regions | 69 // Canvas Hit Regions |
74 // https://html.spec.whatwg.org/multipage/scripting.html#MouseEvent-partial | 70 // https://html.spec.whatwg.org/multipage/scripting.html#MouseEvent-partial |
75 [RuntimeEnabled=ExperimentalCanvasFeatures] readonly attribute DOMString? re
gion; | 71 [RuntimeEnabled=ExperimentalCanvasFeatures] readonly attribute DOMString? re
gion; |
76 | 72 |
77 // Non-standard | 73 // Non-standard |
78 [MeasureAs=MouseEventFromElement] readonly attribute Node fromElement; | 74 [MeasureAs=MouseEventFromElement] readonly attribute Node fromElement; |
79 [MeasureAs=MouseEventToElement] readonly attribute Node toElement; | 75 [MeasureAs=MouseEventToElement] readonly attribute Node toElement; |
80 [MeasureAs=MouseEventWhich] readonly attribute long which; | 76 [MeasureAs=MouseEventWhich] readonly attribute long which; |
81 [Measure] readonly attribute long layerX; | 77 [Measure] readonly attribute long layerX; |
82 [Measure] readonly attribute long layerY; | 78 [Measure] readonly attribute long layerY; |
83 }; | 79 }; |
OLD | NEW |