]> Pileus Git - ~andy/gtk/commitdiff
Changed GtkCellRendererText to request less than wrap-width if the text is smaller...
authorTristan Van Berkom <tristan.van.berkom@gmail.com>
Fri, 19 Nov 2010 06:01:07 +0000 (15:01 +0900)
committerTristan Van Berkom <tristan.van.berkom@gmail.com>
Thu, 25 Nov 2010 13:46:55 +0000 (22:46 +0900)
gtk/gtkcellrenderertext.c

index f7df6b140c1220f71af265b0969718cfd41217e1..120100a52eac40553898fcf5b0b703fa266c6e59 100644 (file)
@@ -2153,12 +2153,14 @@ gtk_cell_renderer_text_get_preferred_width (GtkCellRenderer *cell,
   
   if ((priv->ellipsize_set && priv->ellipsize != PANGO_ELLIPSIZE_NONE) || priv->width_chars > 0)
     min_width = 
-      xpad * 2 + (PANGO_PIXELS (char_width) * MAX (priv->width_chars, ellipsize_chars));
+      xpad * 2 + 
+      MIN (PANGO_PIXELS (text_width), 
+          (PANGO_PIXELS (char_width) * MAX (priv->width_chars, ellipsize_chars)));
   /* If no width-chars set, minimum for wrapping text will be the wrap-width */
   else if (priv->wrap_width > -1)
-    min_width = xpad * 2 + rect.x + priv->wrap_width;
+    min_width = xpad * 2 + rect.x + MIN (PANGO_PIXELS (text_width), priv->wrap_width);
   else
-    min_width = xpad * 2 + rect.x + guess_width;
+    min_width = xpad * 2 + rect.x + PANGO_PIXELS (text_width);
 
   if (priv->width_chars > 0)
     nat_width = xpad * 2 +