소스 검색

LibWeb: Add method to get last added task to an EventLoop

Luke Wilde 2 년 전
부모
커밋
a53486a073
2개의 변경된 파일9개의 추가작업 그리고 0개의 파일을 삭제
  1. 7 0
      Userland/Libraries/LibWeb/HTML/EventLoop/TaskQueue.cpp
  2. 2 0
      Userland/Libraries/LibWeb/HTML/EventLoop/TaskQueue.h

+ 7 - 0
Userland/Libraries/LibWeb/HTML/EventLoop/TaskQueue.cpp

@@ -71,4 +71,11 @@ ErrorOr<Vector<NonnullOwnPtr<Task>>> TaskQueue::take_tasks_matching(Function<boo
     return matching_tasks;
 }
 
+Task const* TaskQueue::last_added_task() const
+{
+    if (m_tasks.is_empty())
+        return nullptr;
+    return m_tasks.last();
+}
+
 }

+ 2 - 0
Userland/Libraries/LibWeb/HTML/EventLoop/TaskQueue.h

@@ -34,6 +34,8 @@ public:
     void remove_tasks_matching(Function<bool(HTML::Task const&)>);
     ErrorOr<Vector<NonnullOwnPtr<Task>>> take_tasks_matching(Function<bool(HTML::Task const&)>);
 
+    Task const* last_added_task() const;
+
 private:
     HTML::EventLoop& m_event_loop;