[gtk+] Implement equal for GtkCssImageUrl



commit 258e504c6a1de2c2c79174efab6d2fef17f4465c
Author: Matthias Clasen <mclasen redhat com>
Date:   Fri Jan 5 17:15:44 2018 -0500

    Implement equal for GtkCssImageUrl
    
    This should in theory speed some things up if the same
    image is used in multiple places.

 gtk/gtkcssimageurl.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtkcssimageurl.c b/gtk/gtkcssimageurl.c
index 21981e8..ee6323f 100644
--- a/gtk/gtkcssimageurl.c
+++ b/gtk/gtkcssimageurl.c
@@ -136,6 +136,16 @@ gtk_css_image_url_compute (GtkCssImage      *image,
 }
 
 static gboolean
+gtk_css_image_url_equal (GtkCssImage *image1,
+                         GtkCssImage *image2)
+{
+  GtkCssImageUrl *url1 = GTK_CSS_IMAGE_URL (image1);
+  GtkCssImageUrl *url2 = GTK_CSS_IMAGE_URL (image2);
+
+  return g_file_equal (url1->file, url2->file);
+}
+
+static gboolean
 gtk_css_image_url_parse (GtkCssImage  *image,
                          GtkCssParser *parser)
 {
@@ -181,6 +191,7 @@ _gtk_css_image_url_class_init (GtkCssImageUrlClass *klass)
   image_class->snapshot = gtk_css_image_url_snapshot;
   image_class->parse = gtk_css_image_url_parse;
   image_class->print = gtk_css_image_url_print;
+  image_class->equal = gtk_css_image_url_equal;
 
   object_class->dispose = gtk_css_image_url_dispose;
 }


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