2013-03-14 19:30:47 +04:00
|
|
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*
|
|
|
|
* For more information on this interface please see
|
|
|
|
* http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html
|
|
|
|
*
|
|
|
|
* Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
|
|
|
|
* liability, trademark and document use rules apply.
|
|
|
|
*/
|
|
|
|
|
2015-05-19 23:26:02 +03:00
|
|
|
[Constructor(DOMString typeArg, optional MouseEventInit mouseEventInitDict)]
|
2013-03-14 19:30:47 +04:00
|
|
|
interface MouseEvent : UIEvent {
|
2016-11-16 22:10:22 +03:00
|
|
|
[NeedsCallerType]
|
2013-03-14 19:30:47 +04:00
|
|
|
readonly attribute long screenX;
|
2016-11-16 22:10:22 +03:00
|
|
|
[NeedsCallerType]
|
2013-03-14 19:30:47 +04:00
|
|
|
readonly attribute long screenY;
|
|
|
|
readonly attribute long clientX;
|
|
|
|
readonly attribute long clientY;
|
2016-11-02 22:49:18 +03:00
|
|
|
[BinaryName="clientX"]
|
|
|
|
readonly attribute long x;
|
|
|
|
[BinaryName="clientY"]
|
|
|
|
readonly attribute long y;
|
2015-03-13 14:50:10 +03:00
|
|
|
readonly attribute long offsetX;
|
|
|
|
readonly attribute long offsetY;
|
2013-03-14 19:30:47 +04:00
|
|
|
readonly attribute boolean ctrlKey;
|
|
|
|
readonly attribute boolean shiftKey;
|
|
|
|
readonly attribute boolean altKey;
|
|
|
|
readonly attribute boolean metaKey;
|
2014-02-20 22:38:13 +04:00
|
|
|
readonly attribute short button;
|
2013-03-14 19:30:47 +04:00
|
|
|
readonly attribute unsigned short buttons;
|
|
|
|
readonly attribute EventTarget? relatedTarget;
|
2014-04-27 02:32:00 +04:00
|
|
|
readonly attribute DOMString? region;
|
2015-05-19 23:26:02 +03:00
|
|
|
|
|
|
|
// Pointer Lock
|
|
|
|
readonly attribute long movementX;
|
|
|
|
readonly attribute long movementY;
|
|
|
|
|
2013-03-14 19:30:47 +04:00
|
|
|
// Deprecated in DOM Level 3:
|
|
|
|
void initMouseEvent(DOMString typeArg,
|
|
|
|
boolean canBubbleArg,
|
|
|
|
boolean cancelableArg,
|
2014-10-29 22:06:20 +03:00
|
|
|
Window? viewArg,
|
2013-03-14 19:30:47 +04:00
|
|
|
long detailArg,
|
|
|
|
long screenXArg,
|
|
|
|
long screenYArg,
|
|
|
|
long clientXArg,
|
|
|
|
long clientYArg,
|
|
|
|
boolean ctrlKeyArg,
|
|
|
|
boolean altKeyArg,
|
|
|
|
boolean shiftKeyArg,
|
|
|
|
boolean metaKeyArg,
|
2014-02-20 22:38:13 +04:00
|
|
|
short buttonArg,
|
2013-03-14 19:30:47 +04:00
|
|
|
EventTarget? relatedTargetArg);
|
|
|
|
// Introduced in DOM Level 3:
|
|
|
|
boolean getModifierState(DOMString keyArg);
|
|
|
|
};
|
|
|
|
|
|
|
|
// Suggested initMouseEvent replacement initializer:
|
2015-04-13 10:16:13 +03:00
|
|
|
dictionary MouseEventInit : EventModifierInit {
|
2013-03-14 19:30:47 +04:00
|
|
|
// Attributes for MouseEvent:
|
|
|
|
long screenX = 0;
|
|
|
|
long screenY = 0;
|
|
|
|
long clientX = 0;
|
|
|
|
long clientY = 0;
|
2014-02-20 22:38:13 +04:00
|
|
|
short button = 0;
|
2013-03-14 19:30:47 +04:00
|
|
|
// Note: "buttons" was not previously initializable through initMouseEvent!
|
|
|
|
unsigned short buttons = 0;
|
|
|
|
EventTarget? relatedTarget = null;
|
2015-05-19 23:26:02 +03:00
|
|
|
|
|
|
|
// Pointer Lock
|
|
|
|
long movementX = 0;
|
|
|
|
long movementY = 0;
|
2013-03-14 19:30:47 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
// Mozilla extensions
|
|
|
|
partial interface MouseEvent
|
|
|
|
{
|
2016-07-28 10:15:21 +03:00
|
|
|
[BinaryName="movementX", Pref="pointer-lock-api.prefixed.enabled"]
|
2013-03-14 19:30:47 +04:00
|
|
|
readonly attribute long mozMovementX;
|
2016-07-28 10:15:21 +03:00
|
|
|
[BinaryName="movementY", Pref="pointer-lock-api.prefixed.enabled"]
|
2013-03-14 19:30:47 +04:00
|
|
|
readonly attribute long mozMovementY;
|
|
|
|
|
|
|
|
// Finger or touch pressure event value
|
|
|
|
// ranges between 0.0 and 1.0
|
|
|
|
readonly attribute float mozPressure;
|
|
|
|
|
|
|
|
const unsigned short MOZ_SOURCE_UNKNOWN = 0;
|
|
|
|
const unsigned short MOZ_SOURCE_MOUSE = 1;
|
|
|
|
const unsigned short MOZ_SOURCE_PEN = 2;
|
|
|
|
const unsigned short MOZ_SOURCE_ERASER = 3;
|
|
|
|
const unsigned short MOZ_SOURCE_CURSOR = 4;
|
|
|
|
const unsigned short MOZ_SOURCE_TOUCH = 5;
|
|
|
|
const unsigned short MOZ_SOURCE_KEYBOARD = 6;
|
|
|
|
|
|
|
|
readonly attribute unsigned short mozInputSource;
|
|
|
|
|
|
|
|
void initNSMouseEvent(DOMString typeArg,
|
|
|
|
boolean canBubbleArg,
|
|
|
|
boolean cancelableArg,
|
2014-10-29 22:06:20 +03:00
|
|
|
Window? viewArg,
|
2013-03-14 19:30:47 +04:00
|
|
|
long detailArg,
|
|
|
|
long screenXArg,
|
|
|
|
long screenYArg,
|
|
|
|
long clientXArg,
|
|
|
|
long clientYArg,
|
|
|
|
boolean ctrlKeyArg,
|
|
|
|
boolean altKeyArg,
|
|
|
|
boolean shiftKeyArg,
|
|
|
|
boolean metaKeyArg,
|
2014-02-20 22:38:13 +04:00
|
|
|
short buttonArg,
|
2013-03-14 19:30:47 +04:00
|
|
|
EventTarget? relatedTargetArg,
|
|
|
|
float pressure,
|
|
|
|
unsigned short inputSourceArg);
|
2014-11-24 17:33:06 +03:00
|
|
|
[ChromeOnly]
|
|
|
|
readonly attribute boolean hitCluster; // True when touch occurs in a cluster of links
|
2013-03-14 19:30:47 +04:00
|
|
|
|
|
|
|
};
|
|
|
|
|