mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 10:27:34 +00:00
LibWeb: Make StackingContext functions static
where possible
These don't need to be member functions, and this will make it easier to use these to paint <mask> elements (into an off-screen mask bitmap).
This commit is contained in:
parent
dc58b5f418
commit
b340a85523
2 changed files with 8 additions and 8 deletions
|
@ -74,7 +74,7 @@ static PaintPhase to_paint_phase(StackingContext::StackingContextPaintPhase phas
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void StackingContext::paint_node_as_stacking_context(Paintable const& paintable, PaintContext& context) const
|
void StackingContext::paint_node_as_stacking_context(Paintable const& paintable, PaintContext& context)
|
||||||
{
|
{
|
||||||
paint_node(paintable, context, PaintPhase::Background);
|
paint_node(paintable, context, PaintPhase::Background);
|
||||||
paint_node(paintable, context, PaintPhase::Border);
|
paint_node(paintable, context, PaintPhase::Border);
|
||||||
|
@ -88,12 +88,12 @@ void StackingContext::paint_node_as_stacking_context(Paintable const& paintable,
|
||||||
paint_descendants(context, paintable, StackingContextPaintPhase::FocusAndOverlay);
|
paint_descendants(context, paintable, StackingContextPaintPhase::FocusAndOverlay);
|
||||||
}
|
}
|
||||||
|
|
||||||
void StackingContext::paint_descendants(PaintContext& context, Paintable const& paintable, StackingContextPaintPhase phase) const
|
void StackingContext::paint_descendants(PaintContext& context, Paintable const& paintable, StackingContextPaintPhase phase)
|
||||||
{
|
{
|
||||||
paintable.before_children_paint(context, to_paint_phase(phase));
|
paintable.before_children_paint(context, to_paint_phase(phase));
|
||||||
paintable.apply_clip_overflow_rect(context, to_paint_phase(phase));
|
paintable.apply_clip_overflow_rect(context, to_paint_phase(phase));
|
||||||
|
|
||||||
paintable.for_each_child([this, &context, phase](auto& child) {
|
paintable.for_each_child([&context, phase](auto& child) {
|
||||||
auto* stacking_context = child.stacking_context_rooted_here();
|
auto* stacking_context = child.stacking_context_rooted_here();
|
||||||
|
|
||||||
if (child.is_positioned()) {
|
if (child.is_positioned()) {
|
||||||
|
@ -176,7 +176,7 @@ void StackingContext::paint_descendants(PaintContext& context, Paintable const&
|
||||||
paintable.after_children_paint(context, to_paint_phase(phase));
|
paintable.after_children_paint(context, to_paint_phase(phase));
|
||||||
}
|
}
|
||||||
|
|
||||||
void StackingContext::paint_child(PaintContext& context, StackingContext const& child) const
|
void StackingContext::paint_child(PaintContext& context, StackingContext const& child)
|
||||||
{
|
{
|
||||||
auto parent_paintable = child.paintable_box().parent();
|
auto parent_paintable = child.paintable_box().parent();
|
||||||
if (parent_paintable)
|
if (parent_paintable)
|
||||||
|
@ -221,7 +221,7 @@ void StackingContext::paint_internal(PaintContext& context) const
|
||||||
|
|
||||||
// Draw positioned descendants with z-index `0` or `auto` in tree order. (step 8)
|
// Draw positioned descendants with z-index `0` or `auto` in tree order. (step 8)
|
||||||
// FIXME: There's more to this step that we have yet to understand and implement.
|
// FIXME: There's more to this step that we have yet to understand and implement.
|
||||||
paintable_box().for_each_in_subtree([this, &context](Paintable const& paintable) {
|
paintable_box().for_each_in_subtree([&context](Paintable const& paintable) {
|
||||||
auto const& z_index = paintable.computed_values().z_index();
|
auto const& z_index = paintable.computed_values().z_index();
|
||||||
|
|
||||||
if (!paintable.is_positioned() || (z_index.has_value() && z_index.value() != 0)) {
|
if (!paintable.is_positioned() || (z_index.has_value() && z_index.value() != 0)) {
|
||||||
|
|
|
@ -29,8 +29,8 @@ public:
|
||||||
FocusAndOverlay,
|
FocusAndOverlay,
|
||||||
};
|
};
|
||||||
|
|
||||||
void paint_node_as_stacking_context(Paintable const&, PaintContext&) const;
|
static void paint_node_as_stacking_context(Paintable const&, PaintContext&);
|
||||||
void paint_descendants(PaintContext&, Paintable const&, StackingContextPaintPhase) const;
|
static void paint_descendants(PaintContext&, Paintable const&, StackingContextPaintPhase);
|
||||||
void paint(PaintContext&) const;
|
void paint(PaintContext&) const;
|
||||||
Optional<HitTestResult> hit_test(CSSPixelPoint, HitTestType) const;
|
Optional<HitTestResult> hit_test(CSSPixelPoint, HitTestType) const;
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ private:
|
||||||
Vector<StackingContext*> m_children;
|
Vector<StackingContext*> m_children;
|
||||||
size_t m_index_in_tree_order { 0 };
|
size_t m_index_in_tree_order { 0 };
|
||||||
|
|
||||||
void paint_child(PaintContext&, StackingContext const&) const;
|
static void paint_child(PaintContext&, StackingContext const&);
|
||||||
void paint_internal(PaintContext&) const;
|
void paint_internal(PaintContext&) const;
|
||||||
Gfx::FloatMatrix4x4 get_transformation_matrix(CSS::Transformation const& transformation) const;
|
Gfx::FloatMatrix4x4 get_transformation_matrix(CSS::Transformation const& transformation) const;
|
||||||
Gfx::FloatMatrix4x4 combine_transformations(Vector<CSS::Transformation> const& transformations) const;
|
Gfx::FloatMatrix4x4 combine_transformations(Vector<CSS::Transformation> const& transformations) const;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue