| Index: lib/dom/scripts/systemfrog.py
|
| diff --git a/lib/dom/scripts/systemfrog.py b/lib/dom/scripts/systemfrog.py
|
| index 64f52680e403c24d673808b84b8848a00cd99350..a753e9752514923b7d70ecaf4f957b7df3d32e97 100644
|
| --- a/lib/dom/scripts/systemfrog.py
|
| +++ b/lib/dom/scripts/systemfrog.py
|
| @@ -35,6 +35,8 @@ class FrogSystem(System):
|
| super_interface_name,
|
| source_filter):
|
| """."""
|
| + if IsPureInterface(interface.id):
|
| + return
|
| template_file = 'impl_%s.darttemplate' % interface.id
|
| template = self._templates.TryLoad(template_file)
|
| if not template:
|
| @@ -99,6 +101,8 @@ class FrogInterfaceGenerator(object):
|
| if IsDartCollectionType(supertype):
|
| # List methods are injected in AddIndexer.
|
| pass
|
| + elif IsPureInterface(supertype):
|
| + pass
|
| else:
|
| base = self._ImplClassName(supertype)
|
|
|
| @@ -167,6 +171,9 @@ class FrogInterfaceGenerator(object):
|
| if RecognizeCallback(interface):
|
| # Callbacks are typedef functions so don't have a class.
|
| return type_name
|
| + elif type_name == 'MediaQueryListListener':
|
| + # Somewhat like a callback. See Issue 3338.
|
| + return type_name
|
| else:
|
| return self._ImplClassName(type_name)
|
| return type_name
|
| @@ -277,6 +284,8 @@ class FrogInterfaceGenerator(object):
|
| parent = interface.parents[0]
|
| if IsDartCollectionType(parent.type.id):
|
| return (None, None)
|
| + if IsPureInterface(parent.type.id):
|
| + return (None, None)
|
| if self._system._database.HasInterface(parent.type.id):
|
| parent_interface = self._system._database.GetInterface(parent.type.id)
|
| attr2 = FindMatchingAttribute(parent_interface, attr)
|
|
|