1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-10 10:01:13 +09:00
ladybird/Userland/Libraries/LibWeb
Andreas Kling 23a08fd35a LibWeb: Start absolutizing lengths after performing the CSS cascade
Once we've performed the cascade on a set of values for an element,
we should have enough information to resolve/absolutize some lengths.

Basically, any CSS length that isn't "auto" or a percentage can be
turned into an absolute length (in pixels) as long as we have the
following information:

- The viewport rect
- The parent element's font
- The document element's font
- The element's own font

To ensure that we can absolutize lengths relative to the element's own
font, we now do a separate first pass where font-related properties are
defaulted (in the cascade spec sense of the word) and become usable.

There's a lot more work to do here, but this should open up a lot of
simplification in layout code, since it will no longer need to care
about relative lengths. Layout still needs to resolve percentages, since
we can't do that for some properties until the containing block
dimensions are known.
2021-09-24 15:01:49 +02:00
..
Bindings LibWeb: Return undefined from event handler setters, not an empty value 2021-09-24 13:19:13 +02:00
Cookie Everywhere: Make use of container version of all_of 2021-08-03 10:46:43 +02:00
CSS LibWeb: Start absolutizing lengths after performing the CSS cascade 2021-09-24 15:01:49 +02:00
DOM LibWeb: Rename "Computed" CSSStyleDeclaration => "Resolved" 2021-09-24 15:01:49 +02:00
DOMParsing LibWeb: Make the innerHTML setter spec compliant 2021-09-14 02:09:18 +02:00
DumpLayoutTree LibWeb+WebContent: Port DumpLayoutTree to OutOfProcessWebView 2021-09-08 11:07:14 +02:00
HighResolutionTime LibWeb: Rename DOM::Window::document() => associated_document() 2021-09-09 21:25:10 +02:00
HTML LibWeb: Paint bitmaps with rounded_int_rect(), not enclosing_int_rect() 2021-09-21 16:53:46 +02:00
Layout LibWeb: Replace last couple of StyleValue casts with as_foo() 2021-09-24 15:01:43 +02:00
Loader LibWeb: Log resource load success before invoking success callback 2021-09-22 14:35:13 +02:00
NavigationTiming Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Page LibWeb: Add the Web::URL namespace and move URLEncoder to it 2021-09-13 01:43:10 +02:00
Painting LibWeb: Move border-painting code out of Box 2021-09-19 22:53:35 +02:00
RequestIdleCallback LibWeb: Add the IdleDeadline interface from the RequestIdleCallback spec 2021-09-17 13:20:18 +02:00
Scripts Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
SVG LibWeb: Add a bare-bones SVG <g> element 2021-09-18 01:39:59 +02:00
Tests LibWeb: Add support HTMLScriptElement.supports 2021-09-03 23:11:58 +02:00
UIEvents AK: Rename adopt() to adopt_ref() 2021-04-23 16:46:57 +02:00
URL LibWeb: Add the URL::{protocol, pathname, search, hash} attributes 2021-09-14 00:14:45 +02:00
WebAssembly LibJS: Convert Value::invoke and VM::call to ThrowCompletionOr 2021-09-23 23:59:13 +03:00
XHR LibWeb: Implement XMLHttpRequest.getAllResponseHeaders() 2021-09-19 22:34:44 +02:00
CMakeLists.txt LibWeb: Rename "Computed" CSSStyleDeclaration => "Resolved" 2021-09-24 15:01:49 +02:00
DOMTreeModel.cpp LibWeb: Implement DOMTreeModel::index_for_node() 2021-09-02 22:16:41 +02:00
DOMTreeModel.h LibWeb: Implement DOMTreeModel::index_for_node() 2021-09-02 22:16:41 +02:00
Dump.cpp LibWeb: Display actual (float) values when dumping layout 2021-09-21 16:53:46 +02:00
Dump.h LibWeb: Convert CSS Dump, Selector, & SelectorEngine to east const 2021-07-14 13:31:00 +02:00
FontCache.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
FontCache.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Forward.h LibWeb: Clarify StyleValue API with new naming scheme 2021-09-24 15:01:43 +02:00
InProcessWebView.cpp LibWeb: Add the Web::URL namespace and move URLEncoder to it 2021-09-13 01:43:10 +02:00
InProcessWebView.h LibWeb: Add the Web::URL namespace and move URLEncoder to it 2021-09-13 01:43:10 +02:00
Namespace.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Namespace.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Origin.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
OutOfProcessWebView.cpp LibWeb: Don't request WebContent repaint while we have repaints pending 2021-09-17 14:54:51 +02:00
OutOfProcessWebView.h LibWeb: Don't request WebContent repaint while we have repaints pending 2021-09-17 14:54:51 +02:00
QualifiedName.h LibWeb: Use HTML-uppercased qualified name for the Element node name 2021-05-04 23:24:03 +01:00
StylePropertiesModel.cpp Everywhere: Use my shiny new serenityos.org email :^) 2021-09-03 12:22:36 +02:00
StylePropertiesModel.h Everywhere: Use my shiny new serenityos.org email :^) 2021-09-03 12:22:36 +02:00
TreeNode.h LibWeb: Use default instead of an empty constructor/destructor 2021-09-16 17:17:13 +02:00
WebContentClient.cpp LibWeb: Add the Web::URL namespace and move URLEncoder to it 2021-09-13 01:43:10 +02:00
WebContentClient.h LibWeb: Add the Web::URL namespace and move URLEncoder to it 2021-09-13 01:43:10 +02:00
WebViewHooks.h LibWeb: Add the Web::URL namespace and move URLEncoder to it 2021-09-13 01:43:10 +02:00