--- /tmp/coverfinder-0.2.0/src/cf-app.c 2008-07-19 23:27:16.000000000 +0200 +++ src/cf-app.c 2008-07-20 14:49:50.000000000 +0200 @@ -24,9 +24,10 @@ { GtkTreeIter iter; GtkListStore *model; - gchar *desc, *pixbuf_path; + gchar *desc, *desc_width, *pixbuf_path; CfApp *self = CF_APP (user_data); GdkPixbuf *pixbuf; + int width, height; GFile *image; GError *error = NULL; @@ -38,15 +39,17 @@ model = GTK_LIST_STORE (gtk_tree_view_get_model (self->results_view)); gtk_list_store_append (model, &iter); desc = cf_search_result_get_description (result); - gtk_list_store_set (model, &iter, CF_RESULT_COLUMN_DESCRIPTION, desc, - CF_RESULT_COLUMN_RESULT, result, -1); image = cf_search_result_get_image (result); if (image != NULL) { pixbuf_path = g_file_get_path (image); - pixbuf = gdk_pixbuf_new_from_file_at_size (pixbuf_path, 100, 100, - &error); + pixbuf = gdk_pixbuf_new_from_file (pixbuf_path, &error); if (error == NULL) { + width = gdk_pixbuf_get_width (pixbuf); + height = gdk_pixbuf_get_height (pixbuf); + desc_width = g_strdup_printf (" (%dx%d)", width, height); + desc = g_strconcat (desc, desc_width, NULL); + pixbuf = gdk_pixbuf_scale_simple (pixbuf, 100, 100, GDK_INTERP_BILINEAR); gtk_list_store_set (model, &iter, CF_RESULT_COLUMN_IMG, pixbuf, -1); } else { g_printerr (error->message); @@ -55,7 +58,11 @@ g_free (pixbuf_path); } + gtk_list_store_set (model, &iter, CF_RESULT_COLUMN_DESCRIPTION, desc, + CF_RESULT_COLUMN_RESULT, result, -1); + g_free (desc); + g_free (desc_width); gdk_threads_leave (); }