tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

EventNameList.h (27298B)


      1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
      3 /* This Source Code Form is subject to the terms of the Mozilla Public
      4 * License, v. 2.0. If a copy of the MPL was not distributed with this
      5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      6 
      7 /*
      8 * This file contains the list of event names that are exposed via IDL
      9 * on various objects.  It is designed to be used as inline input to
     10 * various consumers through the magic of C preprocessing.
     11 *
     12 * Each entry consists of 4 pieces of information:
     13 * 1) The name of the event
     14 * 2) The event message
     15 * 3) The event type (see the EventNameType enum in nsContentUtils.h)
     16 * 4) The event struct type for this event.
     17 * Items 2-4 might be empty strings for events for which they don't make sense.
     18 *
     19 * Event names that are exposed as content attributes on HTML elements
     20 * and as IDL attributes on Elements, Documents and Windows and have
     21 * no forwarding behavior should be enclosed in the EVENT macro.
     22 *
     23 * Event names that are exposed as content attributes on HTML elements
     24 * and as IDL attributes on Elements, Documents and Windows and are
     25 * forwarded from <body> and <frameset> to the Window should be
     26 * enclosed in the FORWARDED_EVENT macro.  If this macro is not
     27 * defined, it will be defined to be equivalent to EVENT.
     28 *
     29 * Event names that are exposed as IDL attributes on Windows only
     30 * should be enclosed in the WINDOW_ONLY_EVENT macro.  If this macro
     31 * is not defined, it will be defined to the empty string.
     32 *
     33 * Event names that are exposed as content and IDL attributes on
     34 * <body> and <frameset>, which forward them to the Window, and are
     35 * exposed as IDL attributes on the Window should be enclosed in the
     36 * WINDOW_EVENT macro.  If this macro is not defined, it will be
     37 * defined to be equivalent to WINDOW_ONLY_EVENT.
     38 *
     39 * Touch-specific event names should be enclosed in TOUCH_EVENT.  They
     40 * are otherwise equivalent to those enclosed in EVENT.  If
     41 * TOUCH_EVENT is not defined, it will be defined to the empty string.
     42 *
     43 * Event names that are only exposed as IDL attributes on Documents
     44 * should be enclosed in the DOCUMENT_ONLY_EVENT macro.  If this macro is
     45 * not defined, it will be defined to the empty string.
     46 *
     47 * Event names that are not exposed as IDL attributes at all should be
     48 * enclosed in NON_IDL_EVENT.  If NON_IDL_EVENT is not defined, it
     49 * will be defined to the empty string.
     50 *
     51 * If you change which macros event names are enclosed in, please
     52 * update the tests for bug 689564 and bug 659350 as needed.
     53 */
     54 
     55 #ifdef MESSAGE_TO_EVENT
     56 #  ifdef EVENT
     57 #    error "Don't define EVENT"
     58 #  endif /* EVENT */
     59 #  ifdef WINDOW_ONLY_EVENT
     60 #    error "Don't define WINDOW_ONLY_EVENT"
     61 #  endif /* WINDOW_ONLY_EVENT */
     62 #  ifdef TOUCH_EVENT
     63 #    error "Don't define TOUCH_EVENT"
     64 #  endif /* TOUCH_EVENT */
     65 #  ifdef DOCUMENT_ONLY_EVENT
     66 #    error "Don't define DOCUMENT_ONLY_EVENT"
     67 #  endif /* DOCUMENT_ONLY_EVENT */
     68 #  ifdef NON_IDL_EVENT
     69 #    error "Don't define NON_IDL_EVENT"
     70 #  endif /* NON_IDL_EVENT */
     71 
     72 #  define EVENT MESSAGE_TO_EVENT
     73 #  define WINDOW_ONLY_EVENT MESSAGE_TO_EVENT
     74 #  define TOUCH_EVENT MESSAGE_TO_EVENT
     75 #  define DOCUMENT_ONLY_EVENT MESSAGE_TO_EVENT
     76 #  define NON_IDL_EVENT MESSAGE_TO_EVENT
     77 #endif /* MESSAGE_TO_EVENT */
     78 
     79 #ifdef DEFINED_FORWARDED_EVENT
     80 #  error "Don't define DEFINED_FORWARDED_EVENT"
     81 #endif /* DEFINED_FORWARDED_EVENT */
     82 
     83 #ifndef FORWARDED_EVENT
     84 #  define FORWARDED_EVENT EVENT
     85 #  define DEFINED_FORWARDED_EVENT
     86 #endif /* FORWARDED_EVENT */
     87 
     88 #ifdef DEFINED_WINDOW_ONLY_EVENT
     89 #  error "Don't define DEFINED_WINDOW_ONLY_EVENT"
     90 #endif /* DEFINED_WINDOW_ONLY_EVENT */
     91 
     92 #ifndef WINDOW_ONLY_EVENT
     93 #  define WINDOW_ONLY_EVENT(_name, _message, _type, _struct)
     94 #  define DEFINED_WINDOW_ONLY_EVENT
     95 #endif /* WINDOW_ONLY_EVENT */
     96 
     97 #ifdef DEFINED_WINDOW_EVENT
     98 #  error "Don't define DEFINED_WINDOW_EVENT"
     99 #endif /* DEFINED_WINDOW_EVENT */
    100 
    101 #ifndef WINDOW_EVENT
    102 #  define WINDOW_EVENT WINDOW_ONLY_EVENT
    103 #  define DEFINED_WINDOW_EVENT
    104 #endif /* WINDOW_EVENT */
    105 
    106 #ifdef DEFINED_TOUCH_EVENT
    107 #  error "Don't define DEFINED_TOUCH_EVENT"
    108 #endif /* DEFINED_TOUCH_EVENT */
    109 
    110 #ifndef TOUCH_EVENT
    111 #  define TOUCH_EVENT(_name, _message, _type, _struct)
    112 #  define DEFINED_TOUCH_EVENT
    113 #endif /* TOUCH_EVENT */
    114 
    115 #ifdef DEFINED_DOCUMENT_ONLY_EVENT
    116 #  error "Don't define DEFINED_DOCUMENT_ONLY_EVENT"
    117 #endif /* DEFINED_DOCUMENT_ONLY_EVENT */
    118 
    119 #ifndef DOCUMENT_ONLY_EVENT
    120 #  define DOCUMENT_ONLY_EVENT(_name, _message, _type, _struct)
    121 #  define DEFINED_DOCUMENT_ONLY_EVENT
    122 #endif /* DOCUMENT_ONLY_EVENT */
    123 
    124 #ifdef DEFINED_NON_IDL_EVENT
    125 #  error "Don't define DEFINED_NON_IDL_EVENT"
    126 #endif /* DEFINED_NON_IDL_EVENT */
    127 
    128 #ifndef NON_IDL_EVENT
    129 #  define NON_IDL_EVENT(_name, _message, _type, _struct)
    130 #  define DEFINED_NON_IDL_EVENT
    131 #endif /* NON_IDL_EVENT */
    132 
    133 #ifdef DEFINED_ERROR_EVENT
    134 #  error "Don't define DEFINED_ERROR_EVENT"
    135 #endif /* DEFINED_ERROR_EVENT */
    136 
    137 #ifndef ERROR_EVENT
    138 #  define ERROR_EVENT FORWARDED_EVENT
    139 #  define DEFINED_ERROR_EVENT
    140 #endif /* ERROR_EVENT */
    141 
    142 #ifdef DEFINED_BEFOREUNLOAD_EVENT
    143 #  error "Don't define DEFINED_BEFOREUNLOAD_EVENT"
    144 #endif /* DEFINED_BEFOREUNLOAD_EVENT */
    145 
    146 #ifndef BEFOREUNLOAD_EVENT
    147 #  define BEFOREUNLOAD_EVENT WINDOW_EVENT
    148 #  define DEFINED_BEFOREUNLOAD_EVENT
    149 #endif /* BEFOREUNLOAD_EVENT */
    150 
    151 EVENT(abort, eImageAbort, EventNameType_All, eBasicEventClass)
    152 EVENT(beforetoggle, eBeforeToggle, EventNameType_HTMLXUL, eBasicEventClass)
    153 // https://html.spec.whatwg.org/#event-beforematch
    154 EVENT(beforematch, eBeforematch, EventNameType_All, eBasicEventClass)
    155 EVENT(cancel, eCancel, EventNameType_HTMLXUL, eBasicEventClass)
    156 EVENT(canplay, eCanPlay, EventNameType_HTML, eBasicEventClass)
    157 EVENT(canplaythrough, eCanPlayThrough, EventNameType_HTML, eBasicEventClass)
    158 EVENT(change, eFormChange, EventNameType_HTMLXUL, eBasicEventClass)
    159 EVENT(CheckboxStateChange, eFormCheckboxStateChange, EventNameType_None,
    160      eBasicEventClass)
    161 EVENT(RadioStateChange, eFormRadioStateChange, EventNameType_None,
    162      eBasicEventClass)
    163 EVENT(auxclick, ePointerAuxClick, EventNameType_All, ePointerEventClass)
    164 EVENT(click, ePointerClick, EventNameType_All, ePointerEventClass)
    165 EVENT(close, eClose, EventNameType_HTMLXUL, eBasicEventClass)
    166 EVENT(contentvisibilityautostatechange, eContentVisibilityAutoStateChange,
    167      EventNameType_All, eBasicEventClass)
    168 EVENT(contextmenu, eContextMenu,
    169      EventNameType_HTMLXUL | EventNameType_SVGGraphic, ePointerEventClass)
    170 EVENT(command, eCommand, EventNameType_HTMLXUL, eBasicEventClass)
    171 NON_IDL_EVENT(mouselongtap, eMouseLongTap, EventNameType_HTMLXUL,
    172              eMouseEventClass)
    173 EVENT(cuechange, eCueChange, EventNameType_All, eBasicEventClass)
    174 EVENT(dblclick, eMouseDoubleClick, EventNameType_HTMLXUL, eMouseEventClass)
    175 EVENT(drag, eDrag, EventNameType_HTMLXUL, eDragEventClass)
    176 EVENT(dragend, eDragEnd, EventNameType_HTMLXUL, eDragEventClass)
    177 EVENT(dragenter, eDragEnter, EventNameType_HTMLXUL, eDragEventClass)
    178 EVENT(dragexit, eDragExit, EventNameType_HTMLXUL, eDragEventClass)
    179 EVENT(dragleave, eDragLeave, EventNameType_HTMLXUL, eDragEventClass)
    180 EVENT(dragover, eDragOver, EventNameType_HTMLXUL, eDragEventClass)
    181 EVENT(dragstart, eDragStart, EventNameType_HTMLXUL, eDragEventClass)
    182 EVENT(drop, eDrop, EventNameType_HTMLXUL, eDragEventClass)
    183 EVENT(durationchange, eDurationChange, EventNameType_HTML, eBasicEventClass)
    184 EVENT(emptied, eEmptied, EventNameType_HTML, eBasicEventClass)
    185 EVENT(encrypted, eEncrypted, EventNameType_HTMLMedia, eBasicEventClass)
    186 EVENT(ended, eEnded, EventNameType_HTML, eBasicEventClass)
    187 EVENT(formdata, eFormData, EventNameType_HTML, eBasicEventClass)
    188 EVENT(fullscreenchange, eFullscreenChange, EventNameType_HTML, eBasicEventClass)
    189 EVENT(fullscreenerror, eFullscreenError, EventNameType_HTML, eBasicEventClass)
    190 EVENT(beforeinput, eEditorBeforeInput, EventNameType_HTMLXUL,
    191      eEditorInputEventClass)
    192 EVENT(input, eEditorInput, EventNameType_HTMLXUL, eEditorInputEventClass)
    193 EVENT(invalid, eFormInvalid, EventNameType_HTMLXUL, eBasicEventClass)
    194 EVENT(keydown, eKeyDown, EventNameType_HTMLXUL, eKeyboardEventClass)
    195 EVENT(keypress, eKeyPress, EventNameType_HTMLXUL, eKeyboardEventClass)
    196 EVENT(keyup, eKeyUp, EventNameType_HTMLXUL, eKeyboardEventClass)
    197 NON_IDL_EVENT(mozaccesskeynotfound, eAccessKeyNotFound, EventNameType_None,
    198              eKeyboardEventClass)
    199 EVENT(loadeddata, eLoadedData, EventNameType_HTML, eBasicEventClass)
    200 EVENT(loadedmetadata, eLoadedMetaData, EventNameType_HTML, eBasicEventClass)
    201 EVENT(loadend, eLoadEnd, EventNameType_HTML, eBasicEventClass)
    202 EVENT(loadstart, eLoadStart, EventNameType_HTML, eBasicEventClass)
    203 EVENT(mousedown, eMouseDown, EventNameType_All, eMouseEventClass)
    204 EVENT(mouseenter, eMouseEnter, EventNameType_All, eMouseEventClass)
    205 EVENT(mouseleave, eMouseLeave, EventNameType_All, eMouseEventClass)
    206 EVENT(mousemove, eMouseMove, EventNameType_All, eMouseEventClass)
    207 EVENT(mouseout, eMouseOut, EventNameType_All, eMouseEventClass)
    208 EVENT(mouseover, eMouseOver, EventNameType_All, eMouseEventClass)
    209 EVENT(mouseup, eMouseUp, EventNameType_All, eMouseEventClass)
    210 EVENT(mozfullscreenchange, eMozFullscreenChange, EventNameType_HTML,
    211      eBasicEventClass)
    212 EVENT(mozfullscreenerror, eMozFullscreenError, EventNameType_HTML,
    213      eBasicEventClass)
    214 EVENT(mozpointerlockchange, eMozPointerLockChange, EventNameType_HTML,
    215      eBasicEventClass)
    216 EVENT(mozpointerlockerror, eMozPointerLockError, EventNameType_HTML,
    217      eBasicEventClass)
    218 EVENT(pointerlockchange, ePointerLockChange, EventNameType_HTML,
    219      eBasicEventClass)
    220 EVENT(pointerlockerror, ePointerLockError, EventNameType_HTML, eBasicEventClass)
    221 EVENT(pointerdown, ePointerDown, EventNameType_All, ePointerEventClass)
    222 EVENT(pointermove, ePointerMove, EventNameType_All, ePointerEventClass)
    223 EVENT(pointerup, ePointerUp, EventNameType_All, ePointerEventClass)
    224 EVENT(pointercancel, ePointerCancel, EventNameType_All, ePointerEventClass)
    225 EVENT(pointerover, ePointerOver, EventNameType_All, ePointerEventClass)
    226 EVENT(pointerout, ePointerOut, EventNameType_All, ePointerEventClass)
    227 EVENT(pointerenter, ePointerEnter, EventNameType_All, ePointerEventClass)
    228 EVENT(pointerleave, ePointerLeave, EventNameType_All, ePointerEventClass)
    229 EVENT(pointerrawupdate, ePointerRawUpdate, EventNameType_All,
    230      ePointerEventClass)
    231 EVENT(gotpointercapture, ePointerGotCapture, EventNameType_All,
    232      ePointerEventClass)
    233 EVENT(lostpointercapture, ePointerLostCapture, EventNameType_All,
    234      ePointerEventClass)
    235 EVENT(selectstart, eSelectStart, EventNameType_HTMLXUL, eBasicEventClass)
    236 NON_IDL_EVENT(textInput, eLegacyTextInput, EventNameType_None,
    237              eLegacyTextEventClass)
    238 
    239 EVENT(contextlost, eContextLost, EventNameType_HTML, eBasicEventClass)
    240 EVENT(contextrestored, eContextRestored, EventNameType_HTML, eBasicEventClass)
    241 
    242 // Not supported yet; probably never because "wheel" is a better idea.
    243 // EVENT(mousewheel)
    244 EVENT(pause, ePause, EventNameType_HTML, eBasicEventClass)
    245 EVENT(play, ePlay, EventNameType_HTML, eBasicEventClass)
    246 EVENT(playing, ePlaying, EventNameType_HTML, eBasicEventClass)
    247 EVENT(progress, eProgress, EventNameType_HTML, eBasicEventClass)
    248 EVENT(ratechange, eRateChange, EventNameType_HTML, eBasicEventClass)
    249 EVENT(reset, eFormReset, EventNameType_HTMLXUL, eBasicEventClass)
    250 EVENT(securitypolicyviolation, eSecurityPolicyViolation, EventNameType_All,
    251      eBasicEventClass)
    252 EVENT(seeked, eSeeked, EventNameType_HTML, eBasicEventClass)
    253 EVENT(seeking, eSeeking, EventNameType_HTML, eBasicEventClass)
    254 EVENT(select, eFormSelect, EventNameType_HTMLXUL, eBasicEventClass)
    255 EVENT(slotchange, eSlotChange, EventNameType_All, eBasicEventClass)
    256 EVENT(stalled, eStalled, EventNameType_HTML, eBasicEventClass)
    257 EVENT(submit, eFormSubmit, EventNameType_HTMLXUL, eBasicEventClass)
    258 EVENT(suspend, eSuspend, EventNameType_HTML, eBasicEventClass)
    259 EVENT(timeupdate, eTimeUpdate, EventNameType_HTML, eBasicEventClass)
    260 EVENT(toggle, eToggle, EventNameType_HTML, eBasicEventClass)
    261 EVENT(volumechange, eVolumeChange, EventNameType_HTML, eBasicEventClass)
    262 EVENT(waiting, eWaiting, EventNameType_HTML, eBasicEventClass)
    263 EVENT(waitingforkey, eWaitingForKey, EventNameType_HTMLMedia, eBasicEventClass)
    264 EVENT(wheel, eWheel, EventNameType_All, eWheelEventClass)
    265 EVENT(copy, eCopy, EventNameType_HTMLXUL | EventNameType_SVGGraphic,
    266      eClipboardEventClass)
    267 EVENT(cut, eCut, EventNameType_HTMLXUL | EventNameType_SVGGraphic,
    268      eClipboardEventClass)
    269 EVENT(paste, ePaste, EventNameType_HTMLXUL | EventNameType_SVGGraphic,
    270      eClipboardEventClass)
    271 
    272 FORWARDED_EVENT(blur, eBlur, EventNameType_HTMLXUL, eFocusEventClass)
    273 ERROR_EVENT(error, eLoadError, EventNameType_All, eBasicEventClass)
    274 FORWARDED_EVENT(focus, eFocus, EventNameType_HTMLXUL, eFocusEventClass)
    275 FORWARDED_EVENT(focusin, eFocusIn, EventNameType_HTMLXUL, eFocusEventClass)
    276 FORWARDED_EVENT(focusout, eFocusOut, EventNameType_HTMLXUL, eFocusEventClass)
    277 FORWARDED_EVENT(load, eLoad, EventNameType_All, eBasicEventClass)
    278 FORWARDED_EVENT(resize, eResize, EventNameType_All, eBasicEventClass)
    279 FORWARDED_EVENT(scroll, eScroll, (EventNameType_HTMLXUL | EventNameType_SVGSVG),
    280                eBasicEventClass)
    281 NON_IDL_EVENT(mozvisualresize, eMozVisualResize, EventNameType_None,
    282              eBasicEventClass)
    283 NON_IDL_EVENT(mozvisualscroll, eMozVisualScroll, EventNameType_None,
    284              eBasicEventClass)
    285 
    286 WINDOW_EVENT(afterprint, eAfterPrint,
    287             EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    288             eBasicEventClass)
    289 WINDOW_EVENT(beforeprint, eBeforePrint,
    290             EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    291             eBasicEventClass)
    292 BEFOREUNLOAD_EVENT(beforeunload, eBeforeUnload,
    293                   EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    294                   eBasicEventClass)
    295 WINDOW_EVENT(hashchange, eHashChange,
    296             EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    297             eBasicEventClass)
    298 WINDOW_EVENT(languagechange, eLanguageChange,
    299             EventNameType_HTMLBodyOrFramesetOnly, eBasicEventClass)
    300 WINDOW_EVENT(message, eMessage, EventNameType_HTMLBodyOrFramesetOnly,
    301             eBasicEventClass)
    302 WINDOW_EVENT(rtctransform, eRTCTransform, EventNameType_None, eBasicEventClass)
    303 WINDOW_EVENT(messageerror, eMessageError, EventNameType_HTMLBodyOrFramesetOnly,
    304             eBasicEventClass)
    305 WINDOW_EVENT(offline, eOffline,
    306             EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    307             eBasicEventClass)
    308 WINDOW_EVENT(online, eOnline,
    309             EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    310             eBasicEventClass)
    311 #if defined(MOZ_WIDGET_ANDROID)
    312 WINDOW_EVENT(orientationchange, eOrientationChange,
    313             EventNameType_HTMLBodyOrFramesetOnly, eBasicEventClass)
    314 #endif
    315 WINDOW_EVENT(pagehide, ePageHide, EventNameType_HTMLBodyOrFramesetOnly,
    316             eBasicEventClass)
    317 WINDOW_EVENT(pageshow, ePageShow, EventNameType_HTMLBodyOrFramesetOnly,
    318             eBasicEventClass)
    319 WINDOW_EVENT(popstate, ePopState,
    320             EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
    321             eBasicEventClass)
    322 WINDOW_EVENT(rejectionhandled, eRejectionHandled,
    323             EventNameType_HTMLBodyOrFramesetOnly, eBasicEventClass)
    324 WINDOW_EVENT(storage, eStorage, EventNameType_HTMLBodyOrFramesetOnly,
    325             eBasicEventClass)
    326 WINDOW_EVENT(unhandledrejection, eUnhandledRejection,
    327             EventNameType_HTMLBodyOrFramesetOnly, eBasicEventClass)
    328 WINDOW_EVENT(unload, eUnload,
    329             (EventNameType_XUL | EventNameType_SVGSVG |
    330              EventNameType_HTMLBodyOrFramesetOnly),
    331             eBasicEventClass)
    332 
    333 WINDOW_ONLY_EVENT(devicemotion, eDeviceMotion, EventNameType_None,
    334                  eBasicEventClass)
    335 WINDOW_ONLY_EVENT(deviceorientation, eDeviceOrientation, EventNameType_None,
    336                  eBasicEventClass)
    337 WINDOW_ONLY_EVENT(deviceorientationabsolute, eDeviceOrientationAbsolute,
    338                  EventNameType_None, eBasicEventClass)
    339 WINDOW_ONLY_EVENT(userproximity, eUserProximity, EventNameType_None,
    340                  eBasicEventClass)
    341 WINDOW_ONLY_EVENT(devicelight, eDeviceLight, EventNameType_None,
    342                  eBasicEventClass)
    343 WINDOW_ONLY_EVENT(vrdisplayactivate, eVRDisplayActivate, EventNameType_None,
    344                  eBasicEventClass)
    345 WINDOW_ONLY_EVENT(vrdisplaydeactivate, eVRDisplayDeactivate, EventNameType_None,
    346                  eBasicEventClass)
    347 WINDOW_ONLY_EVENT(vrdisplayconnect, eVRDisplayConnect, EventNameType_None,
    348                  eBasicEventClass)
    349 WINDOW_ONLY_EVENT(vrdisplaydisconnect, eVRDisplayDisconnect, EventNameType_None,
    350                  eBasicEventClass)
    351 WINDOW_ONLY_EVENT(vrdisplaypresentchange, eVRDisplayPresentChange,
    352                  EventNameType_None, eBasicEventClass)
    353 
    354 TOUCH_EVENT(touchstart, eTouchStart, EventNameType_All, eTouchEventClass)
    355 TOUCH_EVENT(touchend, eTouchEnd, EventNameType_All, eTouchEventClass)
    356 TOUCH_EVENT(touchmove, eTouchMove, EventNameType_All, eTouchEventClass)
    357 TOUCH_EVENT(touchcancel, eTouchCancel, EventNameType_All, eTouchEventClass)
    358 
    359 DOCUMENT_ONLY_EVENT(readystatechange, eReadyStateChange, EventNameType_XUL,
    360                    eBasicEventClass)
    361 EVENT(selectionchange, eSelectionChange, EventNameType_HTMLXUL,
    362      eBasicEventClass)
    363 DOCUMENT_ONLY_EVENT(visibilitychange, eVisibilityChange, EventNameType_XUL,
    364                    eBasicEventClass)
    365 
    366 NON_IDL_EVENT(MozMouseHittest, eMouseHitTest, EventNameType_None,
    367              eMouseEventClass)
    368 
    369 NON_IDL_EVENT(MozMouseExploreByTouch, eMouseExploreByTouch, EventNameType_None,
    370              eMouseEventClass)
    371 
    372 NON_IDL_EVENT(DOMActivate, eLegacyDOMActivate, EventNameType_HTMLXUL,
    373              eUIEventClass)
    374 NON_IDL_EVENT(DOMFocusIn, eLegacyDOMFocusIn, EventNameType_HTMLXUL,
    375              eUIEventClass)
    376 NON_IDL_EVENT(DOMFocusOut, eLegacyDOMFocusOut, EventNameType_HTMLXUL,
    377              eUIEventClass)
    378 
    379 NON_IDL_EVENT(DOMMouseScroll, eLegacyMouseLineOrPageScroll,
    380              EventNameType_HTMLXUL, eMouseScrollEventClass)
    381 NON_IDL_EVENT(MozMousePixelScroll, eLegacyMousePixelScroll,
    382              EventNameType_HTMLXUL, eMouseScrollEventClass)
    383 
    384 NON_IDL_EVENT(open, eOpen, EventNameType_None, eBasicEventClass)
    385 
    386 NON_IDL_EVENT(dataavailable, eMediaRecorderDataAvailable, EventNameType_None,
    387              eBasicEventClass)
    388 
    389 NON_IDL_EVENT(stop, eMediaRecorderStop, EventNameType_None, eBasicEventClass)
    390 
    391 NON_IDL_EVENT(warning, eMediaRecorderWarning, EventNameType_None,
    392              eBasicEventClass)
    393 
    394 // Events that only have on* attributes on XUL elements
    395 
    396 // "text" event is legacy event for modifying composition string in EditorBase.
    397 // This shouldn't be used by web/xul apps.  "compositionupdate" should be
    398 // used instead.
    399 NON_IDL_EVENT(text, eCompositionChange, EventNameType_XUL,
    400              eCompositionEventClass)
    401 NON_IDL_EVENT(compositionstart, eCompositionStart, EventNameType_XUL,
    402              eCompositionEventClass)
    403 NON_IDL_EVENT(compositionupdate, eCompositionUpdate, EventNameType_XUL,
    404              eCompositionEventClass)
    405 NON_IDL_EVENT(compositionend, eCompositionEnd, EventNameType_XUL,
    406              eCompositionEventClass)
    407 NON_IDL_EVENT(popupshowing, eXULPopupShowing, EventNameType_XUL,
    408              eBasicEventClass)
    409 NON_IDL_EVENT(popupshown, eXULPopupShown, EventNameType_XUL, eBasicEventClass)
    410 NON_IDL_EVENT(popuphiding, eXULPopupHiding, EventNameType_XUL, eBasicEventClass)
    411 NON_IDL_EVENT(popuphidden, eXULPopupHidden, EventNameType_XUL, eBasicEventClass)
    412 NON_IDL_EVENT(broadcast, eXULBroadcast, EventNameType_XUL, eBasicEventClass)
    413 NON_IDL_EVENT(commandupdate, eXULCommandUpdate, EventNameType_XUL,
    414              eBasicEventClass)
    415 NON_IDL_EVENT(overflow, eScrollPortOverflow, EventNameType_XUL,
    416              eBasicEventClass)
    417 NON_IDL_EVENT(underflow, eScrollPortUnderflow, EventNameType_XUL,
    418              eBasicEventClass)
    419 NON_IDL_EVENT(systemstatusbarclick, eXULSystemStatusBarClick, EventNameType_XUL,
    420              eBasicEventClass)
    421 
    422 // Various SVG events
    423 NON_IDL_EVENT(SVGLoad, eSVGLoad, EventNameType_None, eBasicEventClass)
    424 NON_IDL_EVENT(SVGScroll, eSVGScroll, EventNameType_None, eBasicEventClass)
    425 
    426 // The three SMIL animation events. We mark these as NON_IDL_EVENT even though
    427 // there exist IDL properties for them, because the IDL properties have
    428 // different names (onbegin/onend/onrepeat rather than
    429 // onbeginEvent/onendEvent/onrepeatEvent).
    430 // And we use EventNameType_None because we don't want IsEventAttributeName to
    431 // return true for onbeginEvent etc.
    432 NON_IDL_EVENT(beginEvent, eSMILBeginEvent, EventNameType_None,
    433              eSMILTimeEventClass)
    434 NON_IDL_EVENT(endEvent, eSMILEndEvent, EventNameType_None, eSMILTimeEventClass)
    435 NON_IDL_EVENT(repeatEvent, eSMILRepeatEvent, EventNameType_None,
    436              eSMILTimeEventClass)
    437 
    438 #ifndef MESSAGE_TO_EVENT
    439 // Repeat the SMIL animation events once more without the Event suffix,
    440 // so that IsEventAttributeName() will return the right thing for these events.
    441 // We use eUnidentifiedEvent here so that we don't accidentally treat these
    442 // as alternate event names for the actual events.
    443 // See bug 1845422 for cleaning this up.
    444 NON_IDL_EVENT(begin, eUnidentifiedEvent, EventNameType_SMIL,
    445              eSMILTimeEventClass)
    446 NON_IDL_EVENT(end, eUnidentifiedEvent, EventNameType_SMIL, eSMILTimeEventClass)
    447 NON_IDL_EVENT(repeat, eUnidentifiedEvent, EventNameType_SMIL,
    448              eSMILTimeEventClass)
    449 #endif
    450 
    451 NON_IDL_EVENT(MozAfterPaint, eAfterPaint, EventNameType_None, eBasicEventClass)
    452 
    453 NON_IDL_EVENT(MozScrolledAreaChanged, eScrolledAreaChanged, EventNameType_None,
    454              eScrollAreaEventClass)
    455 
    456 NON_IDL_EVENT(gamepadbuttondown, eGamepadButtonDown, EventNameType_None,
    457              eBasicEventClass)
    458 NON_IDL_EVENT(gamepadbuttonup, eGamepadButtonUp, EventNameType_None,
    459              eBasicEventClass)
    460 NON_IDL_EVENT(gamepadaxismove, eGamepadAxisMove, EventNameType_None,
    461              eBasicEventClass)
    462 WINDOW_EVENT(gamepadconnected, eGamepadConnected, EventNameType_None,
    463             eBasicEventClass)
    464 WINDOW_EVENT(gamepaddisconnected, eGamepadDisconnected, EventNameType_None,
    465             eBasicEventClass)
    466 
    467 // Simple gesture events
    468 NON_IDL_EVENT(MozSwipeGestureMayStart, eSwipeGestureMayStart,
    469              EventNameType_None, eSimpleGestureEventClass)
    470 NON_IDL_EVENT(MozSwipeGestureStart, eSwipeGestureStart, EventNameType_None,
    471              eSimpleGestureEventClass)
    472 NON_IDL_EVENT(MozSwipeGestureUpdate, eSwipeGestureUpdate, EventNameType_None,
    473              eSimpleGestureEventClass)
    474 NON_IDL_EVENT(MozSwipeGestureEnd, eSwipeGestureEnd, EventNameType_None,
    475              eSimpleGestureEventClass)
    476 NON_IDL_EVENT(MozSwipeGesture, eSwipeGesture, EventNameType_None,
    477              eSimpleGestureEventClass)
    478 NON_IDL_EVENT(MozMagnifyGestureStart, eMagnifyGestureStart, EventNameType_None,
    479              eSimpleGestureEventClass)
    480 NON_IDL_EVENT(MozMagnifyGestureUpdate, eMagnifyGestureUpdate,
    481              EventNameType_None, eSimpleGestureEventClass)
    482 NON_IDL_EVENT(MozMagnifyGesture, eMagnifyGesture, EventNameType_None,
    483              eSimpleGestureEventClass)
    484 NON_IDL_EVENT(MozRotateGestureStart, eRotateGestureStart, EventNameType_None,
    485              eSimpleGestureEventClass)
    486 NON_IDL_EVENT(MozRotateGestureUpdate, eRotateGestureUpdate, EventNameType_None,
    487              eSimpleGestureEventClass)
    488 NON_IDL_EVENT(MozRotateGesture, eRotateGesture, EventNameType_None,
    489              eSimpleGestureEventClass)
    490 NON_IDL_EVENT(MozTapGesture, eTapGesture, EventNameType_None,
    491              eSimpleGestureEventClass)
    492 NON_IDL_EVENT(MozPressTapGesture, ePressTapGesture, EventNameType_None,
    493              eSimpleGestureEventClass)
    494 NON_IDL_EVENT(MozEdgeUIStarted, eEdgeUIStarted, EventNameType_None,
    495              eSimpleGestureEventClass)
    496 NON_IDL_EVENT(MozEdgeUICanceled, eEdgeUICanceled, EventNameType_None,
    497              eSimpleGestureEventClass)
    498 NON_IDL_EVENT(MozEdgeUICompleted, eEdgeUICompleted, EventNameType_None,
    499              eSimpleGestureEventClass)
    500 
    501 // CSS Transition & Animation events:
    502 EVENT(transitionstart, eTransitionStart, EventNameType_All,
    503      eTransitionEventClass)
    504 EVENT(transitionrun, eTransitionRun, EventNameType_All, eTransitionEventClass)
    505 EVENT(transitionend, eTransitionEnd, EventNameType_All, eTransitionEventClass)
    506 EVENT(transitioncancel, eTransitionCancel, EventNameType_All,
    507      eTransitionEventClass)
    508 EVENT(animationstart, eAnimationStart, EventNameType_All, eAnimationEventClass)
    509 EVENT(animationend, eAnimationEnd, EventNameType_All, eAnimationEventClass)
    510 EVENT(animationiteration, eAnimationIteration, EventNameType_All,
    511      eAnimationEventClass)
    512 EVENT(animationcancel, eAnimationCancel, EventNameType_All,
    513      eAnimationEventClass)
    514 
    515 // Webkit-prefixed versions of Transition & Animation events, for web compat:
    516 EVENT(webkitAnimationEnd, eWebkitAnimationEnd, EventNameType_All,
    517      eAnimationEventClass)
    518 EVENT(webkitAnimationIteration, eWebkitAnimationIteration, EventNameType_All,
    519      eAnimationEventClass)
    520 EVENT(webkitAnimationStart, eWebkitAnimationStart, EventNameType_All,
    521      eAnimationEventClass)
    522 EVENT(webkitTransitionEnd, eWebkitTransitionEnd, EventNameType_All,
    523      eTransitionEventClass)
    524 #ifndef MESSAGE_TO_EVENT
    525 // These are only here so that IsEventAttributeName() will return the right
    526 // thing for these events.  We could probably remove them if we used
    527 // Element::GetEventNameForAttr on the input to IsEventAttributeName before
    528 // looking it up in the hashtable... see bug 1845422.
    529 EVENT(webkitanimationend, eUnidentifiedEvent, EventNameType_All,
    530      eAnimationEventClass)
    531 EVENT(webkitanimationiteration, eUnidentifiedEvent, EventNameType_All,
    532      eAnimationEventClass)
    533 EVENT(webkitanimationstart, eUnidentifiedEvent, EventNameType_All,
    534      eAnimationEventClass)
    535 EVENT(webkittransitionend, eUnidentifiedEvent, EventNameType_All,
    536      eTransitionEventClass)
    537 #endif
    538 
    539 NON_IDL_EVENT(audioprocess, eAudioProcess, EventNameType_None, eBasicEventClass)
    540 
    541 NON_IDL_EVENT(complete, eAudioComplete, EventNameType_None, eBasicEventClass)
    542 
    543 EVENT(scrollend, eScrollend, EventNameType_All, eBasicEventClass)
    544 
    545 EVENT(mozorientationchange, eMozOrientationChange, EventNameType_All,
    546      eBasicEventClass)
    547 
    548 #ifdef DEFINED_FORWARDED_EVENT
    549 #  undef DEFINED_FORWARDED_EVENT
    550 #  undef FORWARDED_EVENT
    551 #endif /* DEFINED_FORWARDED_EVENT */
    552 
    553 #ifdef DEFINED_WINDOW_EVENT
    554 #  undef DEFINED_WINDOW_EVENT
    555 #  undef WINDOW_EVENT
    556 #endif /* DEFINED_WINDOW_EVENT */
    557 
    558 #ifdef DEFINED_WINDOW_ONLY_EVENT
    559 #  undef DEFINED_WINDOW_ONLY_EVENT
    560 #  undef WINDOW_ONLY_EVENT
    561 #endif /* DEFINED_WINDOW_ONLY_EVENT */
    562 
    563 #ifdef DEFINED_TOUCH_EVENT
    564 #  undef DEFINED_TOUCH_EVENT
    565 #  undef TOUCH_EVENT
    566 #endif /* DEFINED_TOUCH_EVENT */
    567 
    568 #ifdef DEFINED_DOCUMENT_ONLY_EVENT
    569 #  undef DEFINED_DOCUMENT_ONLY_EVENT
    570 #  undef DOCUMENT_ONLY_EVENT
    571 #endif /* DEFINED_DOCUMENT_ONLY_EVENT */
    572 
    573 #ifdef DEFINED_NON_IDL_EVENT
    574 #  undef DEFINED_NON_IDL_EVENT
    575 #  undef NON_IDL_EVENT
    576 #endif /* DEFINED_NON_IDL_EVENT */
    577 
    578 #ifdef DEFINED_ERROR_EVENT
    579 #  undef DEFINED_ERROR_EVENT
    580 #  undef ERROR_EVENT
    581 #endif /* DEFINED_ERROR_EVENT */
    582 
    583 #ifdef DEFINED_BEFOREUNLOAD_EVENT
    584 #  undef DEFINED_BEFOREUNLOAD_EVENT
    585 #  undef BEFOREUNLOAD_EVENT
    586 #endif /* BEFOREUNLOAD_EVENT */
    587 
    588 #ifdef MESSAGE_TO_EVENT
    589 #  undef EVENT
    590 #  undef WINDOW_ONLY_EVENT
    591 #  undef TOUCH_EVENT
    592 #  undef DOCUMENT_ONLY_EVENT
    593 #  undef NON_IDL_EVENT
    594 #endif /* MESSAGE_TO_EVENT */