mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-01 16:58:52 +00:00
LibWeb: Add basic "top layer" support
Implements the "top layer" concept from "CSS Positioned Layout Module Level 4" specification. - The tree builder is modified to ensure that layout nodes created by top layer elements are children of the viewport. - Implements missing steps in `showModal()` to add an element top top layer. - Implements missing steps in `close()` to remove an element from top layer. Further steps could be: - Add support for `::backdrop` pseudo-element. - Implement the "inert" concept from HTML spec to block hit-testing when element from top layer is displayed.
This commit is contained in:
parent
41d5fa2b07
commit
ca363f0024
Notes:
sideshowbarker
2024-07-17 08:35:21 +09:00
Author: https://github.com/kalenikaliaksandr
Commit: ca363f0024
Pull-request: https://github.com/SerenityOS/serenity/pull/23753
10 changed files with 198 additions and 5 deletions
|
@ -352,6 +352,11 @@ void EventLoop::process()
|
|||
// If there are eligible tasks in the queue, schedule a new round of processing. :^)
|
||||
if (m_task_queue.has_runnable_tasks() || (!m_microtask_queue.is_empty() && !m_performing_a_microtask_checkpoint))
|
||||
schedule();
|
||||
|
||||
// For each doc of docs, process top layer removals given doc.
|
||||
for_each_fully_active_document_in_docs([&](DOM::Document& document) {
|
||||
document.process_top_layer_removals();
|
||||
});
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/webappapis.html#queue-a-global-task
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue