1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 08:47:34 +00:00

LibAccelGfx+LibWeb: Add basic push/pop stacking context implementation

With basic PushStackingContext and PopStackingContext commands
implementation scrolling works again after changes being made in:
4e04f81626
This commit is contained in:
Aliaksandr Kalenik 2023-11-20 21:57:50 +01:00 committed by Andreas Kling
parent 2579b01be8
commit 1b0cc67a28
2 changed files with 5 additions and 3 deletions

View file

@ -39,6 +39,7 @@ public:
[[nodiscard]] Gfx::AffineTransform const& transform() const { return state().transform; } [[nodiscard]] Gfx::AffineTransform const& transform() const { return state().transform; }
void set_transform(Gfx::AffineTransform const& transform) { state().transform = transform; } void set_transform(Gfx::AffineTransform const& transform) { state().transform = transform; }
void translate(Gfx::FloatPoint translation) { state().transform.translate(translation); }
void fill_rect(Gfx::FloatRect, Gfx::Color); void fill_rect(Gfx::FloatRect, Gfx::Color);
void fill_rect(Gfx::IntRect, Gfx::Color); void fill_rect(Gfx::IntRect, Gfx::Color);

View file

@ -75,15 +75,16 @@ CommandResult PaintingCommandExecutorGPU::set_font(Gfx::Font const&)
return CommandResult::Continue; return CommandResult::Continue;
} }
CommandResult PaintingCommandExecutorGPU::push_stacking_context(float, bool, Gfx::IntRect const&, Gfx::IntPoint, CSS::ImageRendering, StackingContextTransform, Optional<StackingContextMask>) CommandResult PaintingCommandExecutorGPU::push_stacking_context(float, bool, Gfx::IntRect const&, Gfx::IntPoint post_transform_translation, CSS::ImageRendering, StackingContextTransform, Optional<StackingContextMask>)
{ {
// FIXME painter().save();
painter().translate(post_transform_translation.to_type<float>());
return CommandResult::Continue; return CommandResult::Continue;
} }
CommandResult PaintingCommandExecutorGPU::pop_stacking_context() CommandResult PaintingCommandExecutorGPU::pop_stacking_context()
{ {
// FIXME painter().restore();
return CommandResult::Continue; return CommandResult::Continue;
} }