author Boris Zbarsky <>
Fri, 27 Sep 2019 15:26:14 +0000
changeset 560063 2416d17d33c1c6774e62f786aaeff6c02462a5bd
parent 497577 181d337b15bd2354fa1b910e735c1521ee8d7807
child 562678 b8905d33a7c0e55f84e2378b51cc6488f7b81aee
permissions -rw-r--r--
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/ 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:

/* -*- 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

[HTMLConstructor, Func="IsChromeOrXBL",
interface XULTextElement : XULElement {
  attribute boolean disabled;
  attribute DOMString value;
  attribute DOMString accessKey;