ladybird/Libraries/LibGfx
Aliaksandr Kalenik 21fcafe605 LibGfx: Reduce Painter to the bitmap-compositing interface
After 2D canvas stops using Gfx::Painter as its drawing backend, the
base Painter interface only needs to describe bitmap compositing work
that still happens outside PainterSkia. Narrow the interface to
clear_rect, fill_rect and draw_bitmap, which covers GIF/APNG frame
compositing, CSS cursor bitmap painting, canvas readback and the Android
UI blit.
2026-06-13 20:41:03 +02:00
..
Font LibGfx: Cache font-independent shape data in the font shaping cache 2026-06-09 17:35:54 +02:00
ImageFormats LibGfx+LibWeb: Remove TIFF image decoding 2026-06-12 22:37:49 +02:00
Rust Rust: Set import granularity to Item 2026-05-28 06:52:18 +02:00
AffineTransform.cpp LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
AffineTransform.h LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
AntiAliasing.h LibGfx+LibWeb: Move display-list corner types to LibGfx 2026-05-12 16:30:26 +02:00
Bitmap.cpp LibGfx: Set maximum bitmap dimensions to 65535 2026-05-05 20:13:43 +02:00
Bitmap.h LibGfx+LibWeb: Move SVG mask/clip composition from CPU to GPU 2026-01-23 16:23:06 +01:00
BitmapExport.cpp LibGfx: Move bitmap export out of ImmutableBitmap 2026-05-05 14:39:17 -05:00
BitmapExport.h LibGfx: Move bitmap export out of ImmutableBitmap 2026-05-05 14:39:17 -05:00
BitmapSequence.cpp LibGfx: Preserve single-frame BitmapSequence backing 2026-05-25 19:46:46 +02:00
BitmapSequence.h LibGfx+LibWeb: Remove unused code from Gfx::Point/Rect/Size 2026-03-31 10:37:23 +02:00
BoundingBox.h LibGfx: Add BoundingBox::has_no_points for none vs zero-area rect 2026-04-15 10:26:53 +01:00
CanvasCommandList.cpp LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
CanvasCommandList.h LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
CanvasCommandPlayer.cpp LibGfx+LibWeb: Paint 2D canvas via record-and-replay 2026-06-13 20:41:03 +02:00
CanvasCommandPlayer.h LibGfx+LibWeb: Paint 2D canvas via record-and-replay 2026-06-13 20:41:03 +02:00
CMakeLists.txt LibGfx: Add CanvasCommandPlayer 2026-06-13 20:41:03 +02:00
CMYKBitmap.cpp LibGfx: Use NonnullRefPtr<Bitmap> for frame descriptors 2025-06-25 22:54:48 +12:00
CMYKBitmap.h LibGfx: Use NonnullRefPtr<Bitmap> for frame descriptors 2025-06-25 22:54:48 +12:00
Color.cpp LibGfx: Implement WCAG's contrast ratio in Color 2026-06-09 17:23:26 +02:00
Color.h LibGfx: Implement WCAG's contrast ratio in Color 2026-06-09 17:23:26 +02:00
ColorConversion.cpp LibGfx: Add color space conversions needed for CSS color interpolation 2026-04-16 12:06:10 +02:00
ColorConversion.h LibGfx: Preserve out-of-range components in HSL to sRGB conversion 2026-04-16 12:06:10 +02:00
ColorSpace.cpp LibGfx: Keep ImmutableBitmap source data context-neutral 2026-05-04 20:12:21 +02:00
ColorSpace.h LibGfx: Keep ImmutableBitmap source data context-neutral 2026-05-04 20:12:21 +02:00
CompositingAndBlendingOperator.h LibGfx: Reorder CompositingAndBlendingOperator values 2025-08-06 15:21:03 +02:00
CornerRadii.cpp LibGfx: Add IPC serialization for CornerRadii 2026-05-21 11:45:06 +01:00
CornerRadii.h LibGfx: Add IPC serialization for CornerRadii 2026-05-21 11:45:06 +01:00
Cursor.cpp Everywhere: Avoid large rebuilds when editing (Immutable)Bitmap headers 2025-11-28 18:32:48 +01:00
Cursor.h LibGfx: Add a stringifier for StandardCursor 2025-12-03 12:23:56 +01:00
DecodedImageFrame.cpp LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
DecodedImageFrame.h LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
DecodedImageFrameSkiaImageCache.cpp LibGfx: Make Skia image cache eviction pressure-based 2026-05-28 02:50:55 +01:00
DecodedImageFrameSkiaImageCache.h LibGfx: Hide Skia types behind pImpl in DecodedImageFrameSkiaImageCache 2026-05-10 19:49:29 +02:00
Filter.cpp LibGfx: Add IPC serialization for Filter 2026-05-21 11:45:06 +01:00
Filter.h LibGfx: Add IPC serialization for Filter 2026-05-21 11:45:06 +01:00
FilterImpl.h LibWeb: Inline serialized filters in display list commands 2026-05-11 15:49:12 +02:00
FontCascadeList.cpp LibGfx+LibWeb: Only trigger @font-face loads from text shaping 2026-04-25 17:06:28 +02:00
FontCascadeList.h LibGfx: Remove unused FontCascadeList::size() 2026-05-19 20:34:27 +02:00
Forward.h LibGfx: Add CanvasCommandPlayer 2026-06-13 20:41:03 +02:00
FourCC.h LibGfx: Implement comparison operator and hash function for FourCC 2025-11-04 21:44:32 +01:00
GradientInterpolation.h LibGfx+LibWeb: Use Gfx gradient interpolation in display lists 2026-05-11 20:31:33 +02:00
GradientPainting.cpp LibGfx+LibWeb: Delete unused PaintStyle::paint() implementations 2025-08-01 04:39:50 -04:00
Gradients.cpp LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
Gradients.h LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
InterpolationColorSpace.h LibWeb: Implement the color-interpolation property for SVG gradients 2025-08-17 10:51:05 +02:00
LineStyle.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Matrix.h AK+LibGfx: Prefer if consteval over is_constant_evaluated 2026-02-22 13:56:12 -05:00
Matrix3x3.h LibGfx+LibMedia+LibWeb: Use new Matrix subscript operator 2025-07-28 09:15:23 +02:00
Matrix4x4.cpp LibGfx: Add IPC serialization for FloatMatrix4x4 2026-05-21 11:45:06 +01:00
Matrix4x4.h LibGfx+LibWeb: Use matrix helpers in TransformationStyleValue::to_matrix 2026-06-12 01:10:24 +02:00
MetalContext.h Everywhere: Run clang-format 2024-12-28 05:39:32 -08:00
MetalContext.mm LibWeb: Allow construction of PaintingSurface directly from IOSurface 2024-12-03 23:35:45 +01:00
MorphologyOperator.h LibWeb+LibGfx: Implement SVGFEMorphologyElement 2025-11-15 16:08:53 +01:00
Orientation.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Painter.cpp LibGfx+LibWeb: Fix compile errors in clang-cl from recent header cleanup 2025-11-30 08:45:29 -05:00
Painter.h LibGfx: Reduce Painter to the bitmap-compositing interface 2026-06-13 20:41:03 +02:00
PainterSkia.cpp LibGfx: Reduce Painter to the bitmap-compositing interface 2026-06-13 20:41:03 +02:00
PainterSkia.h LibGfx: Reduce Painter to the bitmap-compositing interface 2026-06-13 20:41:03 +02:00
PaintingSurface.cpp LibWeb: Use compositor surface IDs for embedded content 2026-05-18 15:27:59 +02:00
PaintingSurface.h LibWeb: Use compositor surface IDs for embedded content 2026-05-18 15:27:59 +02:00
PaintStyle.cpp LibGfx+LibWeb: Make DecodedImageFrame a value type 2026-05-07 16:08:13 +02:00
PaintStyle.h LibGfx+LibWeb: Make DecodedImageFrame a value type 2026-05-07 16:08:13 +02:00
Palette.cpp LibGfx: Clean up #include directives 2024-11-20 21:13:23 +01:00
Palette.h Everywhere: Unify naming of RGBA-like colors 2025-11-28 18:32:48 +01:00
Path.cpp LibGfx: Add IPC serialization for Path 2026-05-21 11:45:06 +01:00
Path.h LibGfx+LibWeb: Implement SVGTextPathElement.startOffset 2026-06-04 16:01:56 +02:00
PathSkia.cpp LibGfx+LibWeb: Implement SVGTextPathElement.startOffset 2026-06-04 16:01:56 +02:00
PathSkia.h LibGfx+LibWeb: Implement SVGTextPathElement.startOffset 2026-06-04 16:01:56 +02:00
Point.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Point.h LibGfx+LibWeb: Remove unused code from Gfx::Point/Rect/Size 2026-03-31 10:37:23 +02:00
Quad.h LibGfx: Implement even-odd method for Quad::contains() and add tests 2024-12-15 23:27:42 +01:00
Rect.cpp LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
Rect.h LibGfx: Add CanvasCommandList 2026-06-13 20:41:03 +02:00
ScalingMode.h LibGfx+LibWeb: Use mipmaps for downscaling images 2025-11-12 15:59:01 +01:00
ShapeFeature.cpp LibGfx: Add IPC serialization for ShapeFeature 2026-05-21 11:45:06 +01:00
ShapeFeature.h LibGfx: Add IPC serialization for ShapeFeature 2026-05-21 11:45:06 +01:00
ShareableBitmap.cpp Everywhere: Avoid large rebuilds when editing (Immutable)Bitmap headers 2025-11-28 18:32:48 +01:00
ShareableBitmap.h Everywhere: Avoid large rebuilds when editing (Immutable)Bitmap headers 2025-11-28 18:32:48 +01:00
SharedImage.cpp LibGfx+LibWeb: Add Linux dmabuf backing stores to SharedImage 2026-04-14 21:49:08 +02:00
SharedImage.h LibGfx+LibWeb: Add Linux dmabuf backing stores to SharedImage 2026-04-14 21:49:08 +02:00
SharedImageBuffer.cpp LibGfx: Preserve imported Linux DMABUF handles 2026-06-12 21:45:22 +02:00
SharedImageBuffer.h LibGfx: Preserve imported Linux DMABUF handles 2026-06-12 21:45:22 +02:00
Size.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Size.h LibGfx+LibWeb: Remove unused code from Gfx::Point/Rect/Size 2026-03-31 10:37:23 +02:00
SkiaBackendContext.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
SkiaBackendContext.h LibGfx+LibWeb+Compositor: Remove sync wait on GPU flush 2026-05-26 22:44:17 +01:00
SkiaUtils.cpp LibWeb: Inline serialized filters in display list commands 2026-05-11 15:49:12 +02:00
SkiaUtils.h LibGfx: Keep ImmutableBitmap source data context-neutral 2026-05-04 20:12:21 +02:00
SystemTheme.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
SystemTheme.h Everywhere: Unify naming of RGBA-like colors 2025-11-28 18:32:48 +01:00
TextAlignment.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
TextAttributes.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
TextLayout.cpp LibGfx: Cache font-independent shape data in the font shaping cache 2026-06-09 17:35:54 +02:00
TextLayout.h LibGfx: Cache font-independent shape data in the font shaping cache 2026-06-09 17:35:54 +02:00
TIFFGenerator.py LibGfx: Don't use varargs/implicit typing in TIFFGenerator 2026-05-13 08:13:51 -05:00
Triangle.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Triangle.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Vector2.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Vector3.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Vector4.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
VectorGraphic.cpp LibGfx: Reduce Painter to the bitmap-compositing interface 2026-06-13 20:41:03 +02:00
VectorGraphic.h LibGfx: Reduce Painter to the bitmap-compositing interface 2026-06-13 20:41:03 +02:00
VectorN.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
VulkanContext.cpp LibGfx: Move VulkanImage into a separate file 2026-04-12 21:18:33 +02:00
VulkanContext.h LibGfx: Move VulkanImage into a separate file 2026-04-12 21:18:33 +02:00
VulkanImage.cpp LibGfx: Preserve imported Linux DMABUF handles 2026-06-12 21:45:22 +02:00
VulkanImage.h LibGfx: Make create_shared_vulkan_image() accept modifiers as a span 2026-04-14 21:49:08 +02:00
WindingRule.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
YUVData.cpp LibGfx+LibMedia: Add IPC serialization for VideoFrame 2026-05-21 11:45:06 +01:00
YUVData.h LibGfx+LibMedia: Add IPC serialization for VideoFrame 2026-05-21 11:45:06 +01:00