diff options
Diffstat (limited to 'components/script/dom/bindings/codegen/Configuration.py')
-rw-r--r-- | components/script/dom/bindings/codegen/Configuration.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/components/script/dom/bindings/codegen/Configuration.py b/components/script/dom/bindings/codegen/Configuration.py index fb360a020aa..bd455f5288e 100644 --- a/components/script/dom/bindings/codegen/Configuration.py +++ b/components/script/dom/bindings/codegen/Configuration.py @@ -280,7 +280,8 @@ class Descriptor(DescriptorProvider): continue def addIndexedOrNamedOperation(operation, m): - self.proxy = True + if not self.isGlobal(): + self.proxy = True if m.isIndexed(): operation = 'Indexed' + operation else: @@ -369,6 +370,15 @@ class Descriptor(DescriptorProvider): def internalNameFor(self, name): return self._internalNames.get(name, name) + def hasNamedPropertiesObject(self): + if self.interface.isExternal(): + return False + + return self.isGlobal() and self.supportsNamedProperties() + + def supportsNamedProperties(self): + return self.operations['NamedGetter'] is not None + def getExtendedAttributes(self, member, getter=False, setter=False): def maybeAppendInfallibleToAttrs(attrs, throws): if throws is None: |