From 7bcde2bcfb7c993d81cb8cd7b9e0f40fc821d61c Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Thu, 9 Sep 2021 00:21:57 +0200 Subject: [PATCH] LibWeb: Let HTML::EventLoop know its type There are three types of event loop: window, worker and worklet. For now, we only have window event loops. --- .../Libraries/LibWeb/HTML/EventLoop/EventLoop.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h b/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h index 4b67df201d..a22178b1c8 100644 --- a/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h +++ b/Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.h @@ -13,9 +13,20 @@ namespace Web::HTML { class EventLoop { public: + enum class Type { + // https://html.spec.whatwg.org/multipage/webappapis.html#window-event-loop + Window, + // https://html.spec.whatwg.org/multipage/webappapis.html#worker-event-loop + Worker, + // https://html.spec.whatwg.org/multipage/webappapis.html#worklet-event-loop + Worklet, + }; + EventLoop(); ~EventLoop(); + Type type() const { return m_type; } + TaskQueue& task_queue() { return m_task_queue; } TaskQueue const& task_queue() const { return m_task_queue; } @@ -25,6 +36,8 @@ public: Task const* currently_running_task() const { return m_currently_running_task; } private: + Type m_type { Type::Window }; + TaskQueue m_task_queue; // https://html.spec.whatwg.org/multipage/webappapis.html#currently-running-task