1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 05:48:12 +00:00
serenity/Userland/Libraries/LibWeb/Painting
MacDue c8c065b6b0 LibWeb+LibGfx: Migrate (most of) the CSS gradient painting to LibGfx
This moves the CSS gradient painting to the painter creating:

 - Painter::fill_rect_with_linear_gradient()
 - Painter::fill_rect_with_conic_gradient()
 - Painter::fill_rect_with_radial_gradient()

This has a few benefits:
 - The gradients can now easily respect the painter scale
 - The Painter::fill_pixels() escape hatch can be removed
 - We can remove the old fixed color stop gradient code
    - The old functions are  now just a shim
 - Anywhere can now easily use this gradient painting code!

This only leaves the color stop resolution in LibWeb (which is fine).
Just means in LibGfx you have to actually specify color stop positions.

(Also while here add a small optimization to avoid generating
excessively long gradient lines)
2023-01-10 10:25:58 +01:00
..
BackgroundPainting.cpp LibWeb: Convert AbstractImageStyleValue to new pixel units 2023-01-05 17:42:31 +01:00
BackgroundPainting.h LibWeb: Convert background painting to new pixel units 2022-12-14 16:47:57 +00:00
BorderPainting.cpp LibWeb: Convert border painting to new pixel units 2022-12-14 16:47:57 +00:00
BorderPainting.h LibWeb: Convert border painting to new pixel units 2022-12-14 16:47:57 +00:00
BorderRadiusCornerClipper.cpp LibWeb: Convert border painting to new pixel units 2022-12-14 16:47:57 +00:00
BorderRadiusCornerClipper.h LibWeb: Convert border painting to new pixel units 2022-12-14 16:47:57 +00:00
ButtonPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
ButtonPaintable.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
CanvasPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
CanvasPaintable.h LibWeb: Move PaintingBox to its own .cpp and .h files 2022-03-11 00:21:49 +01:00
CheckBoxPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
CheckBoxPaintable.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
FilterPainting.cpp LibWeb: Convert backdrop-filter painting to new pixel units 2022-12-14 16:47:57 +00:00
FilterPainting.h LibWeb: Convert backdrop-filter painting to new pixel units 2022-12-14 16:47:57 +00:00
GradientPainting.cpp LibWeb+LibGfx: Migrate (most of) the CSS gradient painting to LibGfx 2023-01-10 10:25:58 +01:00
GradientPainting.h LibWeb+LibGfx: Migrate (most of) the CSS gradient painting to LibGfx 2023-01-10 10:25:58 +01:00
ImagePaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
ImagePaintable.h LibWeb: Move PaintingBox to its own .cpp and .h files 2022-03-11 00:21:49 +01:00
InlinePaintable.cpp LibWeb+Browser+WebContent: Convert BoxModelMetrics to new pixel units 2023-01-05 17:42:31 +01:00
InlinePaintable.h LibWeb: Move PaintingBox to its own .cpp and .h files 2022-03-11 00:21:49 +01:00
LabelablePaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
LabelablePaintable.h LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00
MarkerPaintable.cpp LibWeb: Convert AbstractImageStyleValue to new pixel units 2023-01-05 17:42:31 +01:00
MarkerPaintable.h LibWeb: Move PaintingBox to its own .cpp and .h files 2022-03-11 00:21:49 +01:00
NestedBrowsingContextPaintable.cpp LibWeb+WebContent: Convert BrowsingContext to new pixel units 2023-01-05 17:42:31 +01:00
NestedBrowsingContextPaintable.h LibWeb: Move PaintingBox to its own .cpp and .h files 2022-03-11 00:21:49 +01:00
Paintable.cpp LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00
Paintable.h LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00
PaintableBox.cpp LibWeb: Resolve Lengths to CSSPixels 2023-01-05 17:42:31 +01:00
PaintableBox.h LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
PaintContext.cpp LibWeb: Split PaintContext::viewport_rect() into device/css variants 2022-12-14 16:47:57 +00:00
PaintContext.h LibWeb: Split PaintContext::viewport_rect() into device/css variants 2022-12-14 16:47:57 +00:00
ProgressPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
ProgressPaintable.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
RadioButtonPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
RadioButtonPaintable.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
ShadowPainting.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
ShadowPainting.h LibWeb: Convert shadow painting to new pixel units 2022-12-14 16:47:57 +00:00
StackingContext.cpp LibWeb+WebContent: Use new String class in CSS::StyleValue 2023-01-09 11:09:31 +01:00
StackingContext.h LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00
SVGGeometryPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
SVGGeometryPaintable.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
SVGGraphicsPaintable.cpp LibWeb: Clip hidden overflow by absolute rect of containing block 2022-11-15 22:53:47 +01:00
SVGGraphicsPaintable.h LibWeb: Clip hidden overflow by absolute rect of containing block 2022-11-15 22:53:47 +01:00
SVGPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
SVGPaintable.h LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
SVGSVGPaintable.cpp LibWeb: Convert Paintable coordinates to new pixel units 2022-12-14 16:47:57 +00:00
SVGSVGPaintable.h LibWeb: Clip hidden overflow by absolute rect of containing block 2022-11-15 22:53:47 +01:00
TextPaintable.cpp LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00
TextPaintable.h LibWeb+WebContent+headless-browser: Use CSSPixels for PageClient events 2022-12-10 12:03:19 +00:00