| Index: third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| diff --git a/third_party/WebKit/Source/bindings/scripts/v8_interface.py b/third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| index bcfa35cc13b2e57c6c8be4891e61e12f976a0751..838b89736de60605d3071ffc599c81085598bc22 100644
|
| --- a/third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| +++ b/third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| @@ -145,11 +145,16 @@ def interface_context(interface):
|
| }
|
| set_wrapper_reference_to['idl_type'].add_includes_for_type()
|
|
|
| - # [SetWrapperReferenceFrom]
|
| + # [Custom=VisitDOMWrapper]
|
| has_visit_dom_wrapper = (
|
| has_extended_attribute_value(interface, 'Custom', 'VisitDOMWrapper') or
|
| set_wrapper_reference_from or set_wrapper_reference_to)
|
|
|
| + # [TraceWrappers]
|
| + trace_wrappers = extended_attribute_value_as_list(interface, 'TraceWrappers')
|
| + if trace_wrappers:
|
| + includes.add('bindings/core/v8/ScriptWrappableVisitor.h')
|
| +
|
| wrapper_class_id = ('NodeClassId' if inherits_interface(interface.name, 'Node') else 'ObjectClassId')
|
|
|
| v8_class_name = v8_utilities.v8_class_name(interface)
|
| @@ -169,6 +174,7 @@ def interface_context(interface):
|
| 'has_custom_legacy_call_as_function': has_extended_attribute_value(interface, 'Custom', 'LegacyCallAsFunction'), # [Custom=LegacyCallAsFunction]
|
| 'has_partial_interface': len(interface.partial_interfaces) > 0,
|
| 'has_visit_dom_wrapper': has_visit_dom_wrapper,
|
| + 'trace_wrappers': trace_wrappers,
|
| 'header_includes': header_includes,
|
| 'interface_name': interface.name,
|
| 'is_array_buffer_or_view': is_array_buffer_or_view,
|
| @@ -179,7 +185,7 @@ def interface_context(interface):
|
| 'is_node': inherits_interface(interface.name, 'Node'),
|
| 'is_partial': interface.is_partial,
|
| 'is_typed_array_type': is_typed_array_type,
|
| - 'lifetime': 'Dependent' if (has_visit_dom_wrapper or is_dependent_lifetime) else 'Independent',
|
| + 'lifetime': 'Dependent' if (has_visit_dom_wrapper or trace_wrappers or is_dependent_lifetime) else 'Independent',
|
| 'measure_as': v8_utilities.measure_as(interface, None), # [MeasureAs]
|
| 'origin_trial_enabled_function': v8_utilities.origin_trial_enabled_function_name(interface, None),
|
| 'parent_interface': parent_interface,
|
|
|