1/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2/* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 * 6 * For more information on this interface please see 7 * http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html 8 * 9 * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C 10 * liability, trademark and document use rules apply. 11 */ 12 13[Exposed=Window] 14interface UIEvent : Event 15{ 16 constructor(DOMString type, optional UIEventInit eventInitDict = {}); 17 18 readonly attribute WindowProxy? view; 19 readonly attribute long detail; 20 void initUIEvent(DOMString aType, 21 optional boolean aCanBubble = false, 22 optional boolean aCancelable = false, 23 optional Window? aView = null, 24 optional long aDetail = 0); 25}; 26 27// Additional DOM0 properties. 28partial interface UIEvent { 29 const long SCROLL_PAGE_UP = -32768; 30 const long SCROLL_PAGE_DOWN = 32768; 31 32 readonly attribute long layerX; 33 readonly attribute long layerY; 34 [NeedsCallerType] 35 readonly attribute unsigned long which; 36 readonly attribute Node? rangeParent; 37 readonly attribute long rangeOffset; 38}; 39 40dictionary UIEventInit : EventInit 41{ 42 Window? view = null; 43 long detail = 0; 44}; 45 46// NOTE: Gecko doesn't support commented out modifiers yet. 47dictionary EventModifierInit : UIEventInit 48{ 49 boolean ctrlKey = false; 50 boolean shiftKey = false; 51 boolean altKey = false; 52 boolean metaKey = false; 53 boolean modifierAltGraph = false; 54 boolean modifierCapsLock = false; 55 boolean modifierFn = false; 56 boolean modifierFnLock = false; 57 // boolean modifierHyper = false; 58 boolean modifierNumLock = false; 59 boolean modifierOS = false; 60 boolean modifierScrollLock = false; 61 // boolean modifierSuper = false; 62 boolean modifierSymbol = false; 63 boolean modifierSymbolLock = false; 64}; 65