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
36 lines
1.1 KiB
Plaintext
36 lines
1.1 KiB
Plaintext
/* -*- Mode: IDL; 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/.
|
|
*/
|
|
|
|
/**
|
|
* The PageTransitionEvent interface is used for the pageshow and
|
|
* pagehide events, which are generic events that apply to both page
|
|
* load/unload and saving/restoring a document from session history.
|
|
*/
|
|
|
|
[Exposed=Window]
|
|
interface PageTransitionEvent : Event
|
|
{
|
|
constructor(DOMString type,
|
|
optional PageTransitionEventInit eventInitDict = {});
|
|
|
|
/**
|
|
* Set to true if the document has been or will be persisted across
|
|
* firing of the event. For example, if a document is being cached in
|
|
* session history, |persisted| is true for the PageHide event.
|
|
*/
|
|
readonly attribute boolean persisted;
|
|
|
|
// Whether the document is in the middle of a frame swap.
|
|
[ChromeOnly]
|
|
readonly attribute boolean inFrameSwap;
|
|
};
|
|
|
|
dictionary PageTransitionEventInit : EventInit
|
|
{
|
|
boolean persisted = false;
|
|
boolean inFrameSwap = false;
|
|
};
|