ladybird/Libraries/LibWeb/CSS/StyleValues
InvalidUsernameException d76f841994 LibWeb: Do not deform bitmaps partially outside the img-box
Instead of trying to manually determine which parts of a bitmap fall
within the box of the `<img>` element, just draw the whole bitmap and
let Skia clip the draw-area to the correct rectangle.

This fixes a bug where the entire bitmap was squashed into the rectangle
of the image box instead of being clipped.

With this change, image rendering is now correct enough to import some
of the WPT tests for object-fit and object-position. To get some good
coverage I have imported all tests for the `<img>` tag. I also wanted to
import a subset of the tests for the `<object>` tag, since those are
passing as well now. Unfortunately, they are flaky for unknown reasons.

This is the second attempt at this bugfix. The prior one was e055927ead
and broke image rendering whenever the page was scrolled. It has
subsequently been reverted in 16b14273d1. Hopefully this time it is not
horribly broken.
2025-03-10 17:14:13 +01:00
..
AbstractImageStyleValue.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
AngleStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
AngleStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundRepeatStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundRepeatStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundSizeStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundSizeStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BasicShapeStyleValue.cpp LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
BasicShapeStyleValue.h LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
BorderRadiusStyleValue.cpp LibWeb: Avoid unnecessary copies in BorderRadiusStyleValue::absolutize() 2025-01-28 01:12:45 +01:00
BorderRadiusStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CalculatedStyleValue.cpp LibWeb/CSS: Remove now-redundant CalculationNode::to_string() 2025-02-27 21:42:43 +01:00
CalculatedStyleValue.h LibWeb/CSS: Remove unused includes from CSSStyleValue.h 2025-02-28 13:50:13 +01:00
ColorSchemeStyleValue.cpp LibWeb/CSS: Implement the color-scheme CSS property 2025-01-08 11:18:13 +00:00
ColorSchemeStyleValue.h LibWeb/CSS: Implement the color-scheme CSS property 2025-01-08 11:18:13 +00:00
ConicGradientStyleValue.cpp LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
ConicGradientStyleValue.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
ContentStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ContentStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterDefinitionsStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterDefinitionsStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterStyleValue.cpp LibWeb: Support strings as list-style-types 2025-02-11 10:39:27 +01:00
CounterStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSColor.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSColor.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSColorValue.cpp LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSColorValue.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSHSL.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSHSL.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSHWB.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSHWB.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSKeywordValue.cpp LibWeb/CSS: Implement the color-scheme CSS property 2025-01-08 11:18:13 +00:00
CSSKeywordValue.h LibWeb: Inline CSSStyleValue::to_keyword() 2025-01-28 01:12:45 +01:00
CSSLabLike.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSLabLike.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSLCHLike.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSLCHLike.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSLightDark.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSLightDark.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSNumericValue.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
CSSRGB.cpp LibWeb/CSS: Wrap calc()-resolution data in a struct 2025-01-30 19:31:54 +01:00
CSSRGB.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
CSSUnitValue.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
CursorStyleValue.cpp LibWeb/CSS: Implement CursorStyleValue 2025-02-28 13:50:13 +01:00
CursorStyleValue.h LibWeb/CSS: Implement CursorStyleValue 2025-02-28 13:50:13 +01:00
CustomIdentStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
DisplayStyleValue.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
DisplayStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
EasingStyleValue.cpp LibWeb: Correct serialization of steps() easing functions 2024-11-18 17:39:03 -05:00
EasingStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
EdgeStyleValue.cpp LibWeb/CSS: Make CalculationNodes ref-counted 2025-01-30 19:31:54 +01:00
EdgeStyleValue.h LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
FilterValueListStyleValue.cpp LibWeb/CSS: Update CalculatedOr API to use CalculationResolutionContext 2025-01-30 19:31:54 +01:00
FilterValueListStyleValue.h LibWeb+LibGfx: Refactor CSS filters into LibGfx 2024-12-18 18:54:20 +01:00
FitContentStyleValue.h LibWeb: Parse CSS fit-content(<length-percentage>) values 2025-02-27 00:44:14 +01:00
FlexStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
FrequencyStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridAutoFlowStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridAutoFlowStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTemplateAreaStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTemplateAreaStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackPlacementStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackPlacementStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackSizeListStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackSizeListStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ImageStyleValue.cpp LibWeb: Do not deform bitmaps partially outside the img-box 2025-03-10 17:14:13 +01:00
ImageStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
IntegerStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
IntegerStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
LengthStyleValue.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
LengthStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
LinearGradientStyleValue.cpp LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
LinearGradientStyleValue.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
MathDepthStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
MathDepthStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
NumberStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
NumberStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
OpenTypeTaggedStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
OpenTypeTaggedStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
PercentageStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
PositionStyleValue.cpp LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
PositionStyleValue.h LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
RadialGradientStyleValue.cpp LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
RadialGradientStyleValue.h LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
RatioStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
RectStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
RectStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ResolutionStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ScrollbarGutterStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ShadowStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ShadowStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ShorthandStyleValue.cpp LibWeb/CSS: Don't serialize font shorthand with invalid longhand values 2025-02-12 16:00:42 +00:00
ShorthandStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
StringStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
StyleValueList.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
StyleValueList.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
TimeStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
TransformationStyleValue.cpp LibWeb/CSS: Wrap calc()-resolution data in a struct 2025-01-30 19:31:54 +01:00
TransformationStyleValue.h LibWeb/CSS: Merge ScaleStyleValue into TransformationStyleValue 2025-01-17 10:12:39 +01:00
TransitionStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
TransitionStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
UnresolvedStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
UnresolvedStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
URLStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00