2015-08-22 04:34:51 +03:00
|
|
|
/* -*- Mode: C++; 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/. */
|
|
|
|
|
|
|
|
/**
|
2015-09-17 06:05:44 +03:00
|
|
|
* This header file lists up all event messages.
|
|
|
|
* Before including this header file, you should define:
|
|
|
|
* NS_EVENT_MESSAGE(aMessage)
|
2015-09-14 18:14:38 +03:00
|
|
|
*
|
2015-09-17 06:05:44 +03:00
|
|
|
* Additionally, you can specify following macro for e*First and e*Last.
|
|
|
|
* NS_EVENT_MESSAGE_FIRST_LAST(aMessage, aFirst, aLast)
|
|
|
|
* This is optional, if you need only actual event messages, you don't need
|
|
|
|
* to define this macro.
|
|
|
|
*
|
2015-09-14 18:14:38 +03:00
|
|
|
* Naming rules of the event messages:
|
|
|
|
* 0. Starting with "e" prefix and use camelcase.
|
|
|
|
* 1. Basically, use same name as the DOM name which is fired at dispatching
|
|
|
|
* the event.
|
|
|
|
* 2. If the event message name becomes too generic, e.g., "eInvalid", that may
|
|
|
|
* conflict with another enum's item name, append something after the "e"
|
|
|
|
* prefix, e.g., "eFormInvalid".
|
2015-08-22 04:34:51 +03:00
|
|
|
*/
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
#ifndef NS_EVENT_MESSAGE_FIRST_LAST
|
|
|
|
# define UNDEF_NS_EVENT_MESSAGE_FIRST_LAST 1
|
|
|
|
# define NS_EVENT_MESSAGE_FIRST_LAST(aMessage, aFirst, aLast)
|
|
|
|
#endif
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eVoidEvent)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// This is a dummy event message for all event listener implementation in
|
|
|
|
// EventListenerManager.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eAllEvents)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Widget may be destroyed
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eWindowClose)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eKeyPress)
|
|
|
|
NS_EVENT_MESSAGE(eKeyUp)
|
|
|
|
NS_EVENT_MESSAGE(eKeyDown)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2016-04-22 19:22:49 +03:00
|
|
|
// These messages are dispatched when PluginInstaceChild receives native
|
|
|
|
// keyboard events directly and it posts the information to the widget.
|
|
|
|
// These messages shouldn't be handled by content and non-reserved chrome
|
|
|
|
// event handlers.
|
|
|
|
NS_EVENT_MESSAGE(eKeyDownOnPlugin)
|
|
|
|
NS_EVENT_MESSAGE(eKeyUpOnPlugin)
|
|
|
|
|
2016-05-11 15:56:42 +03:00
|
|
|
// This message is sent after a content process handles a key event or accesskey
|
|
|
|
// to indicate that an potential accesskey was not found. The parent process may
|
|
|
|
// then respond by, for example, opening menus and processing other shortcuts.
|
|
|
|
// It inherits its properties from a keypress event.
|
|
|
|
NS_EVENT_MESSAGE(eAccessKeyNotFound)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eResize)
|
|
|
|
NS_EVENT_MESSAGE(eScroll)
|
Bug 1478776 - Part 10: Add internal VisualViewport resize/scroll events. r=botond,nika
The VisualViewport events are all nice and shiny, but unfortunately not quite
what is needed for the session store.
Firstly, the spec wants the "scroll" event to be fired only when the *relative*
offset between visual and layout viewport changes. The session store however
records the absolute offset and as such is interested in when *that* changes.
Secondly, again as per the spec the events don't bubble, and with the default
DOMEventTargetHelper implementation they don't escape the VisualViewport during
capturing, either. This means that any event listener must be added directly on
the VisualViewport itself in order to capture any events.
This might have been intended because the events use the same names as the
normal "scroll"/"resize" events, and as such you cannot specify separate event
listeners for VisualViewport and non-VisualViewport "scroll" events if both
events end up being dispatched to the same element (you can only try to filter
after the fact by looking at the originalTarget of the event).
At the same time, the VisualViewport is attached to the inner Window, and so
each time you navigate, you also get a different VisualViewport object.
All of this might be totally fine from the perspective of a page script, because
in that case you won't care anyway about what happens when the current page goes
away.
From the session store perspective on the other hand (especially Fennec's non-
e10s session store design), this is rather unfortunate because we don't want to
have to keep registering event listeners
a) manually for each subframe
b) each time the page navigates
The event target chain problem could be solved by letting the scroll events
escape the VisualViewport during the capturing phase (which the spec doesn't say
anything about), but this would mean that any scroll listener attached to a
window/browser/... that uses capturing will now catch both layout and visual
viewport scroll events.
In some cases this might even be beneficial, but in others (e.g. bug 1498812
comment 21) I'd like to specifically decide which kind of scroll event to
capture. Having to look at event.originalTarget to distinguish the two kinds
might be defensible in test code, but in case this distinction would be needed
in production code as well, given the existence of a C++-based filtering helper
in nsSessionStoreUtils for another use case where (scroll) events need to be
filtered, JS-based scroll event filtering might be a bad idea.
Additionally, in any case this wouldn't solve the fundamental conflict between
the spec and the session store about *when* the "scroll" event should be fired
in the first place.
Hence I'd like to introduce a separate set of events with distinct event names,
which will be dispatched according to the requirements of our internal users
(i.e. currently the session store). To avoid potential web compatibility issues
down the road, for now these events will be dispatched only to event listeners
registered in the system group (allowing *all* Chrome event listeners cannot be
done because checking the Chrome status of each event target might be too
expensive for frequently dispatched events).
Differential Revision: https://phabricator.services.mozilla.com/D14046
--HG--
extra : moz-landing-system : lando
2018-12-21 01:14:42 +03:00
|
|
|
NS_EVENT_MESSAGE(eMozVisualResize)
|
|
|
|
NS_EVENT_MESSAGE(eMozVisualScroll)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2016-05-30 19:52:00 +03:00
|
|
|
// Application installation
|
|
|
|
NS_EVENT_MESSAGE(eInstall)
|
2016-10-12 22:45:19 +03:00
|
|
|
NS_EVENT_MESSAGE(eAppInstalled)
|
2016-05-30 19:52:00 +03:00
|
|
|
|
2015-08-29 02:58:28 +03:00
|
|
|
// A plugin was clicked or otherwise focused. ePluginActivate should be
|
2015-08-29 02:58:28 +03:00
|
|
|
// used when the window is not active. ePluginFocus should be used when
|
2015-08-22 04:34:51 +03:00
|
|
|
// the window is active. In the latter case, the dispatcher of the event
|
|
|
|
// is expected to ensure that the plugin's widget is focused beforehand.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(ePluginActivate)
|
|
|
|
NS_EVENT_MESSAGE(ePluginFocus)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eOffline)
|
|
|
|
NS_EVENT_MESSAGE(eOnline)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLanguageChange)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eMouseMove)
|
|
|
|
NS_EVENT_MESSAGE(eMouseUp)
|
|
|
|
NS_EVENT_MESSAGE(eMouseDown)
|
|
|
|
NS_EVENT_MESSAGE(eMouseEnterIntoWidget)
|
|
|
|
NS_EVENT_MESSAGE(eMouseExitFromWidget)
|
|
|
|
NS_EVENT_MESSAGE(eMouseDoubleClick)
|
|
|
|
NS_EVENT_MESSAGE(eMouseClick)
|
2016-12-01 03:48:02 +03:00
|
|
|
NS_EVENT_MESSAGE(eMouseAuxClick)
|
2015-08-29 02:58:32 +03:00
|
|
|
// eMouseActivate is fired when the widget is activated by a click.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eMouseActivate)
|
|
|
|
NS_EVENT_MESSAGE(eMouseOver)
|
|
|
|
NS_EVENT_MESSAGE(eMouseOut)
|
|
|
|
NS_EVENT_MESSAGE(eMouseHitTest)
|
|
|
|
NS_EVENT_MESSAGE(eMouseEnter)
|
|
|
|
NS_EVENT_MESSAGE(eMouseLeave)
|
2017-01-03 18:55:48 +03:00
|
|
|
NS_EVENT_MESSAGE(eMouseTouchDrag)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eMouseLongTap)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE_FIRST_LAST(eMouseEvent, eMouseMove, eMouseLongTap)
|
|
|
|
|
2015-08-22 04:34:51 +03:00
|
|
|
// Pointer spec events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(ePointerMove)
|
|
|
|
NS_EVENT_MESSAGE(ePointerUp)
|
|
|
|
NS_EVENT_MESSAGE(ePointerDown)
|
|
|
|
NS_EVENT_MESSAGE(ePointerOver)
|
|
|
|
NS_EVENT_MESSAGE(ePointerOut)
|
|
|
|
NS_EVENT_MESSAGE(ePointerEnter)
|
|
|
|
NS_EVENT_MESSAGE(ePointerLeave)
|
|
|
|
NS_EVENT_MESSAGE(ePointerCancel)
|
|
|
|
NS_EVENT_MESSAGE(ePointerGotCapture)
|
|
|
|
NS_EVENT_MESSAGE(ePointerLostCapture)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE_FIRST_LAST(ePointerEvent, ePointerMove, ePointerLostCapture)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eContextMenu)
|
|
|
|
|
2019-05-07 14:21:29 +03:00
|
|
|
NS_EVENT_MESSAGE(eCueChange)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLoad)
|
|
|
|
NS_EVENT_MESSAGE(eUnload)
|
|
|
|
NS_EVENT_MESSAGE(eHashChange)
|
|
|
|
NS_EVENT_MESSAGE(eImageAbort)
|
|
|
|
NS_EVENT_MESSAGE(eLoadError)
|
2016-08-16 07:01:12 +03:00
|
|
|
NS_EVENT_MESSAGE(eLoadEnd)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(ePopState)
|
2019-04-24 14:15:27 +03:00
|
|
|
NS_EVENT_MESSAGE(eRejectionHandled)
|
2015-11-18 02:09:53 +03:00
|
|
|
NS_EVENT_MESSAGE(eStorage)
|
2019-04-24 14:15:27 +03:00
|
|
|
NS_EVENT_MESSAGE(eUnhandledRejection)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eBeforeUnload)
|
|
|
|
NS_EVENT_MESSAGE(eReadyStateChange)
|
2016-08-16 07:01:12 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eFormSubmit)
|
|
|
|
NS_EVENT_MESSAGE(eFormReset)
|
|
|
|
NS_EVENT_MESSAGE(eFormChange)
|
|
|
|
NS_EVENT_MESSAGE(eFormSelect)
|
|
|
|
NS_EVENT_MESSAGE(eFormInvalid)
|
2017-06-17 06:42:05 +03:00
|
|
|
NS_EVENT_MESSAGE(eFormCheckboxStateChange)
|
|
|
|
NS_EVENT_MESSAGE(eFormRadioStateChange)
|
2019-09-09 16:53:25 +03:00
|
|
|
NS_EVENT_MESSAGE(eFormData)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Need separate focus/blur notifications for non-native widgets
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eFocus)
|
|
|
|
NS_EVENT_MESSAGE(eBlur)
|
2016-10-07 04:39:53 +03:00
|
|
|
NS_EVENT_MESSAGE(eFocusIn)
|
|
|
|
NS_EVENT_MESSAGE(eFocusOut)
|
2015-09-17 06:05:44 +03:00
|
|
|
|
|
|
|
NS_EVENT_MESSAGE(eDragEnter)
|
|
|
|
NS_EVENT_MESSAGE(eDragOver)
|
|
|
|
NS_EVENT_MESSAGE(eDragExit)
|
|
|
|
NS_EVENT_MESSAGE(eDrag)
|
|
|
|
NS_EVENT_MESSAGE(eDragEnd)
|
|
|
|
NS_EVENT_MESSAGE(eDragStart)
|
|
|
|
NS_EVENT_MESSAGE(eDrop)
|
|
|
|
NS_EVENT_MESSAGE(eDragLeave)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE_FIRST_LAST(eDragDropEvent, eDragEnter, eDragLeave)
|
|
|
|
|
2015-09-04 13:54:11 +03:00
|
|
|
// XUL specific events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eXULPopupShowing)
|
|
|
|
NS_EVENT_MESSAGE(eXULPopupShown)
|
2016-08-17 01:33:05 +03:00
|
|
|
NS_EVENT_MESSAGE(eXULPopupPositioned)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eXULPopupHiding)
|
|
|
|
NS_EVENT_MESSAGE(eXULPopupHidden)
|
|
|
|
NS_EVENT_MESSAGE(eXULBroadcast)
|
|
|
|
NS_EVENT_MESSAGE(eXULCommandUpdate)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-10 04:40:04 +03:00
|
|
|
// Legacy mouse scroll (wheel) events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLegacyMouseLineOrPageScroll)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyMousePixelScroll)
|
|
|
|
|
|
|
|
NS_EVENT_MESSAGE(eScrollPortUnderflow)
|
|
|
|
NS_EVENT_MESSAGE(eScrollPortOverflow)
|
|
|
|
|
|
|
|
NS_EVENT_MESSAGE(eLegacySubtreeModified)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyNodeInserted)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyNodeRemoved)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyNodeRemovedFromDocument)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyNodeInsertedIntoDocument)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyAttrModified)
|
|
|
|
NS_EVENT_MESSAGE(eLegacyCharacterDataModified)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE_FIRST_LAST(eLegacyMutationEvent, eLegacySubtreeModified,
|
|
|
|
eLegacyCharacterDataModified)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eUnidentifiedEvent)
|
2016-08-16 07:01:12 +03:00
|
|
|
|
2015-08-22 04:34:51 +03:00
|
|
|
// composition events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionStart)
|
2015-09-11 15:21:27 +03:00
|
|
|
// eCompositionEnd is the message for DOM compositionend event.
|
2015-09-11 15:21:27 +03:00
|
|
|
// This event should NOT be dispatched from widget if eCompositionCommit
|
2015-08-22 04:34:51 +03:00
|
|
|
// is available.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionEnd)
|
2015-09-11 15:21:27 +03:00
|
|
|
// eCompositionUpdate is the message for DOM compositionupdate event.
|
2015-08-22 04:34:51 +03:00
|
|
|
// This event should NOT be dispatched from widget since it will be dispatched
|
2015-09-11 15:21:27 +03:00
|
|
|
// by mozilla::TextComposition automatically if eCompositionChange event
|
2015-08-22 04:34:51 +03:00
|
|
|
// will change composition string.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionUpdate)
|
2015-09-11 15:21:27 +03:00
|
|
|
// eCompositionChange is the message for representing a change of
|
2015-08-22 04:34:51 +03:00
|
|
|
// composition string. This should be dispatched from widget even if
|
|
|
|
// composition string isn't changed but the ranges are changed. This causes
|
|
|
|
// a DOM "text" event which is a non-standard DOM event.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionChange)
|
2015-09-11 15:21:26 +03:00
|
|
|
// eCompositionCommitAsIs is the message for representing a commit of
|
2015-08-22 04:34:51 +03:00
|
|
|
// composition string. TextComposition will commit composition with the
|
|
|
|
// last data. TextComposition will dispatch this event to the DOM tree as
|
2015-09-11 15:21:27 +03:00
|
|
|
// eCompositionChange without clause information. After that,
|
2015-09-11 15:21:27 +03:00
|
|
|
// eCompositionEnd will be dispatched automatically.
|
2015-08-22 04:34:51 +03:00
|
|
|
// Its mData and mRanges should be empty and nullptr.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionCommitAsIs)
|
2015-09-11 15:21:27 +03:00
|
|
|
// eCompositionCommit is the message for representing a commit of
|
2015-08-22 04:34:51 +03:00
|
|
|
// composition string with its mData value. TextComposition will dispatch this
|
2015-09-11 15:21:27 +03:00
|
|
|
// event to the DOM tree as eCompositionChange without clause information.
|
2015-09-11 15:21:27 +03:00
|
|
|
// After that, eCompositionEnd will be dispatched automatically.
|
2015-08-22 04:34:51 +03:00
|
|
|
// Its mRanges should be nullptr.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionCommit)
|
2017-06-27 17:41:12 +03:00
|
|
|
// eCompositionCommitRequestHandled is NOT used with any Widget*Event.
|
|
|
|
// This is used only by PBrowser.OnEventNeedingAckHandled(). If active IME
|
2019-04-10 00:38:15 +03:00
|
|
|
// commits composition synchronously, BrowserParent returns the commit string
|
2019-04-10 01:39:01 +03:00
|
|
|
// to the remote process synchronously. Then, BrowserChild dispatches
|
2017-06-27 17:41:12 +03:00
|
|
|
// eCompositionCommit in the remote process. Finally, this message is sent
|
2019-04-10 00:38:15 +03:00
|
|
|
// to BrowserParent. (If IME commits composition asynchronously, this message
|
|
|
|
// is not used.)
|
2017-06-27 17:41:12 +03:00
|
|
|
NS_EVENT_MESSAGE(eCompositionCommitRequestHandled)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-02 09:08:01 +03:00
|
|
|
// Following events are defined for deprecated DOM events which are using
|
|
|
|
// InternalUIEvent class.
|
|
|
|
// DOMActivate (mapped with the DOM event and used internally)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLegacyDOMActivate)
|
2015-09-02 09:08:01 +03:00
|
|
|
// DOMFocusIn (only mapped with the DOM event)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLegacyDOMFocusIn)
|
2015-09-02 09:08:01 +03:00
|
|
|
// DOMFocusOut (only mapped with the DOM event)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLegacyDOMFocusOut)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// pagetransition events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(ePageShow)
|
|
|
|
NS_EVENT_MESSAGE(ePageHide)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// SVG events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eSVGLoad)
|
|
|
|
NS_EVENT_MESSAGE(eSVGScroll)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// XUL command events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eXULCommand)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Cut, copy, paste events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eCopy)
|
|
|
|
NS_EVENT_MESSAGE(eCut)
|
|
|
|
NS_EVENT_MESSAGE(ePaste)
|
2017-02-22 12:34:45 +03:00
|
|
|
NS_EVENT_MESSAGE(ePasteNoFormatting)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Query for the selected text information, it return the selection offset,
|
|
|
|
// selection length and selected text.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQuerySelectedText)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for the text content of specified range, it returns actual lengh (if
|
|
|
|
// the specified range is too long) and the text of the specified range.
|
|
|
|
// Returns the entire text if requested length > actual length.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryTextContent)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for the caret rect of nth insertion point. The offset of the result is
|
|
|
|
// relative position from the top level widget.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryCaretRect)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for the bounding rect of a range of characters. This works on any
|
|
|
|
// valid character range given offset and length. Result is relative to top
|
|
|
|
// level widget coordinates
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryTextRect)
|
2016-06-23 12:40:04 +03:00
|
|
|
// Query for the bounding rect array of a range of characters.
|
|
|
|
// Thiis similar event of eQueryTextRect.
|
|
|
|
NS_EVENT_MESSAGE(eQueryTextRectArray)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for the bounding rect of the current focused frame. Result is relative
|
|
|
|
// to top level widget coordinates
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryEditorRect)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for the current state of the content. The particular members of
|
|
|
|
// mReply that are set for each query content event will be valid on success.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryContentState)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for the selection in the form of a nsITransferable.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQuerySelectionAsTransferable)
|
2015-08-22 04:34:51 +03:00
|
|
|
// Query for character at a point. This returns the character offset, its
|
|
|
|
// rect and also tentative caret point if the point is clicked. The point is
|
2016-04-18 17:09:02 +03:00
|
|
|
// specified by Event::mRefPoint.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryCharacterAtPoint)
|
2016-04-18 17:09:02 +03:00
|
|
|
// Query if the DOM element under Event::mRefPoint belongs to our widget
|
2015-08-22 04:34:51 +03:00
|
|
|
// or not.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eQueryDOMWidgetHittest)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Video events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eLoadStart)
|
|
|
|
NS_EVENT_MESSAGE(eProgress)
|
|
|
|
NS_EVENT_MESSAGE(eSuspend)
|
|
|
|
NS_EVENT_MESSAGE(eEmptied)
|
|
|
|
NS_EVENT_MESSAGE(eStalled)
|
|
|
|
NS_EVENT_MESSAGE(ePlay)
|
|
|
|
NS_EVENT_MESSAGE(ePause)
|
|
|
|
NS_EVENT_MESSAGE(eLoadedMetaData)
|
|
|
|
NS_EVENT_MESSAGE(eLoadedData)
|
|
|
|
NS_EVENT_MESSAGE(eWaiting)
|
|
|
|
NS_EVENT_MESSAGE(ePlaying)
|
|
|
|
NS_EVENT_MESSAGE(eCanPlay)
|
|
|
|
NS_EVENT_MESSAGE(eCanPlayThrough)
|
|
|
|
NS_EVENT_MESSAGE(eSeeking)
|
|
|
|
NS_EVENT_MESSAGE(eSeeked)
|
|
|
|
NS_EVENT_MESSAGE(eTimeUpdate)
|
|
|
|
NS_EVENT_MESSAGE(eEnded)
|
|
|
|
NS_EVENT_MESSAGE(eRateChange)
|
|
|
|
NS_EVENT_MESSAGE(eDurationChange)
|
|
|
|
NS_EVENT_MESSAGE(eVolumeChange)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// paint notification events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eAfterPaint)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Simple gesture events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eSwipeGestureMayStart)
|
|
|
|
NS_EVENT_MESSAGE(eSwipeGestureStart)
|
|
|
|
NS_EVENT_MESSAGE(eSwipeGestureUpdate)
|
|
|
|
NS_EVENT_MESSAGE(eSwipeGestureEnd)
|
|
|
|
NS_EVENT_MESSAGE(eSwipeGesture)
|
|
|
|
NS_EVENT_MESSAGE(eMagnifyGestureStart)
|
|
|
|
NS_EVENT_MESSAGE(eMagnifyGestureUpdate)
|
|
|
|
NS_EVENT_MESSAGE(eMagnifyGesture)
|
|
|
|
NS_EVENT_MESSAGE(eRotateGestureStart)
|
|
|
|
NS_EVENT_MESSAGE(eRotateGestureUpdate)
|
|
|
|
NS_EVENT_MESSAGE(eRotateGesture)
|
|
|
|
NS_EVENT_MESSAGE(eTapGesture)
|
|
|
|
NS_EVENT_MESSAGE(ePressTapGesture)
|
|
|
|
NS_EVENT_MESSAGE(eEdgeUIStarted)
|
|
|
|
NS_EVENT_MESSAGE(eEdgeUICanceled)
|
|
|
|
NS_EVENT_MESSAGE(eEdgeUICompleted)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Events to manipulate selection (WidgetSelectionEvent)
|
|
|
|
// Clear any previous selection and set the given range as the selection
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eSetSelection)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Events of commands for the contents
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eContentCommandCut)
|
|
|
|
NS_EVENT_MESSAGE(eContentCommandCopy)
|
|
|
|
NS_EVENT_MESSAGE(eContentCommandPaste)
|
|
|
|
NS_EVENT_MESSAGE(eContentCommandDelete)
|
|
|
|
NS_EVENT_MESSAGE(eContentCommandUndo)
|
|
|
|
NS_EVENT_MESSAGE(eContentCommandRedo)
|
|
|
|
NS_EVENT_MESSAGE(eContentCommandPasteTransferable)
|
2016-05-02 05:41:20 +03:00
|
|
|
NS_EVENT_MESSAGE(eContentCommandLookUpDictionary)
|
2015-09-10 19:59:53 +03:00
|
|
|
// eContentCommandScroll scrolls the nearest scrollable element to the
|
2015-08-22 04:34:51 +03:00
|
|
|
// currently focused content or latest DOM selection. This would normally be
|
|
|
|
// the same element scrolled by keyboard scroll commands, except that this event
|
|
|
|
// will scroll an element scrollable in either direction. I.e., if the nearest
|
|
|
|
// scrollable ancestor element can only be scrolled vertically, and horizontal
|
|
|
|
// scrolling is requested using this event, no scrolling will occur.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eContentCommandScroll)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Event to gesture notification
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eGestureNotify)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eScrolledAreaChanged)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2016-01-31 11:01:17 +03:00
|
|
|
// CSS Transition & Animation events:
|
2016-10-19 09:16:51 +03:00
|
|
|
NS_EVENT_MESSAGE(eTransitionStart)
|
|
|
|
NS_EVENT_MESSAGE(eTransitionRun)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eTransitionEnd)
|
2016-12-20 10:03:28 +03:00
|
|
|
NS_EVENT_MESSAGE(eTransitionCancel)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eAnimationStart)
|
|
|
|
NS_EVENT_MESSAGE(eAnimationEnd)
|
|
|
|
NS_EVENT_MESSAGE(eAnimationIteration)
|
2017-02-10 06:32:43 +03:00
|
|
|
NS_EVENT_MESSAGE(eAnimationCancel)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2016-01-31 11:01:17 +03:00
|
|
|
// Webkit-prefixed versions of Transition & Animation events, for web compat:
|
|
|
|
NS_EVENT_MESSAGE(eWebkitTransitionEnd)
|
|
|
|
NS_EVENT_MESSAGE(eWebkitAnimationStart)
|
|
|
|
NS_EVENT_MESSAGE(eWebkitAnimationEnd)
|
|
|
|
NS_EVENT_MESSAGE(eWebkitAnimationIteration)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eSMILBeginEvent)
|
|
|
|
NS_EVENT_MESSAGE(eSMILEndEvent)
|
|
|
|
NS_EVENT_MESSAGE(eSMILRepeatEvent)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eAudioProcess)
|
|
|
|
NS_EVENT_MESSAGE(eAudioComplete)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// script notification events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eBeforeScriptExecute)
|
|
|
|
NS_EVENT_MESSAGE(eAfterScriptExecute)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eBeforePrint)
|
|
|
|
NS_EVENT_MESSAGE(eAfterPrint)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eMessage)
|
2017-09-13 06:59:06 +03:00
|
|
|
NS_EVENT_MESSAGE(eMessageError)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
// Menu open event
|
|
|
|
NS_EVENT_MESSAGE(eOpen)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Device motion and orientation
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eDeviceOrientation)
|
2015-12-18 01:14:51 +03:00
|
|
|
NS_EVENT_MESSAGE(eAbsoluteDeviceOrientation)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eDeviceMotion)
|
|
|
|
NS_EVENT_MESSAGE(eDeviceLight)
|
2017-07-24 03:08:55 +03:00
|
|
|
#if defined(MOZ_WIDGET_ANDROID)
|
2015-10-24 07:37:28 +03:00
|
|
|
NS_EVENT_MESSAGE(eOrientationChange)
|
|
|
|
#endif
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2016-07-05 01:46:49 +03:00
|
|
|
// WebVR events
|
2016-10-19 01:18:10 +03:00
|
|
|
NS_EVENT_MESSAGE(eVRDisplayActivate)
|
|
|
|
NS_EVENT_MESSAGE(eVRDisplayDeactivate)
|
2016-07-05 01:46:49 +03:00
|
|
|
NS_EVENT_MESSAGE(eVRDisplayConnect)
|
|
|
|
NS_EVENT_MESSAGE(eVRDisplayDisconnect)
|
|
|
|
NS_EVENT_MESSAGE(eVRDisplayPresentChange)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eShow)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Fullscreen DOM API
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eFullscreenChange)
|
|
|
|
NS_EVENT_MESSAGE(eFullscreenError)
|
2016-02-17 03:47:11 +03:00
|
|
|
NS_EVENT_MESSAGE(eMozFullscreenChange)
|
|
|
|
NS_EVENT_MESSAGE(eMozFullscreenError)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eTouchStart)
|
|
|
|
NS_EVENT_MESSAGE(eTouchMove)
|
|
|
|
NS_EVENT_MESSAGE(eTouchEnd)
|
|
|
|
NS_EVENT_MESSAGE(eTouchCancel)
|
2017-02-16 10:05:09 +03:00
|
|
|
NS_EVENT_MESSAGE(eTouchPointerCancel)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Pointerlock DOM API
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(ePointerLockChange)
|
|
|
|
NS_EVENT_MESSAGE(ePointerLockError)
|
2016-07-28 10:15:21 +03:00
|
|
|
NS_EVENT_MESSAGE(eMozPointerLockChange)
|
|
|
|
NS_EVENT_MESSAGE(eMozPointerLockError)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
2015-09-10 19:59:54 +03:00
|
|
|
// eWheel is the event message of DOM wheel event.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eWheel)
|
2015-09-10 19:59:55 +03:00
|
|
|
// eWheelOperationStart may be dispatched when user starts to operate mouse
|
|
|
|
// wheel. This won't be fired on some platforms which don't have corresponding
|
|
|
|
// native event.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eWheelOperationStart)
|
2015-09-10 19:59:55 +03:00
|
|
|
// eWheelOperationEnd may be dispatched when user ends or cancels operating
|
|
|
|
// mouse wheel. This won't be fired on some platforms which don't have
|
|
|
|
// corresponding native event.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eWheelOperationEnd)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// System time is changed
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eTimeChange)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Network packet events.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eNetworkUpload)
|
|
|
|
NS_EVENT_MESSAGE(eNetworkDownload)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// MediaRecorder events.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eMediaRecorderDataAvailable)
|
|
|
|
NS_EVENT_MESSAGE(eMediaRecorderWarning)
|
|
|
|
NS_EVENT_MESSAGE(eMediaRecorderStop)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// Gamepad input events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eGamepadButtonDown)
|
|
|
|
NS_EVENT_MESSAGE(eGamepadButtonUp)
|
|
|
|
NS_EVENT_MESSAGE(eGamepadAxisMove)
|
|
|
|
NS_EVENT_MESSAGE(eGamepadConnected)
|
|
|
|
NS_EVENT_MESSAGE(eGamepadDisconnected)
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE_FIRST_LAST(eGamepadEvent, eGamepadButtonDown,
|
|
|
|
eGamepadDisconnected)
|
2015-08-22 04:34:51 +03:00
|
|
|
|
|
|
|
// input and beforeinput events.
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eEditorInput)
|
2020-01-14 10:15:45 +03:00
|
|
|
NS_EVENT_MESSAGE(eEditorBeforeInput)
|
2015-08-12 20:26:01 +03:00
|
|
|
|
|
|
|
// selection events
|
2015-09-17 06:05:44 +03:00
|
|
|
NS_EVENT_MESSAGE(eSelectStart)
|
|
|
|
NS_EVENT_MESSAGE(eSelectionChange)
|
2015-09-17 06:05:44 +03:00
|
|
|
|
2017-07-26 23:22:42 +03:00
|
|
|
// visibility change
|
|
|
|
NS_EVENT_MESSAGE(eVisibilityChange)
|
|
|
|
|
2016-03-12 14:53:51 +03:00
|
|
|
// Details element events.
|
|
|
|
NS_EVENT_MESSAGE(eToggle)
|
|
|
|
|
2016-12-23 18:01:50 +03:00
|
|
|
// Dialog element events.
|
|
|
|
NS_EVENT_MESSAGE(eClose)
|
|
|
|
|
2018-11-08 17:46:45 +03:00
|
|
|
// Marquee element events.
|
|
|
|
NS_EVENT_MESSAGE(eMarqueeBounce)
|
|
|
|
NS_EVENT_MESSAGE(eMarqueeStart)
|
|
|
|
NS_EVENT_MESSAGE(eMarqueeFinish)
|
|
|
|
|
2015-09-17 06:05:44 +03:00
|
|
|
#ifdef UNDEF_NS_EVENT_MESSAGE_FIRST_LAST
|
|
|
|
# undef UNDEF_NS_EVENT_MESSAGE_FIRST_LAST
|
|
|
|
# undef NS_EVENT_MESSAGE_FIRST_LAST
|
|
|
|
#endif
|