Skip to content

Commit cebc4d0

Browse files
committed
LibCore: Remove ability to post heap-allocated Core::Event objects
We no longer need this API since all clients have been converted to simply posting the Core::Event::Type (or a callback function).
1 parent 2a1c5dc commit cebc4d0

14 files changed

+1
-69
lines changed

Libraries/LibCore/EventLoop.cpp

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -102,11 +102,6 @@ size_t EventLoop::pump(WaitMode mode)
102102
return m_impl->pump(mode == WaitMode::WaitForEvents ? EventLoopImplementation::PumpMode::WaitForEvents : EventLoopImplementation::PumpMode::DontWaitForEvents);
103103
}
104104

105-
void EventLoop::post_event(EventReceiver& receiver, NonnullOwnPtr<Event>&& event)
106-
{
107-
m_impl->post_event(&receiver, move(event));
108-
}
109-
110105
void EventLoop::add_job(NonnullRefPtr<Promise<NonnullRefPtr<EventReceiver>>> job_promise)
111106
{
112107
ThreadEventQueue::current().add_job(move(job_promise));

Libraries/LibCore/EventLoop.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,6 @@ class EventLoop {
6767
// Pump the event loop until some condition is met.
6868
void spin_until(Function<bool()>);
6969

70-
// Post an event to this event loop.
71-
void post_event(EventReceiver& receiver, NonnullOwnPtr<Event>&&);
72-
7370
void add_job(NonnullRefPtr<Promise<NonnullRefPtr<EventReceiver>>> job_promise);
7471

7572
void deferred_invoke(ESCAPING Function<void()>);

Libraries/LibCore/EventLoopImplementation.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,6 @@ class EventLoopImplementation {
5454
virtual void wake() = 0;
5555
virtual bool was_exit_requested() const = 0;
5656

57-
virtual void post_event(EventReceiver*, NonnullOwnPtr<Event>&&) = 0;
58-
5957
virtual void deferred_invoke(Function<void()>&&);
6058

6159
protected:

Libraries/LibCore/EventLoopImplementationUnix.cpp

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -314,13 +314,6 @@ void EventLoopImplementationUnix::quit(int code)
314314
m_exit_code = code;
315315
}
316316

317-
void EventLoopImplementationUnix::post_event(EventReceiver* receiver, NonnullOwnPtr<Event>&& event)
318-
{
319-
m_thread_event_queue.post_event(receiver, move(event));
320-
if (&m_thread_event_queue != &ThreadEventQueue::current())
321-
wake();
322-
}
323-
324317
void EventLoopImplementationUnix::wake()
325318
{
326319
int wake_event = 0;

Libraries/LibCore/EventLoopImplementationUnix.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,6 @@ class EventLoopImplementationUnix final : public EventLoopImplementation {
5151

5252
virtual void wake() override;
5353

54-
virtual void post_event(EventReceiver*, NonnullOwnPtr<Event>&&) override;
55-
5654
private:
5755
bool m_exit_requested { false };
5856
int m_exit_code { 0 };

Libraries/LibCore/EventLoopImplementationWindows.cpp

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -232,13 +232,6 @@ void EventLoopImplementationWindows::quit(int code)
232232
m_exit_code = code;
233233
}
234234

235-
void EventLoopImplementationWindows::post_event(EventReceiver* receiver, NonnullOwnPtr<Event>&& event)
236-
{
237-
m_thread_event_queue.post_event(receiver, move(event));
238-
if (&m_thread_event_queue != &ThreadEventQueue::current())
239-
wake();
240-
}
241-
242235
void EventLoopImplementationWindows::wake()
243236
{
244237
SetEvent(m_wake_event);

Libraries/LibCore/EventLoopImplementationWindows.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,6 @@ class EventLoopImplementationWindows final : public EventLoopImplementation {
4242
virtual void wake() override;
4343
virtual bool was_exit_requested() const override { return m_exit_requested; }
4444

45-
virtual void post_event(EventReceiver*, NonnullOwnPtr<Event>&&) override;
46-
4745
private:
4846
bool m_exit_requested { false };
4947
int m_exit_code { 0 };

Libraries/LibCore/ThreadEventQueue.cpp

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,6 @@ struct ThreadEventQueue::Private {
2121
AK_MAKE_DEFAULT_MOVABLE(QueuedEvent);
2222

2323
public:
24-
QueuedEvent(RefPtr<EventReceiver> const& receiver, NonnullOwnPtr<Event> event)
25-
: receiver(receiver)
26-
, event(move(event))
27-
, event_type(this->event->type())
28-
{
29-
}
30-
3124
QueuedEvent(RefPtr<EventReceiver> const& receiver, Event::Type event_type)
3225
: receiver(receiver)
3326
, event_type(event_type)
@@ -43,7 +36,6 @@ struct ThreadEventQueue::Private {
4336
~QueuedEvent() = default;
4437

4538
WeakPtr<EventReceiver> receiver;
46-
OwnPtr<Event> event;
4739
Function<void()> m_invokee;
4840
u8 event_type { Event::Type::Invalid };
4941
};
@@ -81,15 +73,6 @@ ThreadEventQueue::ThreadEventQueue()
8173

8274
ThreadEventQueue::~ThreadEventQueue() = default;
8375

84-
void ThreadEventQueue::post_event(Core::EventReceiver* receiver, NonnullOwnPtr<Core::Event> event)
85-
{
86-
{
87-
Threading::MutexLocker lock(m_private->mutex);
88-
m_private->queued_events.empend(receiver, move(event));
89-
}
90-
Core::EventLoopManager::the().did_post_event();
91-
}
92-
9376
void ThreadEventQueue::post_event(Core::EventReceiver* receiver, Core::Event::Type event_type)
9477
{
9578
{
@@ -147,8 +130,7 @@ size_t ThreadEventQueue::process()
147130
break;
148131
}
149132
default:
150-
receiver->dispatch_event(*queued_event.event);
151-
break;
133+
VERIFY_NOT_REACHED();
152134
}
153135
} else {
154136
if (queued_event.event_type == Event::Type::DeferredInvoke) {

Libraries/LibCore/ThreadEventQueue.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ class ThreadEventQueue {
2626
size_t process();
2727

2828
// Posts an event to the event queue.
29-
void post_event(EventReceiver*, NonnullOwnPtr<Event>);
3029
void post_event(EventReceiver*, Core::Event::Type);
3130

3231
// Post a deferred invocation to the event queue.

Libraries/LibWebView/EventLoop/EventLoopImplementationMacOS.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ class WEBVIEW_API EventLoopImplementationMacOS final : public Core::EventLoopImp
4141
virtual void quit(int) override;
4242
virtual void wake() override;
4343
virtual bool was_exit_requested() const override;
44-
virtual void post_event(Core::EventReceiver*, NonnullOwnPtr<Core::Event>&&) override;
4544

4645
virtual ~EventLoopImplementationMacOS() override;
4746

0 commit comments

Comments
 (0)