ladybird/Ladybird
Zaggy1024 78e1defbfe Ladybird: Allow posting events to the Qt event loop from other threads
Previously, a QTimer was used to start processing of our event queue in
the main Qt event loop. Unfortunately, QTimers are not thread-safe, and
disallow starting of a timer from a different thread than it was
created in.

Instead, use a dummy QObject to post a custom QEvent to the main loop
from whatever thread we like, and process our event queue when it is
received by our dummy object.
2023-08-04 13:49:36 -06:00
..
android Ladybird: Make Android build work again, and tidy up files 2023-07-19 12:25:37 -06:00
cmake Ladybird: Add WebSocket server for use by Lagom networking 2023-08-03 09:55:20 +02:00
Icons Ladybird: Replace forward/back/reload SVGs with TVGs 2023-07-03 23:54:51 +02:00
RequestServer Ladybird: Add WebSocket server for use by Lagom networking 2023-08-03 09:55:20 +02:00
SQLServer Ladybird: Don't link SQLServer against Qt when it doesn't need it 2023-08-02 05:44:43 +02:00
WebContent Ladybird: Allow posting events to the Qt event loop from other threads 2023-08-04 13:49:36 -06:00
WebDriver Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
WebSocket Ladybird: Add WebSocket server for use by Lagom networking 2023-08-03 09:55:20 +02:00
.gitignore Ladybird/Meta: Add Android build 2022-12-25 07:58:58 -07:00
AndroidPlatform.cpp Ladybird: Make Android build work again, and tidy up files 2023-07-19 12:25:37 -06:00
AudioCodecPluginQt.cpp Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
AudioCodecPluginQt.h Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
AudioThread.cpp Ladybird: Move the AudioThread class into its own file 2023-07-07 06:41:51 -04:00
AudioThread.h Ladybird: Move the AudioThread class into its own file 2023-07-07 06:41:51 -04:00
BrowserWindow.cpp Ladybird+Browser: Update zoom text on menu after clicking zoom button 2023-08-04 15:16:48 +02:00
BrowserWindow.h Ladybird+Browser: Update zoom text on menu after clicking zoom button 2023-08-04 15:16:48 +02:00
CMakeLists.txt Ladybird: Allow posting events to the Qt event loop from other threads 2023-08-04 13:49:36 -06:00
ConsoleWidget.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
ConsoleWidget.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
EventLoopImplementationQt.cpp Ladybird: Allow posting events to the Qt event loop from other threads 2023-08-04 13:49:36 -06:00
EventLoopImplementationQt.h Ladybird: Allow posting events to the Qt event loop from other threads 2023-08-04 13:49:36 -06:00
EventLoopImplementationQtEventTarget.cpp Ladybird: Allow posting events to the Qt event loop from other threads 2023-08-04 13:49:36 -06:00
EventLoopImplementationQtEventTarget.h Ladybird: Allow posting events to the Qt event loop from other threads 2023-08-04 13:49:36 -06:00
FontPlugin.cpp Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
FontPlugin.h Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
HelperProcess.cpp Ladybird: Add WebSocket server for use by Lagom networking 2023-08-03 09:55:20 +02:00
HelperProcess.h Ladybird: Add WebSocket server for use by Lagom networking 2023-08-03 09:55:20 +02:00
ImageCodecPlugin.cpp Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
ImageCodecPlugin.h Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
Info.plist Ladybird: Improve Xcode generator experience and copy helpers to bundle 2023-03-28 09:18:50 +01:00
InspectorWidget.cpp Ladybird: Fix typo in variable name 2023-07-19 21:26:43 +01:00
InspectorWidget.h Ladybird: Allow right clicking and inspecting elements 2023-05-09 06:16:58 +02:00
ladybird.nix Ladybird: Add qt6.qtmultimedia to dependencies in nix-shell script 2023-06-29 21:20:37 +01:00
ladybird.qrc Ladybird: Replace forward/back/reload SVGs with TVGs 2023-07-03 23:54:51 +02:00
LocationEdit.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
LocationEdit.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
main.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
ModelTranslator.cpp Ladybird: Define AK_DONT_REPLACE_STD via CMake rather than in every file 2023-04-24 14:49:04 +02:00
ModelTranslator.h Ladybird: Allow right clicking and inspecting elements 2023-05-09 06:16:58 +02:00
README.md Documentation: Homogenize Ladybird build instructions 2023-05-08 20:53:25 -06:00
RequestManagerQt.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
RequestManagerQt.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
Settings.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
Settings.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
SettingsDialog.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
SettingsDialog.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
Tab.cpp Ladybird+Browser: Update zoom text on menu after clicking zoom button 2023-08-04 15:16:48 +02:00
Tab.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
TVGIconEngine.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
TVGIconEngine.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
Types.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
Utilities.cpp Ladybird+LibWebView: Move Lagom code to Ladybird, Qt code to Utilities 2023-08-02 05:44:43 +02:00
Utilities.h Ladybird+LibWebView: Move Lagom code to Ladybird, Qt code to Utilities 2023-08-02 05:44:43 +02:00
WebContentView.cpp Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
WebContentView.h Ladybird: Move classes and types into the Ladybird namespace 2023-08-03 09:55:20 +02:00
WebSocketClientManagerQt.cpp Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
WebSocketClientManagerQt.h Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
WebSocketImplQt.cpp AK: Serialize URL hosts with 'concept-host-serializer' 2023-07-31 05:18:51 +02:00
WebSocketImplQt.h Ladybird: Update for AK::{String => DeprecatedString} rename 2022-12-25 07:58:58 -07:00
WebSocketQt.cpp Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00
WebSocketQt.h Ladybird: Rename classes ending with Ladybird 2023-08-03 09:55:20 +02:00

Ladybird

Ladybird is a web browser built on the LibWeb and LibJS engines from SerenityOS with a cross-platform GUI in Qt.

For more information about Ladybird, see this blog post.

See build instructions.