2007-03-15  Federico Mena Quintero  <federico@novell.com>

	* gtk/gtkfilechooserdefault.c (find_good_size_from_style):
	PANGO_PIXELS() gives us device units, which are *points* in
	pangocairo's parlance, but we want actual pixels.  So, get the
	screen's resolution to compute the actual number of pixels.  Fixes
	http://bugzilla.gnome.org/show_bug.cgi?id=418585

--- gtk+/gtk/gtkfilechooserdefault.c.orig	2007-03-15 12:24:25.000000000 -0600
+++ gtk+/gtk/gtkfilechooserdefault.c	2007-03-15 12:24:26.000000000 -0600
@@ -7127,12 +7127,24 @@ find_good_size_from_style (GtkWidget *wi
   int font_size;
   GtkRequisition req;
   GtkRequisition preview_req;
+  GdkScreen *screen;
+  double resolution;
 
   g_assert (widget->style != NULL);
   impl = GTK_FILE_CHOOSER_DEFAULT (widget);
 
+  screen = gtk_widget_get_screen (widget);
+  if (screen)
+    {
+      resolution = gdk_screen_get_resolution (screen);
+      if (resolution < 0.0) /* will be -1 if the resolution is not defined in the GdkScreen */
+	resolution = 96.0;
+    }
+  else
+    resolution = 96.0; /* wheeee */
+
   font_size = pango_font_description_get_size (widget->style->font_desc);
-  font_size = PANGO_PIXELS (font_size);
+  font_size = PANGO_PIXELS (font_size) * resolution / 72.0;
 
   default_width = font_size * NUM_CHARS;
   default_height = font_size * NUM_LINES;
