gecko-dev/dom/chrome-webidl/DebuggerNotification.webidl
Boris Zbarsky e5497b955e Bug 1423562 part 3. Remove [PrimaryGlobal] and require explicit [Exposed] annotations on everything. r=edgar
For review purposes, the important changes are in dom/bindings/Configuration.py
and dom/bindings/parser.

The changes to the IDL files were done by running these in dom/webidl
and dom/bindings/test:

  perl -pi -e 's/^interface ([A-Za-z0-9_]+)($| [:{])/[Exposed=Window]\ninterface \1\2/' *.webidl

  perl -pi -e 'BEGIN { $/ = undef; } s/\[HTMLConstructor\]\n\[Exposed=Window\]/[HTMLConstructor,\n Exposed=Window]/g' *.webidl

  perl -pi -e 'BEGIN { $/ = undef; } s/\[NoInterfaceObject\]\n\[Exposed=Window\]/[NoInterfaceObject,\n Exposed=Window]/g' *.webidl

  perl -pi -e 'BEGIN { $/ = undef; } s/\[ChromeOnly\]\n\[Exposed=Window\]/[ChromeOnly,\n Exposed=Window]/g' *.webidl

And running this in dom/chrome-webidl:

  perl -pi -e 'BEGIN { $/ = undef; } s/\[ChromeOnly\]\ninterface/[ChromeOnly, Exposed=Window]\ninterface/g' *.webidl

and then fixing all the resulting parser failures.  I then verified that the
generated code is the same as before this change.

Differential Revision: https://phabricator.services.mozilla.com/D46697

--HG--
extra : moz-landing-system : lando
2019-09-27 15:26:14 +00:00

58 lines
1.6 KiB
Plaintext

/* 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/. */
enum DebuggerNotificationType {
// DebuggerNotification
"setTimeout",
"clearTimeout",
"setInterval",
"clearInterval",
"requestAnimationFrame",
"cancelAnimationFrame",
// CallbackDebuggerNotification
"setTimeoutCallback",
"setIntervalCallback",
"requestAnimationFrameCallback",
// EventCallbackDebuggerNotification
"domEvent",
};
[ChromeOnly, Exposed=Window]
interface DebuggerNotification {
readonly attribute DebuggerNotificationType type;
// The global object that has triggered the notification.
readonly attribute object global;
};
// For DOM events, we send notifications just before, and just after the
// event handler has been dispatched so that listeners
enum CallbackDebuggerNotificationPhase {
"pre",
"post",
};
// A base notification type for notifications that are dispatched as pairs with
// a before and after notification.
[ChromeOnly, Exposed=Window]
interface CallbackDebuggerNotification : DebuggerNotification {
readonly attribute CallbackDebuggerNotificationPhase phase;
};
enum EventCallbackDebuggerNotificationType {
"global",
"node",
"xhr",
"worker",
};
// A notification that about the engine calling a DOM event handler.
[ChromeOnly, Exposed=Window]
interface EventCallbackDebuggerNotification : CallbackDebuggerNotification {
readonly attribute Event event;
readonly attribute EventCallbackDebuggerNotificationType targetType;
};