ladybird/Libraries/LibWeb/Page
Zaggy1024 2e54c18fb3 LibWeb: Use a queue to process fullscreen request completions
Instead of immediately firing fullscreenchange, defer that until
WebContent's client has confirmed that it is in fullscreen for the
content. The fullscreenchange is fired by the viewport change, so in
cases where the fullscreen transition is instantaneous (i.e. the
fullscreen state is entered at the exact moment the viewport expands),
the resize event should precede the fullscreenchange event, as the spec
requires.

This fixes the WPT element-request-fullscreen-timing.html test, which
was previously succeeding by accident because we were immediately
fullscreenchange upon requestFullscreen() being called, instead of
following spec and doing the viewport (window) resize in parallel. The
WPT test was actually initially intended to assert that the
fullscreenchange event follows the resize event, but the WPT runner
didn't actually have a different resolution for normal vs fullscreen
viewports, so the resize event doesn't actually fire in their setup. In
our headless mode, the default viewport is 800x600, and the fullscreen
viewport is 1920x1080, so we do fire a resize event when entering
fullscreen. Therefore, that imported test is reverted to assert that
the resize precedes the fullscreenchange.
2026-03-17 18:58:37 -05:00
..
AutoScrollHandler.cpp LibWeb: Store visual context nodes in arena-based tree 2026-03-11 11:16:36 +01:00
AutoScrollHandler.h LibWeb: Tie auto scrolling into the rendering loop 2026-02-13 22:44:17 +01:00
DragAndDropEventHandler.cpp LibWeb: Include KeyCode.h where it's used 2026-02-23 07:27:31 +01:00
DragAndDropEventHandler.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
ElementResizeAction.cpp LibWeb: Remove Document.h include from Layout/Node.h 2026-02-08 18:51:13 +01:00
ElementResizeAction.h LibWeb: Implement resizing for eligible elements and update scrollbars 2026-01-12 11:00:14 +00:00
EventHandler.cpp UI/AppKit+LibWeb: Handle the Ctrl+click context menu in EventHandler 2026-03-17 04:01:29 -05:00
EventHandler.h LibWeb: Use GC::Weak for the legacy mouse pointer's hovered node 2026-03-17 17:39:13 -05:00
EventResult.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
InputEvent.cpp Everywhere: Consolidate double/triple click handling to use click count 2026-03-17 04:01:29 -05:00
InputEvent.h Everywhere: Consolidate double/triple click handling to use click count 2026-03-17 04:01:29 -05:00
Page.cpp LibWeb: Use a queue to process fullscreen request completions 2026-03-17 18:58:37 -05:00
Page.h LibWeb: Use a queue to process fullscreen request completions 2026-03-17 18:58:37 -05:00
ViewportIsFullscreen.h Everywhere: Add an is_fullscreen parameter to set_viewport 2026-03-17 18:58:37 -05:00