mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-07 08:39:22 +00:00
Revert "LibWeb: Cache intrinsic sizes across layout runs"
This reverts commit 12c6ac78e2
.
Very large performance regression when viewing GitHub repository pages.
This commit is contained in:
parent
12c6ac78e2
commit
73a4b176cf
Notes:
github-actions[bot]
2025-03-08 11:10:16 +00:00
Author: https://github.com/awesomekling
Commit: 73a4b176cf
13 changed files with 102 additions and 108 deletions
|
@ -17,13 +17,6 @@ struct LineBoxFragmentCoordinate {
|
|||
size_t fragment_index { 0 };
|
||||
};
|
||||
|
||||
struct IntrinsicSizes {
|
||||
Optional<CSSPixels> min_content_width;
|
||||
Optional<CSSPixels> max_content_width;
|
||||
HashMap<CSSPixels, Optional<CSSPixels>> min_content_height;
|
||||
HashMap<CSSPixels, Optional<CSSPixels>> max_content_height;
|
||||
};
|
||||
|
||||
class Box : public NodeWithStyleAndBoxModelMetrics {
|
||||
GC_CELL(Box, NodeWithStyleAndBoxModelMetrics);
|
||||
|
||||
|
@ -60,14 +53,6 @@ public:
|
|||
|
||||
virtual void visit_edges(Cell::Visitor&) override;
|
||||
|
||||
IntrinsicSizes& cached_intrinsic_sizes() const
|
||||
{
|
||||
if (!m_cached_intrinsic_sizes)
|
||||
m_cached_intrinsic_sizes = make<IntrinsicSizes>();
|
||||
return *m_cached_intrinsic_sizes;
|
||||
}
|
||||
void reset_cached_intrinsic_sizes() const { m_cached_intrinsic_sizes.clear(); }
|
||||
|
||||
protected:
|
||||
Box(DOM::Document&, DOM::Node*, GC::Ref<CSS::ComputedProperties>);
|
||||
Box(DOM::Document&, DOM::Node*, NonnullOwnPtr<CSS::ComputedValues>);
|
||||
|
@ -80,8 +65,6 @@ private:
|
|||
Optional<CSSPixelFraction> m_natural_aspect_ratio;
|
||||
|
||||
Vector<GC::Ref<Node>> m_contained_abspos_children;
|
||||
|
||||
OwnPtr<IntrinsicSizes> mutable m_cached_intrinsic_sizes;
|
||||
};
|
||||
|
||||
template<>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue