mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-01-22 17:24:48 -05:00
LibWeb: Normalize getter name for reflected “Element?” IDL types
This change updates the bindings generator for the case defined at https://html.spec.whatwg.org/#reflecting-content-attributes-in-idl-attributes:element; that is, the case “If a reflected IDL attribute has the type T?, where T is either Element or an interface that inherits from Element”. The change “normalizes” the generator behavior for that case — such that the generated code expects a getter with a name of the form used in other cases; e.g., popover_target_element(). Otherwise, without this change, the generator expects a name of the form get_popover_target_element() for that case.
This commit is contained in:
parent
19567d96ec
commit
0c6a6d4457
Notes:
github-actions[bot]
2024-12-28 16:35:40 +00:00
Author: https://github.com/sideshowbarker Commit: https://github.com/LadybirdBrowser/ladybird/commit/0c6a6d4457c Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3074 Reviewed-by: https://github.com/tcl3 ✅
2 changed files with 2 additions and 2 deletions
|
@ -17,7 +17,7 @@ class PopoverInvokerElement {
|
|||
public:
|
||||
PopoverInvokerElement() { }
|
||||
|
||||
GC::Ptr<DOM::Element> get_popover_target_element() { return m_popover_target_element; }
|
||||
GC::Ptr<DOM::Element> popover_target_element() { return m_popover_target_element; }
|
||||
|
||||
void set_popover_target_element(GC::Ptr<DOM::Element> value) { m_popover_target_element = value; }
|
||||
|
||||
|
|
|
@ -3821,7 +3821,7 @@ JS_DEFINE_NATIVE_FUNCTION(@class_name@::@attribute.getter_callback@)
|
|||
// 1. If reflectedTarget's explicitly set attr-element is a descendant of any of element's shadow-including ancestors, then return reflectedTarget's explicitly set attr-element.
|
||||
// 2. Return null.
|
||||
attribute_generator.append(R"~~~(
|
||||
auto const explicitly_set_attr = TRY(throw_dom_exception_if_needed(vm, [&] { return impl->get_@attribute.cpp_name@(); }));
|
||||
auto const explicitly_set_attr = TRY(throw_dom_exception_if_needed(vm, [&] { return impl->@attribute.cpp_name@(); }));
|
||||
if (explicitly_set_attr) {
|
||||
if (&impl->shadow_including_root() == &explicitly_set_attr->shadow_including_root()) {
|
||||
retval = explicitly_set_attr;
|
||||
|
|
Loading…
Reference in a new issue