@@ -1051,25 +1051,22 @@ private void _setImage (Image image) {
10511051 surface = imageList .getSurface (imageIndex );
10521052 }
10531053 if (GTK .GTK4 ) {
1054+ long pixbuf = ImageList .createPixbuf (image );
1055+ long texture = GDK .gdk_texture_new_for_pixbuf (pixbuf );
1056+ OS .g_object_unref (pixbuf );
10541057 if (OS .SWT_PADDED_MENU_ITEMS && imageHandle != 0 ) {
1055- long pixbuf = ImageList .createPixbuf (image );
1056- long texture = GDK .gdk_texture_new_for_pixbuf (pixbuf );
1057- OS .g_object_unref (pixbuf );
10581058 GTK4 .gtk_image_set_from_paintable (imageHandle , texture );
10591059 } else {
10601060 if (imageHandle == 0 ) {
1061- long pixbuf = ImageList .createPixbuf (image );
1062- long texture = GDK .gdk_texture_new_for_pixbuf (pixbuf );
1063- OS .g_object_unref (pixbuf );
1064- GTK4 .gtk_image_new_from_paintable (texture );
1061+ imageHandle = GTK4 .gtk_image_new_from_paintable (texture );
10651062 if (imageHandle == 0 ) error (SWT .ERROR_NO_HANDLES );
1063+ if (boxHandle == 0 ) {
1064+ boxHandle = gtk_box_new (GTK .GTK_ORIENTATION_HORIZONTAL , false , 6 );
1065+ }
10661066
10671067 GTK4 .gtk_box_append (boxHandle , imageHandle );
10681068 GTK4 .gtk_box_reorder_child_after (boxHandle , imageHandle , 0 );
10691069 } else {
1070- long pixbuf = ImageList .createPixbuf (image );
1071- long texture = GDK .gdk_texture_new_for_pixbuf (pixbuf );
1072- OS .g_object_unref (pixbuf );
10731070 GTK4 .gtk_image_set_from_paintable (imageHandle , texture );
10741071 }
10751072 }
0 commit comments