Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Unified Diff: tools/dom/scripts/systemnative.py

Issue 12380046: Future-ify all the html methods and add named parameters (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/dom/scripts/systemhtml.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/dom/scripts/systemnative.py
diff --git a/tools/dom/scripts/systemnative.py b/tools/dom/scripts/systemnative.py
index 06e27a9b5abeed122db7f3b2ece1fd2d358b459d..c15fbb3d0babc18a0f1ab99c963d7d1a643a1c9b 100644
--- a/tools/dom/scripts/systemnative.py
+++ b/tools/dom/scripts/systemnative.py
@@ -10,7 +10,7 @@ import emitter
import os
from generator import *
from htmldartgenerator import *
-from systemhtml import js_support_checks
+from systemhtml import js_support_checks, GetCallbackInfo
class DartiumBackend(HtmlDartGenerator):
"""Generates Dart implementation for one DOM IDL interface."""
@@ -476,12 +476,15 @@ class DartiumBackend(HtmlDartGenerator):
needs_dispatcher = not is_custom and (len(info.operations) > 1 or has_optional_arguments)
if not needs_dispatcher:
- # Bind directly to native implementation
- argument_count = (0 if info.IsStatic() else 1) + len(info.param_infos)
- cpp_callback_name = self._GenerateNativeBinding(
- info.name, argument_count, dart_declaration, 'Callback', is_custom)
- if not is_custom:
- self._GenerateOperationNativeCallback(operation, operation.arguments, cpp_callback_name)
+ if info.callback_args:
+ self._AddFutureifiedOperation(info, html_name)
+ else:
+ # Bind directly to native implementation
+ argument_count = (0 if info.IsStatic() else 1) + len(info.param_infos)
+ cpp_callback_name = self._GenerateNativeBinding(
+ info.name, argument_count, dart_declaration, 'Callback', is_custom)
+ if not is_custom:
+ self._GenerateOperationNativeCallback(operation, operation.arguments, cpp_callback_name)
else:
self._GenerateDispatcher(info.operations, dart_declaration, [info.name for info in info.param_infos])
« no previous file with comments | « tools/dom/scripts/systemhtml.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698