2023-11-08 11:04:56 -07:00
#import <DOM/Event.idl>
2022-03-30 23:35:42 +03:00
[LegacyTreatNonObjectAsNull]
callback EventHandlerNonNull = any (Event event);
typedef EventHandlerNonNull? EventHandler;
2022-04-01 22:00:22 +03:00
[LegacyTreatNonObjectAsNull]
callback OnErrorEventHandlerNonNull = any ((Event or DOMString) event, optional DOMString source, optional unsigned long lineno, optional unsigned long colno, optional any error);
typedef OnErrorEventHandlerNonNull? OnErrorEventHandler;
2022-06-27 19:48:54 +01:00
[LegacyTreatNonObjectAsNull]
callback OnBeforeUnloadEventHandlerNonNull = DOMString? (Event event);
typedef OnBeforeUnloadEventHandlerNonNull? OnBeforeUnloadEventHandler;
2023-11-07 19:29:22 -07:00
// https://html.spec.whatwg.org/#globaleventhandlers
2022-04-01 22:00:22 +03:00
interface mixin GlobalEventHandlers {
attribute EventHandler onabort;
attribute EventHandler onauxclick;
2024-12-23 23:45:56 -05:00
attribute EventHandler onbeforeinput;
2025-01-05 20:11:59 +13:00
attribute EventHandler onbeforematch;
2024-12-23 23:45:56 -05:00
attribute EventHandler onbeforetoggle;
2022-04-01 22:00:22 +03:00
attribute EventHandler onblur;
attribute EventHandler oncancel;
attribute EventHandler oncanplay;
attribute EventHandler oncanplaythrough;
attribute EventHandler onchange;
attribute EventHandler onclick;
attribute EventHandler onclose;
2025-01-05 20:11:59 +13:00
attribute EventHandler oncontextlost;
2022-04-01 22:00:22 +03:00
attribute EventHandler oncontextmenu;
2025-01-05 20:11:59 +13:00
attribute EventHandler oncontextrestored;
2024-12-23 23:45:56 -05:00
attribute EventHandler oncopy;
2022-04-01 22:00:22 +03:00
attribute EventHandler oncuechange;
2024-12-23 23:45:56 -05:00
attribute EventHandler oncut;
2022-04-01 22:00:22 +03:00
attribute EventHandler ondblclick;
attribute EventHandler ondrag;
attribute EventHandler ondragend;
attribute EventHandler ondragenter;
attribute EventHandler ondragleave;
attribute EventHandler ondragover;
attribute EventHandler ondragstart;
attribute EventHandler ondrop;
attribute EventHandler ondurationchange;
attribute EventHandler onemptied;
attribute EventHandler onended;
attribute OnErrorEventHandler onerror;
attribute EventHandler onfocus;
2024-02-25 06:51:28 +01:00
attribute EventHandler onfocusin;
attribute EventHandler onfocusout;
2022-04-01 22:00:22 +03:00
attribute EventHandler onformdata;
attribute EventHandler oninput;
attribute EventHandler oninvalid;
attribute EventHandler onkeydown;
attribute EventHandler onkeypress;
attribute EventHandler onkeyup;
attribute EventHandler onload;
attribute EventHandler onloadeddata;
attribute EventHandler onloadedmetadata;
attribute EventHandler onloadstart;
attribute EventHandler onmousedown;
[LegacyLenientThis] attribute EventHandler onmouseenter;
[LegacyLenientThis] attribute EventHandler onmouseleave;
attribute EventHandler onmousemove;
attribute EventHandler onmouseout;
attribute EventHandler onmouseover;
attribute EventHandler onmouseup;
2024-12-23 23:45:56 -05:00
attribute EventHandler onpaste;
2022-04-01 22:00:22 +03:00
attribute EventHandler onpause;
attribute EventHandler onplay;
attribute EventHandler onplaying;
attribute EventHandler onprogress;
attribute EventHandler onratechange;
attribute EventHandler onreset;
attribute EventHandler onresize;
attribute EventHandler onscroll;
2024-12-23 23:45:56 -05:00
attribute EventHandler onscrollend;
2022-04-01 22:00:22 +03:00
attribute EventHandler onsecuritypolicyviolation;
attribute EventHandler onseeked;
attribute EventHandler onseeking;
attribute EventHandler onselect;
2024-02-25 04:20:37 +01:00
attribute EventHandler onselectionchange;
2022-04-01 22:00:22 +03:00
attribute EventHandler onslotchange;
attribute EventHandler onstalled;
attribute EventHandler onsubmit;
attribute EventHandler onsuspend;
attribute EventHandler ontimeupdate;
attribute EventHandler ontoggle;
attribute EventHandler onvolumechange;
attribute EventHandler onwaiting;
attribute EventHandler onwebkitanimationend;
attribute EventHandler onwebkitanimationiteration;
attribute EventHandler onwebkitanimationstart;
attribute EventHandler onwebkittransitionend;
attribute EventHandler onwheel;
2024-11-22 23:58:16 +13:00
// https://w3c.github.io/pointerevents/#extensions-to-the-globaleventhandlers-mixin
attribute EventHandler onpointerover;
attribute EventHandler onpointerenter;
attribute EventHandler onpointerdown;
attribute EventHandler onpointermove;
[SecureContext] attribute EventHandler onpointerrawupdate;
attribute EventHandler onpointerup;
attribute EventHandler onpointercancel;
attribute EventHandler onpointerout;
attribute EventHandler onpointerleave;
attribute EventHandler ongotpointercapture;
attribute EventHandler onlostpointercapture;
2022-04-01 22:00:22 +03:00
};
2022-06-27 19:48:54 +01:00
2023-11-07 19:29:22 -07:00
// https://html.spec.whatwg.org/#windoweventhandlers
2022-06-27 19:48:54 +01:00
interface mixin WindowEventHandlers {
attribute EventHandler onafterprint;
attribute EventHandler onbeforeprint;
attribute OnBeforeUnloadEventHandler onbeforeunload;
attribute EventHandler onhashchange;
attribute EventHandler onlanguagechange;
attribute EventHandler onmessage;
attribute EventHandler onmessageerror;
attribute EventHandler onoffline;
attribute EventHandler ononline;
attribute EventHandler onpagehide;
2024-12-23 23:45:56 -05:00
attribute EventHandler onpagereveal;
2022-06-27 19:48:54 +01:00
attribute EventHandler onpageshow;
2024-12-23 23:45:56 -05:00
attribute EventHandler onpageswap;
2022-06-27 19:48:54 +01:00
attribute EventHandler onpopstate;
attribute EventHandler onrejectionhandled;
attribute EventHandler onstorage;
attribute EventHandler onunhandledrejection;
attribute EventHandler onunload;
};