1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-23 18:25:08 +00:00
serenity/Userland/Libraries/LibWeb/Layout
Aliaksandr Kalenik d1d6da6ab6 LibWeb: Resolve border radius during layout and save it in paintables
This change fixes a problem that we should not call `to_px()` to
resolve any length or percentage values during paintables traversal
because that is supposed to happen while performing layout.

Also it improves performance because before we were resolving border
radii during each painting phase but now it happens only once during
layout.
2023-12-07 10:52:47 +01:00
..
AudioBox.cpp LibWeb: Begin implementing the HTMLAudioElement for audio playback 2023-06-13 06:14:01 +02:00
AudioBox.h LibWeb: Begin implementing the HTMLAudioElement for audio playback 2023-06-13 06:14:01 +02:00
AvailableSpace.cpp LibWeb: Port AvailableSpace from DeprecatedString to String 2023-11-28 17:15:27 -05:00
AvailableSpace.h LibWeb: Port AvailableSpace from DeprecatedString to String 2023-11-28 17:15:27 -05:00
BlockContainer.cpp LibWeb/Layout: Rename BlockContainer::paint{_box => able_with_lines}() 2023-04-20 20:43:30 +02:00
BlockContainer.h LibWeb/Layout: Rename BlockContainer::paint{_box => able_with_lines}() 2023-04-20 20:43:30 +02:00
BlockFormattingContext.cpp LibWeb: Remove special handling of disclosure-open/closed markers 2023-11-24 08:37:19 +01:00
BlockFormattingContext.h LibWeb: Boxes that establish FFC or GFC should avoid overlapping floats 2023-09-22 16:48:28 +02:00
Box.cpp LibWeb: Introduce RecordingPainter to serialize painting commands 2023-10-18 10:58:42 +02:00
Box.h LibWeb: Use CSSPixelFraction to represent aspect ratios 2023-09-04 12:40:17 +02:00
BoxModelMetrics.cpp
BoxModelMetrics.h LibWeb+Browser+WebContent: Convert BoxModelMetrics to new pixel units 2023-01-05 17:42:31 +01:00
BreakNode.cpp LibWeb: Remove Layout::Node::set_inline() 2022-10-06 15:29:38 +02:00
BreakNode.h LibWeb: Don't generate ::before/::after for BR elements 2023-09-14 21:46:28 +02:00
ButtonBox.cpp LibWeb: Add CSSPixels::nearest_value_for(FloatingPoint) 2023-08-26 23:53:45 +02:00
ButtonBox.h LibWeb: Make a handful of layout node leaf classes final 2023-01-11 14:03:18 +01:00
CanvasBox.cpp LibWeb: Introduce RecordingPainter to serialize painting commands 2023-10-18 10:58:42 +02:00
CanvasBox.h LibWeb: Make a handful of layout node leaf classes final 2023-01-11 14:03:18 +01:00
CheckBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
CheckBox.h LibWeb: Make a handful of layout node leaf classes final 2023-01-11 14:03:18 +01:00
FlexFormattingContext.cpp LibWeb: Don't offset abspos children of flex container by padding twice 2023-10-08 09:06:30 +02:00
FlexFormattingContext.h LibWeb: Use CSSPixelFraction to represent aspect ratios 2023-09-04 12:40:17 +02:00
FormAssociatedLabelableNode.h LibWeb: Make the layout tree GC-allocated 2022-10-20 15:16:23 +02:00
FormattingContext.cpp LibWeb: Do not compensate padding for abspos boxes with static position 2023-11-15 23:44:05 +01:00
FormattingContext.h LibWeb: Resolve CSS inset properties when entering inline-flow elements 2023-08-15 16:37:11 +02:00
FrameBox.cpp LibWeb: Change viewport ownership from BrowsingContext to Navigable 2023-09-16 16:53:32 +02:00
FrameBox.h LibWeb: Fix iframes flickering on window resize 2023-05-15 14:08:08 +02:00
GridFormattingContext.cpp AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
GridFormattingContext.h LibWeb: Separate grid item's area rect calculation in a function in GFC 2023-10-31 08:46:17 +01:00
ImageBox.cpp LibWeb: Add CSSPixels::nearest_value_for(FloatingPoint) 2023-08-26 23:53:45 +02:00
ImageBox.h LibWeb: Don't force HTMLImageElement to have a legacy ImageLoader 2023-05-13 09:08:42 +02:00
ImageProvider.h LibGfx+LibWeb: Add ImmutableBitmap for images bitmap caching in painter 2023-11-26 12:55:43 +01:00
InlineFormattingContext.cpp LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
InlineFormattingContext.h LibWeb: Replace to_px() with to_px_or_zero() in InlineFormattingContext 2023-08-12 20:06:01 +02:00
InlineLevelIterator.cpp LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
InlineLevelIterator.h LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
InlineNode.cpp LibWeb: Make the paint tree GC-allocated 2023-01-11 12:55:00 +01:00
InlineNode.h LibWeb: Make a handful of layout node leaf classes final 2023-01-11 14:03:18 +01:00
Label.cpp AK+Everywhere: Remove the null state of DeprecatedString 2023-10-13 18:33:21 +03:30
Label.h LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00
LabelableNode.cpp LibWeb: Move mouse event and label logic from layout to painting tree 2022-03-11 00:21:49 +01:00
LabelableNode.h LibWeb: Make the layout tree GC-allocated 2022-10-20 15:16:23 +02:00
LayoutState.cpp LibWeb: Resolve border radius during layout and save it in paintables 2023-12-07 10:52:47 +01:00
LayoutState.h LibWeb: Resolve border radius during layout and save it in paintables 2023-12-07 10:52:47 +01:00
LineBox.cpp LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
LineBox.h LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
LineBoxFragment.cpp LibWeb: Port Layout::TextNode from DeprecatedString 2023-11-28 17:15:27 -05:00
LineBoxFragment.h LibWeb: Resolve border radius during layout and save it in paintables 2023-12-07 10:52:47 +01:00
LineBuilder.cpp LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
LineBuilder.h LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
ListItemBox.cpp LibWeb: Make the layout tree GC-allocated 2022-10-20 15:16:23 +02:00
ListItemBox.h LibWeb: Add fast_is<T>() for various types stood out in a profile 2023-03-11 10:46:26 +01:00
ListItemMarkerBox.cpp LibWeb: Support list-style-position 2023-06-03 05:54:49 +02:00
ListItemMarkerBox.h AK+Everywhere: Remove the null state of DeprecatedString 2023-10-13 18:33:21 +03:30
Node.cpp LibWeb: Rename "position" enum to "positioning" 2023-10-30 10:40:30 +00:00
Node.h LibWeb: Track quote-nesting level while building the layout tree 2023-09-28 14:49:10 +02:00
Progress.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
Progress.h LibWeb: Make a handful of layout node leaf classes final 2023-01-11 14:03:18 +01:00
RadioButton.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
RadioButton.h LibWeb: Make the paint tree GC-allocated 2023-01-11 12:55:00 +01:00
ReplacedBox.cpp LibWeb: Remove Layout::Node::set_inline() 2022-10-06 15:29:38 +02:00
ReplacedBox.h LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
SVGBox.cpp LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
SVGBox.h LibWeb: Make the layout tree GC-allocated 2022-10-20 15:16:23 +02:00
SVGFormattingContext.cpp LibWeb: Remove should_ensure_creation_of_paintable() SVG hack 2023-11-14 10:13:10 +01:00
SVGFormattingContext.h LibWeb: Let FormattingContext decide the automatic width of its root 2023-03-20 17:57:58 +01:00
SVGGeometryBox.cpp LibWeb: Support transforms, stroking, gradients, etc for SVG <text> 2023-11-05 02:46:46 +01:00
SVGGeometryBox.h LibWeb: Store computed SVG path data/transforms in LayoutState 2023-10-30 19:44:54 +01:00
SVGGraphicsBox.cpp LibWeb: Make SVG <g> elements generate a SVGGraphicsPaintable 2023-04-19 07:52:26 +02:00
SVGGraphicsBox.h LibWeb: Make SVG <g> elements generate a SVGGraphicsPaintable 2023-04-19 07:52:26 +02:00
SVGSVGBox.cpp LibWeb: Use CSSPixelFraction to represent aspect ratios 2023-09-04 12:40:17 +02:00
SVGSVGBox.h LibWeb: Use CSSPixelFraction to represent aspect ratios 2023-09-04 12:40:17 +02:00
SVGTextBox.cpp LibWeb: Support transforms, stroking, gradients, etc for SVG <text> 2023-11-05 02:46:46 +01:00
SVGTextBox.h LibWeb: Layout SVG <text> elements during layout (not while painting) 2023-10-30 19:44:54 +01:00
TableFormattingContext.cpp LibWeb: Set table width to GRIDMAX if calculated value is max-content 2023-10-31 18:13:14 +01:00
TableFormattingContext.h LibWeb: Implement table missing cells fixup 2023-08-20 18:38:15 +02:00
TableGrid.cpp LibWeb: Consider colgroups while calculating table grid size 2023-11-04 17:37:38 +01:00
TableGrid.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
TableWrapper.cpp LibWeb: Override width calculation for table wrappers 2023-01-14 19:22:08 +01:00
TableWrapper.h LibWeb: Override width calculation for table wrappers 2023-01-14 19:22:08 +01:00
TextNode.cpp LibWeb: Port Layout::TextNode from DeprecatedString 2023-11-28 17:15:27 -05:00
TextNode.h LibWeb: Port Layout::TextNode from DeprecatedString 2023-11-28 17:15:27 -05:00
TreeBuilder.cpp LibWeb: Add basic HTML meter element support 2023-12-04 19:54:43 +00:00
TreeBuilder.h LibWeb: Add ol start and li value attributes support 2023-11-09 16:10:54 +01:00
VideoBox.cpp LibWeb: Use CSSPixelFraction to represent aspect ratios 2023-09-04 12:40:17 +02:00
VideoBox.h LibWeb: Move viewport subscriptions from BrowsingContext to Document 2023-08-23 20:14:20 +02:00
Viewport.cpp LibWeb: Move painting logic from Layout::Viewport to ViewportPaintable 2023-08-20 05:02:59 +02:00
Viewport.h LibWeb: Move painting logic from Layout::Viewport to ViewportPaintable 2023-08-20 05:02:59 +02:00