2 * Copyright (C) 2006, 2007, 2009, 2011 Apple Inc. All rights reserved.
3 * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
15 * You should have received a copy of the GNU Library General Public License
16 * along with this library; see the file COPYING.LIB. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
21 // Introduced in DOM Level 2:
23 WillBeGarbageCollected,
28 const unsigned short NONE = 0;
29 const unsigned short CAPTURING_PHASE = 1;
30 const unsigned short AT_TARGET = 2;
31 const unsigned short BUBBLING_PHASE = 3;
33 // Reverse-engineered from Netscape
34 const unsigned short MOUSEDOWN = 1;
35 const unsigned short MOUSEUP = 2;
36 const unsigned short MOUSEOVER = 4;
37 const unsigned short MOUSEOUT = 8;
38 const unsigned short MOUSEMOVE = 16;
39 const unsigned short MOUSEDRAG = 32;
40 const unsigned short CLICK = 64;
41 const unsigned short DBLCLICK = 128;
42 const unsigned short KEYDOWN = 256;
43 const unsigned short KEYUP = 512;
44 const unsigned short KEYPRESS = 1024;
45 const unsigned short DRAGDROP = 2048;
46 const unsigned short FOCUS = 4096;
47 const unsigned short BLUR = 8192;
48 const unsigned short SELECT = 16384;
49 const unsigned short CHANGE = 32768;
51 readonly attribute DOMString type;
52 readonly attribute EventTarget target;
53 readonly attribute EventTarget currentTarget;
54 readonly attribute unsigned short eventPhase;
55 [InitializedByEventConstructor] readonly attribute boolean bubbles;
56 [InitializedByEventConstructor] readonly attribute boolean cancelable;
57 readonly attribute DOMTimeStamp timeStamp;
59 void stopPropagation();
60 void preventDefault();
61 void initEvent([Default=Undefined] optional DOMString eventTypeArg,
62 [Default=Undefined] optional boolean canBubbleArg,
63 [Default=Undefined] optional boolean cancelableArg);
65 // DOM Level 3 Additions.
66 readonly attribute boolean defaultPrevented;
67 void stopImmediatePropagation();
70 [MeasureAs=EventSrcElement] readonly attribute EventTarget srcElement;
71 [CallWith=ExecutionContext, ImplementedAs=legacyReturnValue, MeasureAs=EventReturnValue] attribute boolean returnValue;
72 [MeasureAs=EventCancelBubble] attribute boolean cancelBubble;
73 [MeasureAs=EventPath] readonly attribute NodeList path;
74 [Custom=Getter, MeasureAs=EventClipboardData] readonly attribute DataTransfer clipboardData;