[gtk/wip/baedert/headerbar-stuff: 3/9] cssimagerecolor: Avoid copying colors



commit 07d1ea4356617fe7a26e0a0cbf10c5f9e46dae33
Author: Timm Bäder <mail baedert org>
Date:   Thu Nov 7 06:49:43 2019 +0100

    cssimagerecolor: Avoid copying colors

 gtk/gtkcssimagerecolor.c | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)
---
diff --git a/gtk/gtkcssimagerecolor.c b/gtk/gtkcssimagerecolor.c
index 98e1ff2e80..f9afa12f9e 100644
--- a/gtk/gtkcssimagerecolor.c
+++ b/gtk/gtkcssimagerecolor.c
@@ -174,24 +174,25 @@ gtk_css_image_recolor_snapshot (GtkCssImage *image,
                                 double       height)
 {
   GtkCssImageRecolor *recolor = GTK_CSS_IMAGE_RECOLOR (image);
+  const GdkRGBA *fg = &recolor->color;
+  const GdkRGBA *sc = &recolor->success;
+  const GdkRGBA *wc = &recolor->warning;
+  const GdkRGBA *ec = &recolor->error;
   graphene_matrix_t matrix;
   graphene_vec4_t offset;
-  GdkRGBA fg = recolor->color;
-  GdkRGBA sc = recolor->success;
-  GdkRGBA wc = recolor->warning;
-  GdkRGBA ec = recolor->error;
 
   if (recolor->texture == NULL)
     return;
 
   graphene_matrix_init_from_float (&matrix,
           (float[16]) {
-                       sc.red - fg.red, sc.green - fg.green, sc.blue - fg.blue, 0,
-                       wc.red - fg.red, wc.green - fg.green, wc.blue - fg.blue, 0,
-                       ec.red - fg.red, ec.green - fg.green, ec.blue - fg.blue, 0,
-                       0, 0, 0, fg.alpha
+                       sc->red - fg->red, sc->green - fg->green, sc->blue - fg->blue, 0,
+                       wc->red - fg->red, wc->green - fg->green, wc->blue - fg->blue, 0,
+                       ec->red - fg->red, ec->green - fg->green, ec->blue - fg->blue, 0,
+                       0, 0, 0, fg->alpha
                       });
-  graphene_vec4_init (&offset, fg.red, fg.green, fg.blue, 0);
+
+  graphene_vec4_init (&offset, fg->red, fg->green, fg->blue, 0);
   gtk_snapshot_push_color_matrix (snapshot, &matrix, &offset);
 
   gtk_snapshot_append_texture (snapshot,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]