1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:58:11 +00:00
serenity/Userland/Libraries/LibWeb/Layout
Andreas Kling 92c08ad4ac LibWeb: Add SVGFormattingContext to handle SVG box trees
Instead of trying to layout SVG boxes as if they are regular CSS boxes,
let's invent an "SVG formatting context" and let it manage SVG boxes.

To facilitate this, Layout::SVGBox no longer inherits from ReplacedBox,
and is instead a simple, "inline-block" style BlockBox.
2021-09-18 01:39:59 +02:00
..
BlockBox.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
BlockBox.h AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
BlockFormattingContext.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
BlockFormattingContext.h LibWeb: Expose size calculation of BlockFormattingContext 2021-06-06 01:46:06 +04:30
Box.cpp LibGfx: Don't crash on request to draw impossible circle segment 2021-09-17 23:51:03 +02:00
Box.h LibWeb: Avoid some redundant calls to Layout::Box::absolute_rect() 2021-09-15 14:18:17 +02:00
BoxModelMetrics.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BoxModelMetrics.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BreakNode.cpp LibWeb: Make Layout::Node::paint() pure virtual 2021-09-15 15:25:47 +02:00
BreakNode.h LibWeb: Make Layout::Node::paint() pure virtual 2021-09-15 15:25:47 +02:00
ButtonBox.cpp LibWeb: Rename Web::Frame to Web::BrowsingContext 2021-05-30 12:39:53 +02:00
ButtonBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CanvasBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CanvasBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CheckBox.cpp LibWeb: Rename Web::Frame to Web::BrowsingContext 2021-05-30 12:39:53 +02:00
CheckBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
FlexFormattingContext.cpp LibWeb: Flexbox: Take parent's width in the flex container for layouting 2021-09-17 23:51:03 +02:00
FlexFormattingContext.h LibWeb: Implement "out-of-flow" property of Layout Box 2021-09-15 13:55:25 +02:00
FormattingContext.cpp LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
FormattingContext.h LibWeb: Implement "out-of-flow" property of Layout Box 2021-09-15 13:55:25 +02:00
FrameBox.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
FrameBox.h AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
ImageBox.cpp LibWeb: Rename frame_did_set_viewport_rect() => browsing_context_*() 2021-09-08 11:12:22 +02:00
ImageBox.h LibWeb: Rename frame_did_set_viewport_rect() => browsing_context_*() 2021-09-08 11:12:22 +02:00
InitialContainingBlock.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
InitialContainingBlock.h LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
InlineFormattingContext.cpp AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
InlineFormattingContext.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
InlineNode.cpp LibWeb: Paint inspection outline for InlineNodes :^) 2021-08-23 15:59:29 +02:00
InlineNode.h LibWeb: Paint inspection outline for InlineNodes :^) 2021-08-23 15:59:29 +02:00
Label.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
Label.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LabelableNode.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LayoutPosition.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LayoutPosition.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LineBox.cpp LibWeb: Properly handle newlines at the end of LineBoxes 2021-08-29 01:43:09 +02:00
LineBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LineBoxFragment.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
LineBoxFragment.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ListItemBox.cpp Everywhere: Use tobyase@serenityos.org for my copyright headers 2021-08-09 21:43:05 +02:00
ListItemBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ListItemMarkerBox.cpp Everywhere: Use tobyase@serenityos.org for my copyright headers 2021-08-09 21:43:05 +02:00
ListItemMarkerBox.h Everywhere: Use tobyase@serenityos.org for my copyright headers 2021-08-09 21:43:05 +02:00
Node.cpp LibWeb: Replace hard-coded defaults in Node::apply_style() 2021-09-17 23:06:45 +02:00
Node.h LibWeb: Make Layout::Node::paint() pure virtual 2021-09-15 15:25:47 +02:00
RadioButton.cpp LibWeb: Rename Web::Frame to Web::BrowsingContext 2021-05-30 12:39:53 +02:00
RadioButton.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ReplacedBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ReplacedBox.h AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
SVGBox.cpp LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGBox.h LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGFormattingContext.cpp LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGFormattingContext.h LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGGraphicsBox.cpp AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
SVGGraphicsBox.h LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGPathBox.cpp LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGPathBox.h LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGSVGBox.cpp LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
SVGSVGBox.h LibWeb: Add SVGFormattingContext to handle SVG box trees 2021-09-18 01:39:59 +02:00
TableBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableCellBox.cpp AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
TableCellBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableFormattingContext.cpp LibWeb: Rename Web::Frame to Web::BrowsingContext 2021-05-30 12:39:53 +02:00
TableFormattingContext.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowGroupBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowGroupBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TextNode.cpp LibWeb: Make Layout::Node::paint() pure virtual 2021-09-15 15:25:47 +02:00
TextNode.h LibWeb: Make Layout::Node::paint() pure virtual 2021-09-15 15:25:47 +02:00
TreeBuilder.cpp LibWeb: Rename InitialContainingBlockBox => InitialContainingBlock 2021-09-08 11:27:46 +02:00
TreeBuilder.h LibWeb: Ignore svg elements outside of <svg> when building layout tree 2021-08-05 20:17:08 +02:00