| Index: sdk/lib/html/scripts/htmlrenamer.py
|
| diff --git a/sdk/lib/html/scripts/htmlrenamer.py b/sdk/lib/html/scripts/htmlrenamer.py
|
| index e2ad5f7830bed5d8e88e7a316eaf44f3e273dd88..2c676ff602d413327dfed2d6688ae3ea8ae09122 100644
|
| --- a/sdk/lib/html/scripts/htmlrenamer.py
|
| +++ b/sdk/lib/html/scripts/htmlrenamer.py
|
| @@ -118,6 +118,7 @@ _private_html_members = set([
|
| # Members from the standard dom that exist in the dart:html library with
|
| # identical functionality but with cleaner names.
|
| _renamed_html_members = {
|
| + 'Document.createCDATASection': 'createCDataSection',
|
| 'Document.defaultView': 'window',
|
| 'Element.webkitMatchesSelector' : 'matchesSelector',
|
| 'Element.scrollIntoViewIfNeeded': 'scrollIntoView',
|
| @@ -203,6 +204,7 @@ _removed_html_members = set([
|
| "Element.setAttributeNodeNS",
|
| "Element.getAttributeNodeNS",
|
| "Event.srcElement",
|
| + "EventSource.URL",
|
| "BodyElement.text",
|
| "AnchorElement.text",
|
| "OptionElement.text",
|
| @@ -251,10 +253,10 @@ _removed_html_members = set([
|
| "Document.version",
|
| "Document.manifest",
|
| "HTMLIsIndexElement.*",
|
| + "HTMLMenuElement.compact",
|
| "HTMLOptionsCollection.*",
|
| "HTMLPropertiesCollection.*",
|
| "SelectElement.remove",
|
| - "MenuElement.compact",
|
| "NamedNodeMap.*",
|
| "Node.isEqualNode",
|
| "Node.get:TEXT_NODE",
|
| @@ -329,15 +331,18 @@ class HtmlRenamer(object):
|
|
|
| name = self._FindMatch(interface, member, member_prefix,
|
| _renamed_html_members)
|
| +
|
| target_name = _renamed_html_members[name] if name else member
|
| if self._FindMatch(interface, member, member_prefix, _private_html_members):
|
| if not target_name.startswith('$dom_'): # e.g. $dom_svgClassName
|
| target_name = '$dom_' + target_name
|
| +
|
| + target_name = self._DartifyMemberName(target_name)
|
| return target_name
|
|
|
| def _FindMatch(self, interface, member, member_prefix, candidates):
|
| for interface in self._database.Hierarchy(interface):
|
| - html_interface_name = self.RenameInterface(interface)
|
| + html_interface_name = self.DartifyTypeName(interface.id)
|
| member_name = html_interface_name + '.' + member
|
| if member_name in candidates:
|
| return member_name
|
| @@ -353,11 +358,11 @@ class HtmlRenamer(object):
|
| Gets the name of the library this type should live in.
|
| This is private because this should use interfaces to resolve the library.
|
| """
|
| -
|
| if idl_type_name.startswith('SVG'):
|
| return 'svg'
|
| return 'html'
|
|
|
| +
|
| def DartifyTypeName(self, type_name):
|
| """Converts a DOM name to a Dart-friendly class name. """
|
| library_name = self._GetLibraryName(type_name)
|
| @@ -367,6 +372,14 @@ class HtmlRenamer(object):
|
|
|
| # Strip off the SVG prefix.
|
| name = re.sub(r'^SVG', '', type_name)
|
| + return self._CamelCaseName(name)
|
| +
|
| + def _DartifyMemberName(self, member_name):
|
| + # Strip off any OpenGL ES suffixes.
|
| + name = re.sub(r'OES$', '', member_name)
|
| + return self._CamelCaseName(name)
|
| +
|
| + def _CamelCaseName(self, name):
|
|
|
| def toLower(match):
|
| return match.group(1) + match.group(2).lower() + match.group(3)
|
|
|