diff options
Diffstat (limited to 'demos/gtk-demo/foreigndrawing.c')
-rw-r--r-- | demos/gtk-demo/foreigndrawing.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/demos/gtk-demo/foreigndrawing.c b/demos/gtk-demo/foreigndrawing.c index 9a963f1389..842696ea61 100644 --- a/demos/gtk-demo/foreigndrawing.c +++ b/demos/gtk-demo/foreigndrawing.c @@ -830,6 +830,7 @@ draw_spinbutton (GtkWidget *widget, GtkIconTheme *icon_theme; GtkIconInfo *icon_info; GdkPixbuf *pixbuf; + GdkTexture *texture; gint icon_width, icon_height, icon_size; gint button_width; gint contents_x, contents_y, contents_width, contents_height; @@ -857,23 +858,26 @@ draw_spinbutton (GtkWidget *widget, icon_size = MIN (icon_width, icon_height); icon_info = gtk_icon_theme_lookup_icon (icon_theme, "list-add-symbolic", icon_size, 0); pixbuf = gtk_icon_info_load_symbolic_for_context (icon_info, up_context, NULL, NULL); + texture = gdk_texture_new_for_pixbuf (pixbuf); g_object_unref (icon_info); draw_style_common (up_context, cr, x + width - button_width, y, button_width, *height, &contents_x, &contents_y, &contents_width, &contents_height); - gtk_render_icon (up_context, cr, pixbuf, contents_x, contents_y + (contents_height - icon_size) / 2); + gtk_render_icon (up_context, cr, texture, contents_x, contents_y + (contents_height - icon_size) / 2); g_object_unref (pixbuf); - + g_object_unref (texture); gtk_style_context_get (down_context, "min-width", &icon_width, "min-height", &icon_height, NULL); icon_size = MIN (icon_width, icon_height); icon_info = gtk_icon_theme_lookup_icon (icon_theme, "list-remove-symbolic", icon_size, 0); pixbuf = gtk_icon_info_load_symbolic_for_context (icon_info, down_context, NULL, NULL); + texture = gdk_texture_new_for_pixbuf (pixbuf); g_object_unref (icon_info); draw_style_common (down_context, cr, x + width - 2 * button_width, y, button_width, *height, &contents_x, &contents_y, &contents_width, &contents_height); - gtk_render_icon (down_context, cr, pixbuf, contents_x, contents_y + (contents_height - icon_size) / 2); + gtk_render_icon (down_context, cr, texture, contents_x, contents_y + (contents_height - icon_size) / 2); g_object_unref (pixbuf); + g_object_unref (texture); g_object_unref (down_context); g_object_unref (up_context); |