diff --git a/Userland/Libraries/LibWeb/Internals/Internals.cpp b/Userland/Libraries/LibWeb/Internals/Internals.cpp index 9b6f682d0e8..9293ed9efdb 100644 --- a/Userland/Libraries/LibWeb/Internals/Internals.cpp +++ b/Userland/Libraries/LibWeb/Internals/Internals.cpp @@ -193,4 +193,10 @@ void Internals::expire_cookies_with_time_offset(WebIDL::LongLong seconds) internals_page().client().page_did_expire_cookies_with_time_offset(AK::Duration::from_seconds(seconds)); } +String Internals::get_computed_label(DOM::Element& element) +{ + auto& active_document = internals_window().associated_document(); + return MUST(element.accessible_name(active_document)); +} + } diff --git a/Userland/Libraries/LibWeb/Internals/Internals.h b/Userland/Libraries/LibWeb/Internals/Internals.h index 83e155f9802..b28aa32e5c0 100644 --- a/Userland/Libraries/LibWeb/Internals/Internals.h +++ b/Userland/Libraries/LibWeb/Internals/Internals.h @@ -47,6 +47,8 @@ public: void enable_cookies_on_file_domains(); void expire_cookies_with_time_offset(WebIDL::LongLong seconds); + String get_computed_label(DOM::Element& element); + private: explicit Internals(JS::Realm&); virtual void initialize(JS::Realm&) override; diff --git a/Userland/Libraries/LibWeb/Internals/Internals.idl b/Userland/Libraries/LibWeb/Internals/Internals.idl index ee26ff48c5c..0eb5b56d93e 100644 --- a/Userland/Libraries/LibWeb/Internals/Internals.idl +++ b/Userland/Libraries/LibWeb/Internals/Internals.idl @@ -36,4 +36,6 @@ interface Internals { undefined enableCookiesOnFileDomains(); undefined expireCookiesWithTimeOffset(long long seconds); + + DOMString getComputedLabel(Element element); };