| Index: tools/dom/scripts/systemnative.py
|
| diff --git a/tools/dom/scripts/systemnative.py b/tools/dom/scripts/systemnative.py
|
| index 2dc7361df3e1d7bb65950ddfa417a2742f808119..cc5b9caf92aa77c40887efc71677a6c252c9f71e 100644
|
| --- a/tools/dom/scripts/systemnative.py
|
| +++ b/tools/dom/scripts/systemnative.py
|
| @@ -734,6 +734,7 @@ class DartiumBackend(HtmlDartGenerator):
|
| cpp_arguments = []
|
| runtime_check = None
|
| raises_exceptions = raises_dom_exception or arguments
|
| + needs_custom_element_callbacks = False
|
|
|
| # TODO(antonm): unify with ScriptState below.
|
| requires_stack_info = (ext_attrs.get('CallWith') == 'ScriptArguments|ScriptState' or
|
| @@ -785,6 +786,10 @@ class DartiumBackend(HtmlDartGenerator):
|
| if 'Reflect' in ext_attrs:
|
| cpp_arguments = [self._GenerateWebCoreReflectionAttributeName(node)]
|
|
|
| + if ext_attrs.get('CustomElementCallbacks') == 'Enable':
|
| + self._cpp_impl_includes.add('"core/dom/CustomElementCallbackDispatcher.h"')
|
| + needs_custom_element_callbacks = True
|
| +
|
| if return_type_is_nullable:
|
| cpp_arguments = ['isNull']
|
|
|
| @@ -907,6 +912,9 @@ class DartiumBackend(HtmlDartGenerator):
|
| ' return;\n',
|
| INDEX=len(arguments) + 1)
|
|
|
| + if needs_custom_element_callbacks:
|
| + body_emitter.Emit(' CustomElementCallbackDispatcher::CallbackDeliveryScope deliveryScope;\n');
|
| +
|
| # Emit arguments.
|
| start_index = 1 if needs_receiver else 0
|
| for i, argument in enumerate(arguments):
|
|
|