mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-26 09:30:24 +00:00
37d844fd66
This patch removes the dual-event-loop setup, leaving only the Qt event loop. We teach LibWeb how to drive Qt by installing an EventLoopPlugin. This removes the 50ms latency on all UI interactions (and network requests, etc.)
23 lines
554 B
C++
23 lines
554 B
C++
/*
|
|
* Copyright (c) 2022, Andreas Kling <kling@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LibWeb/Platform/EventLoopPlugin.h>
|
|
|
|
namespace Ladybird {
|
|
|
|
class EventLoopPluginQt final : public Web::Platform::EventLoopPlugin {
|
|
public:
|
|
EventLoopPluginQt();
|
|
virtual ~EventLoopPluginQt() override;
|
|
|
|
virtual void spin_until(Function<bool()> goal_condition) override;
|
|
virtual void deferred_invoke(Function<void()>) override;
|
|
virtual NonnullRefPtr<Web::Platform::Timer> create_timer() override;
|
|
};
|
|
|
|
}
|