diff --git a/Tests/LibWeb/Text/expected/abortsignal-timeout.txt b/Tests/LibWeb/Text/expected/abortsignal-timeout.txt index a40fa22739..9d699c483a 100644 --- a/Tests/LibWeb/Text/expected/abortsignal-timeout.txt +++ b/Tests/LibWeb/Text/expected/abortsignal-timeout.txt @@ -1,2 +1,3 @@ Time passed before abort event fired is at least 10 milliseconds: true Reason type: TimeoutError +onabort event isTrusted: true diff --git a/Tests/LibWeb/Text/input/abortsignal-timeout.html b/Tests/LibWeb/Text/input/abortsignal-timeout.html index 3edea60c86..82a825b36d 100644 --- a/Tests/LibWeb/Text/input/abortsignal-timeout.html +++ b/Tests/LibWeb/Text/input/abortsignal-timeout.html @@ -4,11 +4,12 @@ const timeout_milliseconds = 10; const test_start_time = performance.now(); const signal = AbortSignal.timeout(timeout_milliseconds); - signal.onabort = () => { + signal.onabort = (event) => { const abort_event_time = performance.now(); const time_taken_milliseconds = abort_event_time - test_start_time; println(`Time passed before abort event fired is at least ${timeout_milliseconds} milliseconds: ${time_taken_milliseconds >= timeout_milliseconds}`); println(`Reason type: ${signal.reason.name}`); + println(`onabort event isTrusted: ${event.isTrusted}`); done(); }; }); diff --git a/Userland/Libraries/LibWeb/DOM/AbortSignal.cpp b/Userland/Libraries/LibWeb/DOM/AbortSignal.cpp index ee9834048b..6852cc783d 100644 --- a/Userland/Libraries/LibWeb/DOM/AbortSignal.cpp +++ b/Userland/Libraries/LibWeb/DOM/AbortSignal.cpp @@ -64,7 +64,9 @@ void AbortSignal::signal_abort(JS::Value reason) m_abort_algorithms.clear(); // 5. Fire an event named abort at signal. - dispatch_event(Event::create(realm(), HTML::EventNames::abort)); + auto abort_event = Event::create(realm(), HTML::EventNames::abort); + abort_event->set_is_trusted(true); + dispatch_event(abort_event); } void AbortSignal::set_onabort(WebIDL::CallbackType* event_handler)