Try to load icons from app resources first
This commit is contained in:
@ -60,6 +60,20 @@ eek_gtk_renderer_real_get_icon_surface (EekRenderer *self,
|
|||||||
GError *error = NULL;
|
GError *error = NULL;
|
||||||
cairo_surface_t *surface;
|
cairo_surface_t *surface;
|
||||||
|
|
||||||
|
gchar *path = g_strconcat("/sm/puri/squeekboard/icons/", icon_name, ".svg", NULL);
|
||||||
|
|
||||||
|
pixbuf = gdk_pixbuf_new_from_resource_at_scale (path, size, size,
|
||||||
|
TRUE, &error);
|
||||||
|
|
||||||
|
if (pixbuf != NULL)
|
||||||
|
goto found;
|
||||||
|
else {
|
||||||
|
g_warning ("can't get icon pixbuf for %s: %s", path, error->message);
|
||||||
|
g_error_free (error);
|
||||||
|
error = NULL;
|
||||||
|
}
|
||||||
|
g_free(path);
|
||||||
|
|
||||||
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
|
pixbuf = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
|
||||||
icon_name,
|
icon_name,
|
||||||
size,
|
size,
|
||||||
@ -73,6 +87,7 @@ eek_gtk_renderer_real_get_icon_surface (EekRenderer *self,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
found:
|
||||||
surface = pixbuf_to_cairo_surface (pixbuf);
|
surface = pixbuf_to_cairo_surface (pixbuf);
|
||||||
g_object_unref (pixbuf);
|
g_object_unref (pixbuf);
|
||||||
return surface;
|
return surface;
|
||||||
|
|||||||
Reference in New Issue
Block a user