diff --git a/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp b/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp index bebef552a14..cb583a7db95 100644 --- a/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp +++ b/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp @@ -339,7 +339,7 @@ void EventLoop::process() } // https://html.spec.whatwg.org/multipage/webappapis.html#queue-a-global-task -void queue_global_task(HTML::Task::Source source, JS::Object& global_object, JS::SafeFunction steps) +int queue_global_task(HTML::Task::Source source, JS::Object& global_object, JS::SafeFunction steps) { // 1. Let event loop be global's relevant agent's event loop. auto& global_custom_data = verify_cast(*global_object.vm().custom_data()); @@ -354,6 +354,8 @@ void queue_global_task(HTML::Task::Source source, JS::Object& global_object, JS: // 3. Queue a task given source, event loop, document, and steps. event_loop.task_queue().add(HTML::Task::create(source, document, move(steps))); + + return event_loop.task_queue().last_added_task()->id(); } // https://html.spec.whatwg.org/#queue-a-microtask diff --git a/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h b/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h index 019c9af1187..d587837e7c7 100644 --- a/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h +++ b/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h @@ -116,7 +116,7 @@ private: }; EventLoop& main_thread_event_loop(); -void queue_global_task(HTML::Task::Source, JS::Object&, JS::SafeFunction steps); +int queue_global_task(HTML::Task::Source, JS::Object&, JS::SafeFunction steps); void queue_a_microtask(DOM::Document const*, JS::SafeFunction steps); void perform_a_microtask_checkpoint();