1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 03:57:44 +00:00

LibWeb: Fix clip of hidden overflow when translated boxes are involved

There is a problem with current approach where overflow clip rectange is
calculated by aggregating intersection of absolute padding boxes of
boxes in containing block chain that resulting rectangle doesn't
respect transform properties.

To solve this problem `PaintableBox` is changed to store clip rectangle
saved from painter because it does respect transform properties of all
previously applied clip rectangles.
This commit is contained in:
Aliaksandr Kalenik 2023-01-25 02:57:50 +03:00 committed by Andreas Kling
parent b0846ec78a
commit ee4ba7617c
3 changed files with 18 additions and 24 deletions

View file

@ -177,6 +177,7 @@ public:
}
IntRect clip_rect() const { return state().clip_rect; }
void set_clip_rect(IntRect const& rect) { state().clip_rect = rect; }
int scale() const { return state().scale; }