1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-19 08:07:39 +00:00
serenity/Userland/Libraries/LibWeb/Layout
Andreas Kling b3d85afd92 LibWeb: Make Layout::Box::set_needs_display() work for all boxes
For inline-blocks and inline replaced elements, we previously fell into
a code path that tried to find a corresponding line box fragment to
invalidate. However, we don't need to do any of that, all we need to do
is get the absolute rect from our paintable, and invalidate that.

This makes CRC2D invalidations happen immediately instead of as a side
effect of some other invalidation.
2022-04-12 00:11:48 +02:00
..
BlockContainer.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
BlockContainer.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
BlockFormattingContext.cpp LibWeb: Let BFC compute width for block-level replaced elements 2022-04-11 01:04:09 +02:00
BlockFormattingContext.h LibWeb: Support CSS floats in inline flow 2022-03-22 19:26:51 +01:00
Box.cpp LibWeb: Make Layout::Box::set_needs_display() work for all boxes 2022-04-12 00:11:48 +02:00
Box.h LibWeb: Move Layout::Box::is_out_of_flow() to Layout::Node 2022-03-22 19:26:51 +01:00
BoxModelMetrics.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BoxModelMetrics.h LibWeb: Rename "offset" in box model metrics to "inset" 2022-03-26 17:31:01 +01:00
BreakNode.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
BreakNode.h LibWeb: Let Paintable perform the painting 2022-03-11 00:21:49 +01:00
ButtonBox.cpp LibGfx: Move other font-related files to LibGfx/Font/ 2022-04-09 23:48:18 +02:00
ButtonBox.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
CanvasBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
CanvasBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
CheckBox.cpp LibGfx: Move other font-related files to LibGfx/Font/ 2022-04-09 23:48:18 +02:00
CheckBox.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
FlexFormattingContext.cpp LibWeb: Add missing null check of independent formatting context in FFC 2022-04-11 01:20:24 +02:00
FlexFormattingContext.h LibWeb: Implement basic intrinsic sizing algorithms for flex containers 2022-04-06 11:31:08 +02:00
FormAssociatedLabelableNode.h LibWeb: Remove inheritance of FormAssociatedElement from HTMLElement 2022-03-24 03:35:11 +01:00
FormattingContext.cpp LibWeb: Create a no-op formatting context for childless replaced boxes 2022-04-11 01:03:47 +02:00
FormattingContext.h LibWeb: Rename compute_intrinsic_height() => calculate_auto_height() 2022-04-06 14:43:00 +02:00
FormattingState.cpp LibWeb: Rename "offset" in box model metrics to "inset" 2022-03-26 17:31:01 +01:00
FormattingState.h LibWeb: Rename "offset" in box model metrics to "inset" 2022-03-26 17:31:01 +01:00
FrameBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
FrameBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
ImageBox.cpp LibWeb: Don't mark non-painted images as being inside the viewport 2022-04-10 20:16:09 +02:00
ImageBox.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
InitialContainingBlock.cpp LibWeb: Ignore non-painting layout nodes when building stacking contexts 2022-04-07 17:06:02 +02:00
InitialContainingBlock.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
InlineFormattingContext.cpp LibWeb: Don't break text lines if white-space: nowrap 2022-04-03 21:51:15 +02:00
InlineFormattingContext.h LibWeb: Rewrite CSS float implementation to use offset-from-edge 2022-03-18 15:18:48 +01:00
InlineLevelIterator.cpp LibWeb: Fix double-sized box model metrics on inline replaced elements 2022-04-08 23:12:04 +02:00
InlineLevelIterator.h LibWeb: Make whitespace collapsing stateless 2022-03-27 21:56:21 +02:00
InlineNode.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
InlineNode.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
Label.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
Label.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01: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: Move mouse event and label logic from layout to painting tree 2022-03-11 00:21:49 +01:00
LayoutPosition.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LayoutPosition.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LineBox.cpp LibWeb: Respect inline-axis margins between line box fragments :^) 2022-03-09 18:47:32 +01:00
LineBox.h LibWeb: Bring CSS line-height implementation closer to spec 2022-03-24 22:52:44 +01:00
LineBoxFragment.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LineBoxFragment.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LineBuilder.cpp LibWeb: Use more precise font metrics when doing inline layout 2022-03-30 01:12:44 +02:00
LineBuilder.h LibWeb: Make text newlines in "pre" mode emit a ForcedBreak item 2022-03-26 20:04:56 +01:00
ListItemBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ListItemBox.h LibWeb: Make display: foo box constructors take the Element by pointer 2022-02-25 19:35:34 +01:00
ListItemMarkerBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ListItemMarkerBox.h LibWeb: Add some fast_is<T> helpers for hot classes on GitHub :^) 2022-03-13 18:09:43 +01:00
Node.cpp LibGfx: Move other font-related files to LibGfx/Font/ 2022-04-09 23:48:18 +02:00
Node.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
Progress.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
Progress.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
RadioButton.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
RadioButton.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
ReplacedBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ReplacedBox.h LibWeb: Add some fast_is<T> helpers for hot classes on GitHub :^) 2022-03-13 18:09:43 +01: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 SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
SVGFormattingContext.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
SVGFormattingContext.h LibWeb: Start making our layout system "transactional" 2022-02-21 18:35:12 +01:00
SVGGeometryBox.cpp LibWeb: Remove a bunch of no-longer needed #includes 2022-03-11 00:21:49 +01:00
SVGGeometryBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
SVGGraphicsBox.cpp LibWeb: Let Paintable perform the painting 2022-03-11 00:21:49 +01:00
SVGGraphicsBox.h LibWeb: Let Paintable perform the painting 2022-03-11 00:21:49 +01:00
SVGSVGBox.cpp LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
SVGSVGBox.h LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
TableBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableBox.h LibWeb: Rename Layout::BlockBox => BlockContainer 2021-10-06 20:10:36 +02:00
TableCellBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableCellBox.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
TableFormattingContext.cpp LibWeb: Include all row-groups in column width calculations 2022-04-03 23:12:13 +02:00
TableFormattingContext.h LibWeb: Size table cells using a combination of min- and max-widths 2022-03-29 00:39:57 +02:00
TableRowBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableRowBox.h LibWeb: Start work towards modern CSS "display" values 2021-10-06 19:12:52 +02:00
TableRowGroupBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableRowGroupBox.h LibWeb: Make display: foo box constructors take the Element by pointer 2022-02-25 19:35:34 +01:00
TextNode.cpp LibWeb: Ensure that TextNode::ChunkIterator emits preserved newlines 2022-03-29 03:05:11 +02:00
TextNode.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
TreeBuilder.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
TreeBuilder.h LibWeb: Add missing headers 2021-10-20 09:20:18 +01:00