Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 /* -*- Mode: C++; 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/. */
6 /*
7 * This file contains the list of event names that are exposed via IDL
8 * on various objects. It is designed to be used as inline input to
9 * various consumers through the magic of C preprocessing.
10 *
11 * Each entry consists of 4 pieces of information:
12 * 1) The name of the event
13 * 2) The event ID (see BasicEvents.h)
14 * 3) The event type (see the EventNameType enum in nsContentUtils.h)
15 * 4) The event struct type for this event.
16 * Items 2-4 might be empty strings for events for which they don't make sense.
17 *
18 * Event names that are exposed as content attributes on HTML elements
19 * and as IDL attributes on Elements, Documents and Windows and have
20 * no forwarding behavior should be enclosed in the EVENT macro.
21 *
22 * Event names that are exposed as content attributes on HTML elements
23 * and as IDL attributes on Elements, Documents and Windows and are
24 * forwarded from <body> and <frameset> to the Window should be
25 * enclosed in the FORWARDED_EVENT macro. If this macro is not
26 * defined, it will be defined to be equivalent to EVENT.
27 *
28 * Event names that are exposed as IDL attributes on Windows only
29 * should be enclosed in the WINDOW_ONLY_EVENT macro. If this macro
30 * is not defined, it will be defined to the empty string.
31 *
32 * Event names that are exposed as content and IDL attributes on
33 * <body> and <frameset>, which forward them to the Window, and are
34 * exposed as IDL attributes on the Window should be enclosed in the
35 * WINDOW_EVENT macro. If this macro is not defined, it will be
36 * defined to be equivalent to WINDOW_ONLY_EVENT.
37 *
38 * Touch-specific event names should be enclosed in TOUCH_EVENT. They
39 * are otherwise equivalent to those enclosed in EVENT. If
40 * TOUCH_EVENT is not defined, it will be defined to the empty string.
41 *
42 * Event names that are only exposed as IDL attributes on Documents
43 * should be enclosed in the DOCUMENT_ONLY_EVENT macro. If this macro is
44 * not defined, it will be defined to the empty string.
45 *
46 * Event names that are not exposed as IDL attributes at all should be
47 * enclosed in NON_IDL_EVENT. If NON_IDL_EVENT is not defined, it
48 * will be defined to the empty string.
49 *
50 * If you change which macros event names are enclosed in, please
51 * update the tests for bug 689564 and bug 659350 as needed.
52 */
54 #ifdef ID_TO_EVENT
55 #ifdef EVENT
56 #error "Don't define EVENT"
57 #endif /* EVENT */
58 #ifdef WINDOW_ONLY_EVENT
59 #error "Don't define WINDOW_ONLY_EVENT"
60 #endif /* WINDOW_ONLY_EVENT */
61 #ifdef TOUCH_EVENT
62 #error "Don't define TOUCH_EVENT"
63 #endif /* TOUCH_EVENT */
64 #ifdef DOCUMENT_ONLY_EVENT
65 #error "Don't define DOCUMENT_ONLY_EVENT"
66 #endif /* DOCUMENT_ONLY_EVENT */
67 #ifdef NON_IDL_EVENT
68 #error "Don't define NON_IDL_EVENT"
69 #endif /* NON_IDL_EVENT */
71 #define EVENT ID_TO_EVENT
72 #define WINDOW_ONLY_EVENT ID_TO_EVENT
73 #define TOUCH_EVENT ID_TO_EVENT
74 #define DOCUMENT_ONLY_EVENT ID_TO_EVENT
75 #define NON_IDL_EVENT ID_TO_EVENT
76 #endif
78 #ifdef DEFINED_FORWARDED_EVENT
79 #error "Don't define DEFINED_FORWARDED_EVENT"
80 #endif /* DEFINED_FORWARDED_EVENT */
82 #ifndef FORWARDED_EVENT
83 #define FORWARDED_EVENT EVENT
84 #define DEFINED_FORWARDED_EVENT
85 #endif /* FORWARDED_EVENT */
87 #ifdef DEFINED_WINDOW_ONLY_EVENT
88 #error "Don't define DEFINED_WINDOW_ONLY_EVENT"
89 #endif /* DEFINED_WINDOW_ONLY_EVENT */
91 #ifndef WINDOW_ONLY_EVENT
92 #define WINDOW_ONLY_EVENT(_name, _id, _type, _struct)
93 #define DEFINED_WINDOW_ONLY_EVENT
94 #endif /* WINDOW_ONLY_EVENT */
96 #ifdef DEFINED_WINDOW_EVENT
97 #error "Don't define DEFINED_WINDOW_EVENT"
98 #endif /* DEFINED_WINDOW_EVENT */
100 #ifndef WINDOW_EVENT
101 #define WINDOW_EVENT WINDOW_ONLY_EVENT
102 #define DEFINED_WINDOW_EVENT
103 #endif /* WINDOW_EVENT */
105 #ifdef DEFINED_TOUCH_EVENT
106 #error "Don't define DEFINED_TOUCH_EVENT"
107 #endif /* DEFINED_TOUCH_EVENT */
109 #ifndef TOUCH_EVENT
110 #define TOUCH_EVENT(_name, _id, _type, _struct)
111 #define DEFINED_TOUCH_EVENT
112 #endif /* TOUCH_EVENT */
114 #ifdef DEFINED_DOCUMENT_ONLY_EVENT
115 #error "Don't define DEFINED_DOCUMENT_ONLY_EVENT"
116 #endif /* DEFINED_DOCUMENT_ONLY_EVENT */
118 #ifndef DOCUMENT_ONLY_EVENT
119 #define DOCUMENT_ONLY_EVENT(_name, _id, _type, _struct)
120 #define DEFINED_DOCUMENT_ONLY_EVENT
121 #endif /* DOCUMENT_ONLY_EVENT */
123 #ifdef DEFINED_NON_IDL_EVENT
124 #error "Don't define DEFINED_NON_IDL_EVENT"
125 #endif /* DEFINED_NON_IDL_EVENT */
127 #ifndef NON_IDL_EVENT
128 #define NON_IDL_EVENT(_name, _id, _type, _struct)
129 #define DEFINED_NON_IDL_EVENT
130 #endif /* NON_IDL_EVENT */
132 #ifdef DEFINED_ERROR_EVENT
133 #error "Don't define DEFINED_ERROR_EVENT"
134 #endif /* DEFINED_ERROR_EVENT */
136 #ifndef ERROR_EVENT
137 #define ERROR_EVENT FORWARDED_EVENT
138 #define DEFINED_ERROR_EVENT
139 #endif /* ERROR_EVENT */
141 #ifdef DEFINED_BEFOREUNLOAD_EVENT
142 #error "Don't define DEFINED_BEFOREUNLOAD_EVENT"
143 #endif /* DEFINED_BEFOREUNLOAD_EVENT */
145 #ifndef BEFOREUNLOAD_EVENT
146 #define BEFOREUNLOAD_EVENT WINDOW_EVENT
147 #define DEFINED_BEFOREUNLOAD_EVENT
148 #endif /* BEFOREUNLOAD_EVENT */
150 EVENT(abort,
151 NS_IMAGE_ABORT,
152 EventNameType_All,
153 NS_EVENT)
154 EVENT(canplay,
155 NS_CANPLAY,
156 EventNameType_HTML,
157 NS_EVENT)
158 EVENT(canplaythrough,
159 NS_CANPLAYTHROUGH,
160 EventNameType_HTML,
161 NS_EVENT)
162 EVENT(change,
163 NS_FORM_CHANGE,
164 EventNameType_HTMLXUL,
165 NS_EVENT )
166 EVENT(click,
167 NS_MOUSE_CLICK,
168 EventNameType_All,
169 NS_MOUSE_EVENT)
170 EVENT(contextmenu,
171 NS_CONTEXTMENU,
172 EventNameType_HTMLXUL,
173 NS_MOUSE_EVENT)
174 // Not supported yet
175 // EVENT(cuechange)
176 EVENT(dblclick,
177 NS_MOUSE_DOUBLECLICK,
178 EventNameType_HTMLXUL,
179 NS_MOUSE_EVENT)
180 EVENT(drag,
181 NS_DRAGDROP_DRAG,
182 EventNameType_HTMLXUL,
183 NS_DRAG_EVENT)
184 EVENT(dragend,
185 NS_DRAGDROP_END,
186 EventNameType_HTMLXUL,
187 NS_DRAG_EVENT)
188 EVENT(dragenter,
189 NS_DRAGDROP_ENTER,
190 EventNameType_HTMLXUL,
191 NS_DRAG_EVENT)
192 EVENT(dragleave,
193 NS_DRAGDROP_LEAVE_SYNTH,
194 EventNameType_HTMLXUL,
195 NS_DRAG_EVENT)
196 EVENT(dragover,
197 NS_DRAGDROP_OVER_SYNTH,
198 EventNameType_HTMLXUL,
199 NS_DRAG_EVENT)
200 EVENT(dragstart,
201 NS_DRAGDROP_START,
202 EventNameType_HTMLXUL,
203 NS_DRAG_EVENT)
204 EVENT(drop,
205 NS_DRAGDROP_DROP,
206 EventNameType_HTMLXUL,
207 NS_DRAG_EVENT)
208 EVENT(durationchange,
209 NS_DURATIONCHANGE,
210 EventNameType_HTML,
211 NS_EVENT)
212 EVENT(emptied,
213 NS_EMPTIED,
214 EventNameType_HTML,
215 NS_EVENT)
216 EVENT(ended,
217 NS_ENDED,
218 EventNameType_HTML,
219 NS_EVENT)
220 EVENT(input,
221 NS_EDITOR_INPUT,
222 EventNameType_HTMLXUL,
223 NS_EDITOR_INPUT_EVENT)
224 EVENT(invalid,
225 NS_FORM_INVALID,
226 EventNameType_HTMLXUL,
227 NS_EVENT)
228 EVENT(keydown,
229 NS_KEY_DOWN,
230 EventNameType_HTMLXUL,
231 NS_KEY_EVENT)
232 EVENT(keypress,
233 NS_KEY_PRESS,
234 EventNameType_HTMLXUL,
235 NS_KEY_EVENT)
236 EVENT(keyup,
237 NS_KEY_UP,
238 EventNameType_HTMLXUL,
239 NS_KEY_EVENT)
240 EVENT(loadeddata,
241 NS_LOADEDDATA,
242 EventNameType_HTML,
243 NS_EVENT)
244 EVENT(loadedmetadata,
245 NS_LOADEDMETADATA,
246 EventNameType_HTML,
247 NS_EVENT)
248 EVENT(loadstart,
249 NS_LOADSTART,
250 EventNameType_HTML,
251 NS_EVENT)
252 EVENT(mousedown,
253 NS_MOUSE_BUTTON_DOWN,
254 EventNameType_All,
255 NS_MOUSE_EVENT)
256 EVENT(mouseenter,
257 NS_MOUSEENTER,
258 EventNameType_All,
259 NS_MOUSE_EVENT)
260 EVENT(mouseleave,
261 NS_MOUSELEAVE,
262 EventNameType_All,
263 NS_MOUSE_EVENT)
264 EVENT(mousemove,
265 NS_MOUSE_MOVE,
266 EventNameType_All,
267 NS_MOUSE_EVENT)
268 EVENT(mouseout,
269 NS_MOUSE_EXIT_SYNTH,
270 EventNameType_All,
271 NS_MOUSE_EVENT)
272 EVENT(mouseover,
273 NS_MOUSE_ENTER_SYNTH,
274 EventNameType_All,
275 NS_MOUSE_EVENT)
276 EVENT(mouseup,
277 NS_MOUSE_BUTTON_UP,
278 EventNameType_All,
279 NS_MOUSE_EVENT)
280 EVENT(mozfullscreenchange,
281 NS_FULLSCREENCHANGE,
282 EventNameType_HTML,
283 NS_EVENT)
284 EVENT(mozfullscreenerror,
285 NS_FULLSCREENERROR,
286 EventNameType_HTML,
287 NS_EVENT)
288 EVENT(mozpointerlockchange,
289 NS_POINTERLOCKCHANGE,
290 EventNameType_HTML,
291 NS_EVENT)
292 EVENT(mozpointerlockerror,
293 NS_POINTERLOCKERROR,
294 EventNameType_HTML,
295 NS_EVENT)
297 EVENT(pointerdown,
298 NS_POINTER_DOWN,
299 EventNameType_All,
300 NS_POINTER_EVENT)
301 EVENT(pointermove,
302 NS_POINTER_MOVE,
303 EventNameType_All,
304 NS_POINTER_EVENT)
305 EVENT(pointerup,
306 NS_POINTER_UP,
307 EventNameType_All,
308 NS_POINTER_EVENT)
309 EVENT(pointercancel,
310 NS_POINTER_CANCEL,
311 EventNameType_All,
312 NS_POINTER_EVENT)
313 EVENT(pointerover,
314 NS_POINTER_OVER,
315 EventNameType_All,
316 NS_POINTER_EVENT)
317 EVENT(pointerout,
318 NS_POINTER_OUT,
319 EventNameType_All,
320 NS_POINTER_EVENT)
321 EVENT(pointerenter,
322 NS_POINTER_ENTER,
323 EventNameType_All,
324 NS_POINTER_EVENT)
325 EVENT(pointerleave,
326 NS_POINTER_LEAVE,
327 EventNameType_All,
328 NS_POINTER_EVENT)
329 EVENT(gotpointercapture,
330 NS_POINTER_GOT_CAPTURE,
331 EventNameType_All,
332 NS_POINTER_EVENT)
333 EVENT(lostpointercapture,
334 NS_POINTER_LOST_CAPTURE,
335 EventNameType_All,
336 NS_POINTER_EVENT)
338 // Not supported yet; probably never because "wheel" is a better idea.
339 // EVENT(mousewheel)
340 EVENT(pause,
341 NS_PAUSE,
342 EventNameType_HTML,
343 NS_EVENT)
344 EVENT(play,
345 NS_PLAY,
346 EventNameType_HTML,
347 NS_EVENT)
348 EVENT(playing,
349 NS_PLAYING,
350 EventNameType_HTML,
351 NS_EVENT)
352 EVENT(progress,
353 NS_PROGRESS,
354 EventNameType_HTML,
355 NS_EVENT)
356 EVENT(ratechange,
357 NS_RATECHANGE,
358 EventNameType_HTML,
359 NS_EVENT)
360 EVENT(reset,
361 NS_FORM_RESET,
362 EventNameType_HTMLXUL,
363 NS_EVENT)
364 EVENT(seeked,
365 NS_SEEKED,
366 EventNameType_HTML,
367 NS_EVENT)
368 EVENT(seeking,
369 NS_SEEKING,
370 EventNameType_HTML,
371 NS_EVENT)
372 EVENT(select,
373 NS_FORM_SELECTED,
374 EventNameType_HTMLXUL,
375 NS_EVENT)
376 EVENT(show,
377 NS_SHOW_EVENT,
378 EventNameType_HTML,
379 NS_EVENT)
380 EVENT(stalled,
381 NS_STALLED,
382 EventNameType_HTML,
383 NS_EVENT)
384 EVENT(submit,
385 NS_FORM_SUBMIT,
386 EventNameType_HTMLXUL,
387 NS_EVENT)
388 EVENT(suspend,
389 NS_SUSPEND,
390 EventNameType_HTML,
391 NS_EVENT)
392 EVENT(timeupdate,
393 NS_TIMEUPDATE,
394 EventNameType_HTML,
395 NS_EVENT)
396 EVENT(volumechange,
397 NS_VOLUMECHANGE,
398 EventNameType_HTML,
399 NS_EVENT)
400 EVENT(waiting,
401 NS_WAITING,
402 EventNameType_HTML,
403 NS_EVENT)
404 EVENT(wheel,
405 NS_WHEEL_WHEEL,
406 EventNameType_All,
407 NS_WHEEL_EVENT)
408 EVENT(copy,
409 NS_COPY,
410 EventNameType_HTMLXUL,
411 NS_CLIPBOARD_EVENT)
412 EVENT(cut,
413 NS_CUT,
414 EventNameType_HTMLXUL,
415 NS_CLIPBOARD_EVENT)
416 EVENT(paste,
417 NS_PASTE,
418 EventNameType_HTMLXUL,
419 NS_CLIPBOARD_EVENT)
420 // Gecko-specific extensions that apply to elements
421 EVENT(beforescriptexecute,
422 NS_BEFORE_SCRIPT_EXECUTE,
423 EventNameType_HTMLXUL,
424 NS_EVENT)
425 EVENT(afterscriptexecute,
426 NS_AFTER_SCRIPT_EXECUTE,
427 EventNameType_HTMLXUL,
428 NS_EVENT)
430 FORWARDED_EVENT(blur,
431 NS_BLUR_CONTENT,
432 EventNameType_HTMLXUL,
433 NS_FOCUS_EVENT)
434 ERROR_EVENT(error,
435 NS_LOAD_ERROR,
436 EventNameType_All,
437 NS_EVENT)
438 FORWARDED_EVENT(focus,
439 NS_FOCUS_CONTENT,
440 EventNameType_HTMLXUL,
441 NS_FOCUS_EVENT)
442 FORWARDED_EVENT(load,
443 NS_LOAD,
444 EventNameType_All,
445 NS_EVENT)
446 FORWARDED_EVENT(scroll,
447 NS_SCROLL_EVENT,
448 (EventNameType_HTMLXUL | EventNameType_SVGSVG),
449 NS_EVENT)
451 WINDOW_EVENT(afterprint,
452 NS_AFTERPRINT,
453 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
454 NS_EVENT)
455 WINDOW_EVENT(beforeprint,
456 NS_BEFOREPRINT,
457 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
458 NS_EVENT)
459 BEFOREUNLOAD_EVENT(beforeunload,
460 NS_BEFORE_PAGE_UNLOAD,
461 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
462 NS_EVENT)
463 WINDOW_EVENT(hashchange,
464 NS_HASHCHANGE,
465 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
466 NS_EVENT)
467 // XXXbz Should the onmessage attribute on <body> really not work? If so, do we
468 // need a different macro to flag things like that (IDL, but not content
469 // attributes on body/frameset), or is just using EventNameType_None enough?
470 WINDOW_EVENT(message,
471 NS_MESSAGE,
472 EventNameType_None,
473 NS_EVENT)
474 WINDOW_EVENT(offline,
475 NS_OFFLINE,
476 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
477 NS_EVENT)
478 WINDOW_EVENT(online,
479 NS_ONLINE,
480 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
481 NS_EVENT)
482 WINDOW_EVENT(pagehide,
483 NS_PAGE_HIDE,
484 EventNameType_HTMLBodyOrFramesetOnly,
485 NS_EVENT)
486 WINDOW_EVENT(pageshow,
487 NS_PAGE_SHOW,
488 EventNameType_HTMLBodyOrFramesetOnly,
489 NS_EVENT)
490 WINDOW_EVENT(popstate,
491 NS_POPSTATE,
492 EventNameType_XUL | EventNameType_HTMLBodyOrFramesetOnly,
493 NS_EVENT)
494 // Not supported yet
495 // WINDOW_EVENT(redo)
496 WINDOW_EVENT(resize,
497 NS_RESIZE_EVENT,
498 (EventNameType_XUL | EventNameType_SVGSVG |
499 EventNameType_HTMLBodyOrFramesetOnly),
500 NS_EVENT)
501 // Not supported yet
502 // WINDOW_EVENT(storage)
503 // Not supported yet
504 // WINDOW_EVENT(undo)
505 WINDOW_EVENT(unload,
506 NS_PAGE_UNLOAD,
507 (EventNameType_XUL | EventNameType_SVGSVG |
508 EventNameType_HTMLBodyOrFramesetOnly),
509 NS_EVENT)
511 WINDOW_ONLY_EVENT(devicemotion,
512 NS_DEVICE_MOTION,
513 EventNameType_None,
514 NS_EVENT)
515 WINDOW_ONLY_EVENT(deviceorientation,
516 NS_DEVICE_ORIENTATION,
517 EventNameType_None,
518 NS_EVENT)
519 WINDOW_ONLY_EVENT(deviceproximity,
520 NS_DEVICE_PROXIMITY,
521 EventNameType_None,
522 NS_EVENT)
523 WINDOW_ONLY_EVENT(userproximity,
524 NS_USER_PROXIMITY,
525 EventNameType_None,
526 NS_EVENT)
527 WINDOW_ONLY_EVENT(devicelight,
528 NS_DEVICE_LIGHT,
529 EventNameType_None,
530 NS_EVENT)
532 #ifdef MOZ_B2G
533 WINDOW_ONLY_EVENT(moztimechange,
534 NS_MOZ_TIME_CHANGE_EVENT,
535 EventNameType_None,
536 NS_EVENT)
537 WINDOW_ONLY_EVENT(moznetworkupload,
538 NS_NETWORK_UPLOAD_EVENT,
539 EventNameType_None,
540 NS_EVENT)
541 WINDOW_ONLY_EVENT(moznetworkdownload,
542 NS_NETWORK_DOWNLOAD_EVENT,
543 EventNameType_None,
544 NS_EVENT)
545 #endif // MOZ_B2G
547 TOUCH_EVENT(touchstart,
548 NS_TOUCH_START,
549 EventNameType_All,
550 NS_TOUCH_EVENT)
551 TOUCH_EVENT(touchend,
552 NS_TOUCH_END,
553 EventNameType_All,
554 NS_TOUCH_EVENT)
555 TOUCH_EVENT(touchmove,
556 NS_TOUCH_MOVE,
557 EventNameType_All,
558 NS_TOUCH_EVENT )
559 TOUCH_EVENT(touchenter,
560 NS_TOUCH_ENTER,
561 EventNameType_All,
562 NS_TOUCH_EVENT )
563 TOUCH_EVENT(touchleave,
564 NS_TOUCH_LEAVE,
565 EventNameType_All,
566 NS_TOUCH_EVENT)
567 TOUCH_EVENT(touchcancel,
568 NS_TOUCH_CANCEL,
569 EventNameType_All,
570 NS_TOUCH_EVENT)
572 DOCUMENT_ONLY_EVENT(readystatechange,
573 NS_READYSTATECHANGE,
574 EventNameType_HTMLXUL,
575 NS_EVENT)
577 NON_IDL_EVENT(MozMouseHittest,
578 NS_MOUSE_MOZHITTEST,
579 EventNameType_None,
580 NS_MOUSE_EVENT)
582 NON_IDL_EVENT(DOMAttrModified,
583 NS_MUTATION_ATTRMODIFIED,
584 EventNameType_HTMLXUL,
585 NS_MUTATION_EVENT)
586 NON_IDL_EVENT(DOMCharacterDataModified,
587 NS_MUTATION_CHARACTERDATAMODIFIED,
588 EventNameType_HTMLXUL,
589 NS_MUTATION_EVENT)
590 NON_IDL_EVENT(DOMNodeInserted,
591 NS_MUTATION_NODEINSERTED,
592 EventNameType_HTMLXUL,
593 NS_MUTATION_EVENT)
594 NON_IDL_EVENT(DOMNodeRemoved,
595 NS_MUTATION_NODEREMOVED,
596 EventNameType_HTMLXUL,
597 NS_MUTATION_EVENT)
598 NON_IDL_EVENT(DOMNodeInsertedIntoDocument,
599 NS_MUTATION_NODEINSERTEDINTODOCUMENT,
600 EventNameType_HTMLXUL,
601 NS_MUTATION_EVENT)
602 NON_IDL_EVENT(DOMNodeRemovedFromDocument,
603 NS_MUTATION_NODEREMOVEDFROMDOCUMENT,
604 EventNameType_HTMLXUL,
605 NS_MUTATION_EVENT)
606 NON_IDL_EVENT(DOMSubtreeModified,
607 NS_MUTATION_SUBTREEMODIFIED,
608 EventNameType_HTMLXUL,
609 NS_MUTATION_EVENT)
611 NON_IDL_EVENT(DOMActivate,
612 NS_UI_ACTIVATE,
613 EventNameType_HTMLXUL,
614 NS_UI_EVENT)
615 NON_IDL_EVENT(DOMFocusIn,
616 NS_UI_FOCUSIN,
617 EventNameType_HTMLXUL,
618 NS_UI_EVENT)
619 NON_IDL_EVENT(DOMFocusOut,
620 NS_UI_FOCUSOUT,
621 EventNameType_HTMLXUL,
622 NS_UI_EVENT)
624 NON_IDL_EVENT(DOMMouseScroll,
625 NS_MOUSE_SCROLL,
626 EventNameType_HTMLXUL,
627 NS_MOUSE_SCROLL_EVENT)
628 NON_IDL_EVENT(MozMousePixelScroll,
629 NS_MOUSE_PIXEL_SCROLL,
630 EventNameType_HTMLXUL,
631 NS_MOUSE_SCROLL_EVENT)
633 NON_IDL_EVENT(open,
634 NS_OPEN,
635 EventNameType_None,
636 NS_EVENT)
638 NON_IDL_EVENT(dataavailable,
639 NS_MEDIARECORDER_DATAAVAILABLE,
640 EventNameType_None,
641 NS_EVENT)
643 NON_IDL_EVENT(stop,
644 NS_MEDIARECORDER_STOP,
645 EventNameType_None,
646 NS_EVENT)
648 NON_IDL_EVENT(warning,
649 NS_MEDIARECORDER_WARNING,
650 EventNameType_None,
651 NS_EVENT)
653 NON_IDL_EVENT(speakerforcedchange,
654 NS_SPEAKERMANAGER_SPEAKERFORCEDCHANGE,
655 EventNameType_None,
656 NS_EVENT)
658 // Events that only have on* attributes on XUL elements
659 NON_IDL_EVENT(text,
660 NS_TEXT_TEXT,
661 EventNameType_XUL,
662 NS_TEXT_EVENT)
663 NON_IDL_EVENT(compositionstart,
664 NS_COMPOSITION_START,
665 EventNameType_XUL,
666 NS_COMPOSITION_EVENT)
667 NON_IDL_EVENT(compositionupdate,
668 NS_COMPOSITION_UPDATE,
669 EventNameType_XUL,
670 NS_COMPOSITION_EVENT)
671 NON_IDL_EVENT(compositionend,
672 NS_COMPOSITION_END,
673 EventNameType_XUL,
674 NS_COMPOSITION_EVENT)
675 NON_IDL_EVENT(command,
676 NS_XUL_COMMAND,
677 EventNameType_XUL,
678 NS_INPUT_EVENT)
679 NON_IDL_EVENT(close,
680 NS_XUL_CLOSE,
681 EventNameType_XUL,
682 NS_EVENT)
683 NON_IDL_EVENT(popupshowing,
684 NS_XUL_POPUP_SHOWING,
685 EventNameType_XUL,
686 NS_EVENT)
687 NON_IDL_EVENT(popupshown,
688 NS_XUL_POPUP_SHOWN,
689 EventNameType_XUL,
690 NS_EVENT)
691 NON_IDL_EVENT(popuphiding,
692 NS_XUL_POPUP_HIDING,
693 EventNameType_XUL,
694 NS_EVENT)
695 NON_IDL_EVENT(popuphidden,
696 NS_XUL_POPUP_HIDDEN,
697 EventNameType_XUL,
698 NS_EVENT)
699 NON_IDL_EVENT(broadcast,
700 NS_XUL_BROADCAST,
701 EventNameType_XUL,
702 NS_EVENT)
703 NON_IDL_EVENT(commandupdate,
704 NS_XUL_COMMAND_UPDATE,
705 EventNameType_XUL,
706 NS_EVENT)
707 NON_IDL_EVENT(dragexit,
708 NS_DRAGDROP_EXIT_SYNTH,
709 EventNameType_XUL,
710 NS_DRAG_EVENT)
711 NON_IDL_EVENT(dragdrop,
712 NS_DRAGDROP_DRAGDROP,
713 EventNameType_XUL,
714 NS_DRAG_EVENT)
715 NON_IDL_EVENT(draggesture,
716 NS_DRAGDROP_GESTURE,
717 EventNameType_XUL,
718 NS_DRAG_EVENT)
719 NON_IDL_EVENT(overflow,
720 NS_SCROLLPORT_OVERFLOW,
721 EventNameType_XUL,
722 NS_EVENT)
723 NON_IDL_EVENT(underflow,
724 NS_SCROLLPORT_UNDERFLOW,
725 EventNameType_XUL,
726 NS_EVENT)
728 // Various SVG events
729 NON_IDL_EVENT(SVGLoad,
730 NS_SVG_LOAD,
731 EventNameType_None,
732 NS_EVENT)
733 NON_IDL_EVENT(SVGUnload,
734 NS_SVG_UNLOAD,
735 EventNameType_None,
736 NS_EVENT)
737 NON_IDL_EVENT(SVGResize,
738 NS_SVG_RESIZE,
739 EventNameType_None,
740 NS_EVENT)
741 NON_IDL_EVENT(SVGScroll,
742 NS_SVG_SCROLL,
743 EventNameType_None,
744 NS_EVENT)
746 NON_IDL_EVENT(SVGZoom,
747 NS_SVG_ZOOM,
748 EventNameType_None,
749 NS_SVGZOOM_EVENT)
751 // Only map the ID to the real event name when ID_TO_EVENT is defined.
752 #ifndef ID_TO_EVENT
753 // This is a bit hackish, but SVG's event names are weird.
754 NON_IDL_EVENT(zoom,
755 NS_SVG_ZOOM,
756 EventNameType_SVGSVG,
757 NS_EVENT)
758 #endif
759 // Only map the ID to the real event name when ID_TO_EVENT is defined.
760 #ifndef ID_TO_EVENT
761 NON_IDL_EVENT(begin,
762 NS_SMIL_BEGIN,
763 EventNameType_SMIL,
764 NS_EVENT)
765 #endif
766 NON_IDL_EVENT(beginEvent,
767 NS_SMIL_BEGIN,
768 EventNameType_None,
769 NS_SMIL_TIME_EVENT)
770 // Only map the ID to the real event name when ID_TO_EVENT is defined.
771 #ifndef ID_TO_EVENT
772 NON_IDL_EVENT(end,
773 NS_SMIL_END,
774 EventNameType_SMIL,
775 NS_EVENT)
776 #endif
777 NON_IDL_EVENT(endEvent,
778 NS_SMIL_END,
779 EventNameType_None,
780 NS_SMIL_TIME_EVENT)
781 // Only map the ID to the real event name when ID_TO_EVENT is defined.
782 #ifndef ID_TO_EVENT
783 NON_IDL_EVENT(repeat,
784 NS_SMIL_REPEAT,
785 EventNameType_SMIL,
786 NS_EVENT)
787 #endif
788 NON_IDL_EVENT(repeatEvent,
789 NS_SMIL_REPEAT,
790 EventNameType_None,
791 NS_SMIL_TIME_EVENT)
793 NON_IDL_EVENT(MozAfterPaint,
794 NS_AFTERPAINT,
795 EventNameType_None,
796 NS_EVENT)
798 NON_IDL_EVENT(MozScrolledAreaChanged,
799 NS_SCROLLEDAREACHANGED,
800 EventNameType_None,
801 NS_SCROLLAREA_EVENT)
803 #ifdef MOZ_GAMEPAD
804 NON_IDL_EVENT(gamepadbuttondown,
805 NS_GAMEPAD_BUTTONDOWN,
806 EventNameType_None,
807 NS_EVENT)
808 NON_IDL_EVENT(gamepadbuttonup,
809 NS_GAMEPAD_BUTTONUP,
810 EventNameType_None,
811 NS_EVENT)
812 NON_IDL_EVENT(gamepadaxismove,
813 NS_GAMEPAD_AXISMOVE,
814 EventNameType_None,
815 NS_EVENT)
816 NON_IDL_EVENT(gamepadconnected,
817 NS_GAMEPAD_CONNECTED,
818 EventNameType_None,
819 NS_EVENT)
820 NON_IDL_EVENT(gamepaddisconnected,
821 NS_GAMEPAD_DISCONNECTED,
822 EventNameType_None,
823 NS_EVENT)
824 #endif
826 // Simple gesture events
827 NON_IDL_EVENT(MozSwipeGestureStart,
828 NS_SIMPLE_GESTURE_SWIPE_START,
829 EventNameType_None,
830 NS_SIMPLE_GESTURE_EVENT)
831 NON_IDL_EVENT(MozSwipeGestureUpdate,
832 NS_SIMPLE_GESTURE_SWIPE_UPDATE,
833 EventNameType_None,
834 NS_SIMPLE_GESTURE_EVENT)
835 NON_IDL_EVENT(MozSwipeGestureEnd,
836 NS_SIMPLE_GESTURE_SWIPE_END,
837 EventNameType_None,
838 NS_SIMPLE_GESTURE_EVENT)
839 NON_IDL_EVENT(MozSwipeGesture,
840 NS_SIMPLE_GESTURE_SWIPE,
841 EventNameType_None,
842 NS_SIMPLE_GESTURE_EVENT)
843 NON_IDL_EVENT(MozMagnifyGestureStart,
844 NS_SIMPLE_GESTURE_MAGNIFY_START,
845 EventNameType_None,
846 NS_SIMPLE_GESTURE_EVENT)
847 NON_IDL_EVENT(MozMagnifyGestureUpdate,
848 NS_SIMPLE_GESTURE_MAGNIFY_UPDATE,
849 EventNameType_None,
850 NS_SIMPLE_GESTURE_EVENT)
851 NON_IDL_EVENT(MozMagnifyGesture,
852 NS_SIMPLE_GESTURE_MAGNIFY,
853 EventNameType_None,
854 NS_SIMPLE_GESTURE_EVENT)
855 NON_IDL_EVENT(MozRotateGestureStart,
856 NS_SIMPLE_GESTURE_ROTATE_START,
857 EventNameType_None,
858 NS_SIMPLE_GESTURE_EVENT)
859 NON_IDL_EVENT(MozRotateGestureUpdate,
860 NS_SIMPLE_GESTURE_ROTATE_UPDATE,
861 EventNameType_None,
862 NS_SIMPLE_GESTURE_EVENT)
863 NON_IDL_EVENT(MozRotateGesture,
864 NS_SIMPLE_GESTURE_ROTATE,
865 EventNameType_None,
866 NS_SIMPLE_GESTURE_EVENT)
867 NON_IDL_EVENT(MozTapGesture,
868 NS_SIMPLE_GESTURE_TAP,
869 EventNameType_None,
870 NS_SIMPLE_GESTURE_EVENT)
871 NON_IDL_EVENT(MozPressTapGesture,
872 NS_SIMPLE_GESTURE_PRESSTAP,
873 EventNameType_None,
874 NS_SIMPLE_GESTURE_EVENT)
875 NON_IDL_EVENT(MozEdgeUIStarted,
876 NS_SIMPLE_GESTURE_EDGE_STARTED,
877 EventNameType_None,
878 NS_SIMPLE_GESTURE_EVENT)
879 NON_IDL_EVENT(MozEdgeUICanceled,
880 NS_SIMPLE_GESTURE_EDGE_CANCELED,
881 EventNameType_None,
882 NS_SIMPLE_GESTURE_EVENT)
883 NON_IDL_EVENT(MozEdgeUICompleted,
884 NS_SIMPLE_GESTURE_EDGE_COMPLETED,
885 EventNameType_None,
886 NS_SIMPLE_GESTURE_EVENT)
888 NON_IDL_EVENT(transitionend,
889 NS_TRANSITION_END,
890 EventNameType_None,
891 NS_TRANSITION_EVENT)
892 NON_IDL_EVENT(animationstart,
893 NS_ANIMATION_START,
894 EventNameType_None,
895 NS_ANIMATION_EVENT)
896 NON_IDL_EVENT(animationend,
897 NS_ANIMATION_END,
898 EventNameType_None,
899 NS_ANIMATION_EVENT)
900 NON_IDL_EVENT(animationiteration,
901 NS_ANIMATION_ITERATION,
902 EventNameType_None,
903 NS_ANIMATION_EVENT)
905 NON_IDL_EVENT(audioprocess,
906 NS_AUDIO_PROCESS,
907 EventNameType_None,
908 NS_EVENT)
910 NON_IDL_EVENT(complete,
911 NS_AUDIO_COMPLETE,
912 EventNameType_None,
913 NS_EVENT)
915 #ifdef DEFINED_FORWARDED_EVENT
916 #undef DEFINED_FORWARDED_EVENT
917 #undef FORWARDED_EVENT
918 #endif /* DEFINED_FORWARDED_EVENT */
920 #ifdef DEFINED_WINDOW_EVENT
921 #undef DEFINED_WINDOW_EVENT
922 #undef WINDOW_EVENT
923 #endif /* DEFINED_WINDOW_EVENT */
925 #ifdef DEFINED_WINDOW_ONLY_EVENT
926 #undef DEFINED_WINDOW_ONLY_EVENT
927 #undef WINDOW_ONLY_EVENT
928 #endif /* DEFINED_WINDOW_ONLY_EVENT */
930 #ifdef DEFINED_TOUCH_EVENT
931 #undef DEFINED_TOUCH_EVENT
932 #undef TOUCH_EVENT
933 #endif /* DEFINED_TOUCH_EVENT */
935 #ifdef DEFINED_DOCUMENT_ONLY_EVENT
936 #undef DEFINED_DOCUMENT_ONLY_EVENT
937 #undef DOCUMENT_ONLY_EVENT
938 #endif /* DEFINED_DOCUMENT_ONLY_EVENT */
940 #ifdef DEFINED_NON_IDL_EVENT
941 #undef DEFINED_NON_IDL_EVENT
942 #undef NON_IDL_EVENT
943 #endif /* DEFINED_NON_IDL_EVENT */
945 #ifdef DEFINED_ERROR_EVENT
946 #undef DEFINED_ERROR_EVENT
947 #undef ERROR_EVENT
948 #endif /* DEFINED_ERROR_EVENT */
950 #ifdef DEFINED_BEFOREUNLOAD_EVENT
951 #undef DEFINED_BEFOREUNLOAD_EVENT
952 #undef BEFOREUNLOAD_EVENT
953 #endif /* BEFOREUNLOAD_EVENT */
955 #ifdef ID_TO_EVENT
956 #undef EVENT
957 #undef WINDOW_ONLY_EVENT
958 #undef TOUCH_EVENT
959 #undef DOCUMENT_ONLY_EVENT
960 #undef NON_IDL_EVENT
961 #endif /* ID_TO_EVENT */