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) |