Open RubenKelevra opened 4 months ago
Keep in mind the browser is nowhere near the speeds of existing ones, but the images taking so long is interesting.
Seems to be doing a bit better now, but it was still very slow. And the layout is... unusual. :laughing:
@AtkinsSJ yeah, I just tested Ladybird (34261e54901) and it indeed looks better, after a minute or so we even get 2 fps, sometimes. But in the beginning theres a frame rendered every 5-10 seconds or so.
Screencast_20241013_175932.webm
Platform: KDE/Wayland/CachyOS
As of 64747c03978406d5f83c5675ff7f599baabb5c18, the page crashes Ladybird:
ninja: Entering directory `/Users/pavel/Develop/ladybird/Build/ladybird'
[0/2] Re-checking globbed directories...
ninja: no work to do.
Ladybird PID file '/Users/pavel/Library/Application Support/Ladybird.pid' exists with PID 69892, but process cannot be found
2024-11-04 00:58:23.067 Ladybird[70122:4475438] +[IMKClient subclass]: chose IMKClient_Modern
2024-11-04 00:58:23.168 Ladybird[70122:4475438] +[IMKInputSession subclass]: chose IMKInputSession_Modern
196554.328 WebContent(70139): FIXME: Unimplemented IDL interface: 'ServiceWorkerContainerPrototype.controller'
196554.332 WebContent(70139): FIXME: Unimplemented IDL interface: 'ServiceWorkerContainerPrototype.getRegistrations'
196554.333 WebContent(70139): FIXME: Unimplemented IDL interface: 'ServiceWorkerContainerPrototype.controller'
196554.335 WebContent(70139): Potential FIXME: Returning from PerformanceObserver::observe() as we don't support the PerformanceEntry type 'largest-contentful-paint'
196554.336 WebContent(70139): FIXME: Unimplemented IDL interface: 'ServiceWorkerContainerPrototype.controller'
196554.572 WebContent(70139): HTMLScriptElement: Refusing to run script because the element is not connected.
196554.572 WebContent(70139): HTMLScriptElement: Refusing to run script because the element is not connected.
196554.608 WebContent(70139): FIXME: Unimplemented Navigator.maxTouchPoints
196554.745 Ladybird(70122): WebContent process crashed!
196554.745 Ladybird(70122): Consider raising an issue at https://github.com/LadybirdBrowser/ladybird/issues/new/choose
VERIFICATION FAILED: !is_error() at /Users/pavel/Develop/ladybird/AK/Error.h:187
0 liblagom-ak.0.0.0.dylib 0x0000000100aea0c0 ak_verification_failed + 216
1 Ladybird 0x00000001004b1224 _ZN2AK8FunctionIFNS_13NonnullRefPtrIN7WebView16WebContentClientEEEvEE15CallableWrapperIZ38-[LadybirdWebView setWebViewCallbacks]E3$_4E4callEv + 228
2 Ladybird 0x00000001004b9f50 AK::Function<AK::NonnullRefPtr<WebView::WebContentClient> ()>::operator()() const + 76
3 Ladybird 0x00000001004b98e4 Ladybird::WebViewBridge::initialize_client(WebView::ViewImplementation::CreateNewClient) + 164
4 liblagom-webview.0.0.0.dylib 0x00000001007f0778 WebView::ViewImplementation::handle_web_content_process_crash() + 240
5 liblagom-core.0.0.0.dylib 0x00000001006de708 AK::Function<void ()>::operator()() const + 76
6 liblagom-core.0.0.0.dylib 0x00000001006f2270 Core::ThreadEventQueue::process() + 376
7 Ladybird 0x000000010049a684 -[Application sendEvent:] + 68
8 AppKit 0x000000019857089c -[NSApplication _handleEvent:] + 60
9 AppKit 0x0000000198016b08 -[NSApplication run] + 520
10 Ladybird 0x00000001004a1694 Ladybird::CFEventLoopImplementation::exec() + 32
11 liblagom-core.0.0.0.dylib 0x00000001006dbe7c Core::EventLoop::exec() + 72
12 liblagom-webview.0.0.0.dylib 0x00000001007cbf80 WebView::Application::execute() + 24
13 Ladybird 0x0000000100490f30 serenity_main(Main::Arguments) + 1100
14 Ladybird 0x00000001004c73f8 main + 216
15 dyld 0x0000000194090274 start + 2840
Meta/ladybird.sh: line 192: 70122 Trace/BPT trap: 5 "$BUILD_DIR/bin/Ladybird.app/Contents/MacOS/$lagom_target" "${lagom_args[@]}"
What is worse, it doesn't crash when lldb is attached to the process....
I'm using https://github.com/LadybirdBrowser/ladybird/commit/09f76098b06804efb1f82f2244338ad4a97c9cfb of Ladybird under Linux x86_64 and found that it has a very hard time rendering the website of the largest mobile provider in Germany (o2.de), which is quite complex.
First of all it takes an awful long time for first paint, and then it stalls and then drops in a couple of elements and stalls again, and then it adds the rest.
While the rendering is completely messed up, images missing, layout broken etc.
Sure, the layout etc. may be not fully supported (yet) but the browser should not stall like that.
Screencast_20240713_013835.webm
If you keep Ladybird open on this page for a very long time, it will eventually fill nearly all of those empty boxes with images, but the layout stays broken.
Firefox on the same connection takes about 6 seconds to load the webpage completely.