gtk/gsk
Benjamin Otte 9c60c8b0c7 gpu: Don't double clip edges
Due to using offscreens when drawing shadows, we are drawing twice:
Once into the offscreen and then the offscreen into the backbuffer.

We were using the node bounds rectangle for both of these operations
which caused the edge to be antialiased twice - if the edge was not
pixel-aligned.

This was a cause of the label-shadows.ui reftest randomly breaking on
some setups.

Test added.
2025-01-08 18:52:41 +01:00
..
broadway gdk: Pass the opaque rect to begin_frame() actually 2024-08-10 01:40:46 +02:00
gl gsk: Clip luminosity when clipping colors 2024-12-01 20:00:53 +01:00
gpu gpu: Don't double clip edges 2025-01-08 18:52:41 +01:00
gen-gsk-gresources-xml.py gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gsk.h gsk: Include GL renderer in gsk.h 2024-01-07 14:47:22 +01:00
gskboundingboxprivate.h Add gsk_bounding_box_get_corner 2023-09-16 21:57:31 -04:00
gskcairoblur.c gsk: Port the cairo blur to GdkColor 2024-08-08 15:43:49 -04:00
gskcairoblurprivate.h gsk: Port the cairo blur to GdkColor 2024-08-08 15:43:49 -04:00
gskcairorenderer.c gdk: Pass the opaque rect to begin_frame() actually 2024-08-10 01:40:46 +02:00
gskcairorenderer.h gsk: Add header guard to missing header 2024-01-07 07:22:49 +01:00
gskcontour.c Drop expandtab from vim modelines 2024-10-21 11:39:04 -04:00
gskcontourprivate.h gskpathop: Introduce a type to represent an aligned graphene_point_t 2024-07-28 17:31:41 +01:00
gskcurve-ct-values.c curve: Reduce the order of our approximation 2023-08-26 10:23:02 -04:00
gskcurve.c Drop expandtab from vim modelines 2024-10-21 11:39:04 -04:00
gskcurveprivate.h gskpathop: Introduce a type to represent an aligned graphene_point_t 2024-07-28 17:31:41 +01:00
gskdebug.c gdk: Beef up gdk_parse_debug_var 2024-08-19 20:40:32 -04:00
gskdebugprivate.h Change the offload-disable flag 2024-08-19 20:40:32 -04:00
gskdiff.c gsk: Stop using g_slice 2023-03-14 14:56:42 -04:00
gskdiffprivate.h Convert headers to #pragma once 2023-03-31 15:11:10 -04:00
gskenums.h Add Since annotations to enums 2023-12-22 08:47:47 -05:00
gskenumtypes.c.template types: fix various use of volatile in type registration 2020-11-18 20:21:33 -08:00
gskenumtypes.h.template Use @basename@ in enumeration type templates 2019-02-04 14:02:45 +01:00
gskglshader.c gsk: Stop supporting gl shaders 2024-09-30 19:22:54 -04:00
gskglshader.h gsk: Deprecate GskGLShader and the rendernode 2024-07-04 21:28:06 +02:00
gskglshaderprivate.h gsk: Deprecate GskGLShader and the rendernode 2024-07-04 21:28:06 +02:00
gskoffload.c offload: Use gsk_color_node_get_color2 2024-08-05 11:11:15 -04:00
gskoffloadprivate.h gdk: Rename GdkTextureTransform to GdkDihedral 2024-07-10 12:36:07 +02:00
gskpath.c path: Modernize the docs 2024-12-06 22:21:53 -05:00
gskpath.h Change gsk_path_get_closest_point to return distance 2023-08-28 11:22:30 -04:00
gskpathbuilder.c path: Modernize the docs 2024-12-06 22:21:53 -05:00
gskpathbuilder.h pathbuilder: Add rel-variants for arc-to 2023-08-25 09:45:45 -04:00
gskpathmeasure.c path: Modernize the docs 2024-12-06 22:21:53 -05:00
gskpathmeasure.h Add GskPathMeasure 2023-08-25 20:16:49 -04:00
gskpathopprivate.h gskpathop: Introduce a type to represent an aligned graphene_point_t 2024-07-28 17:31:41 +01:00
gskpathparser.c path: Modernize the docs 2024-12-06 22:21:53 -05:00
gskpathpoint.c path: Modernize the docs 2024-12-06 22:21:53 -05:00
gskpathpoint.h Add a few annotations 2023-12-26 21:57:04 -05:00
gskpathpointprivate.h Improve precondition checks for path points 2023-08-28 00:07:50 -04:00
gskpathprivate.h path: document enum 2024-04-28 08:33:03 +02:00
gskprivate.c Bump the pango dep 2024-04-04 00:56:24 +02:00
gskprivate.h Drop unused private API 2024-04-03 10:53:55 +02:00
gskprofiler.c Fix various bitfield warnings 2023-04-27 13:42:03 +02:00
gskprofilerprivate.h Convert headers to #pragma once 2023-03-31 15:11:10 -04:00
gskrectprivate.h gpu: Split out rect grid snapping function 2024-09-15 02:31:02 +02:00
gskrenderer.c renderer: Modernize the docs 2024-12-06 22:21:53 -05:00
gskrenderer.h API: Add gsk_renderer_realize_for_display() 2024-01-07 14:47:22 +01:00
gskrendererprivate.h renderer: Pass the display as part of the vfunc 2024-01-07 14:47:22 +01:00
gskrendernode.c rendernode: Modernize the docs 2024-12-06 22:21:53 -05:00
gskrendernode.h gsk: Warn about unused result in gsk_render_node_get_opaque_rect() 2024-08-10 01:40:45 +02:00
gskrendernodeimpl.c rendernode: Mark container nodes as fully opaque 2024-12-01 05:11:24 +01:00
gskrendernodeparser.c gsk: Simplify font handing in the parser 2024-12-15 14:11:14 -05:00
gskrendernodeparserprivate.h gsk: Allow custom fonts in node files 2024-01-15 18:58:17 -05:00
gskrendernodeprivate.h gsk: Add new private gradient node api 2024-10-04 14:50:23 -04:00
gskroundedrect.c rounded rect: Modernize the docs 2024-12-06 22:21:53 -05:00
gskroundedrect.h rounded rect: Modernize the docs 2024-12-06 22:21:53 -05:00
gskroundedrectprivate.h gpu: Implement transform support for dihedral transforms 2024-07-10 21:34:12 +02:00
gskstroke.c path: Modernize the docs 2024-12-06 22:21:53 -05:00
gskstroke.h gsk: Add autoptr cleanup function for GskStroke 2024-09-03 16:50:10 +01:00
gskstrokeprivate.h Stop using g_memdup 2024-09-25 10:56:36 +02:00
gsktransform.c transform: Modernize the docs 2024-12-06 22:21:53 -05:00
gsktransform.h Convert headers to #pragma once 2023-03-31 15:11:10 -04:00
gsktransformprivate.h transform: Move gsk_transform_dihedral 2024-12-05 21:52:26 -05:00
gsktypes.h gsk: Move GskRoundedRect typedef 2023-09-15 03:46:27 +02:00
meson.build colorstate: Don't make oklab and oklch default colorstates 2024-11-29 11:49:13 +00:00