mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:47:36 +00:00
Ladybird: Prohibit GUI interaction of the WebContent process on macOS
The WebContent process behaves a bit awkwardly on macOS. When we launch the process, we have to create a QGuiApplication to access system fonts. But on macOS, doing so creates an entry in the Dock, and also causes the WebContent to be focused. So if you enter cmd+Q without first focusing the Ladybird GUI, WebContent is closed, while the Ladybird process keeps running.
This commit is contained in:
parent
cc86c07f58
commit
4dcdc3bd25
4 changed files with 37 additions and 0 deletions
|
@ -11,6 +11,7 @@
|
|||
#include "../Utilities.h"
|
||||
#include "../WebSocketClientManagerLadybird.h"
|
||||
#include <AK/LexicalPath.h>
|
||||
#include <AK/Platform.h>
|
||||
#include <LibCore/ArgsParser.h>
|
||||
#include <LibCore/EventLoop.h>
|
||||
#include <LibCore/LocalServer.h>
|
||||
|
@ -31,6 +32,10 @@
|
|||
#include <WebContent/PageHost.h>
|
||||
#include <WebContent/WebDriverConnection.h>
|
||||
|
||||
#if defined(AK_OS_MACOS)
|
||||
# include "MacOSSetup.h"
|
||||
#endif
|
||||
|
||||
static ErrorOr<void> load_content_filters();
|
||||
static ErrorOr<void> load_autoplay_allowlist();
|
||||
|
||||
|
@ -40,6 +45,10 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
{
|
||||
QGuiApplication app(arguments.argc, arguments.argv);
|
||||
|
||||
#if defined(AK_OS_MACOS)
|
||||
prohibit_interaction();
|
||||
#endif
|
||||
|
||||
Core::EventLoopManager::install(*new Ladybird::EventLoopManagerQt);
|
||||
Core::EventLoop event_loop;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue