always round approximate digit widths up, to avoid truncation, convert to

Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
	approximate digit widths up, to avoid truncation, convert to
	pango pixels when we have the full string width instead of converting
	the approx digit width to pango pixels, take inner border and
	interior focus into account correctly. (Fixes #116368, patch from
	Morten Welinder).
This commit is contained in:
Kristian Rietveld
2003-08-20 23:44:16 +00:00
committed by Kristian Rietveld
parent c567c77741
commit a16bbd60f7
6 changed files with 51 additions and 5 deletions

View File

@@ -1,3 +1,12 @@
Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
approximate digit widths up, to avoid truncation, convert to
pango pixels when we have the full string width instead of converting
the approx digit width to pango pixels, take inner border and
interior focus into account correctly. (Fixes #116368, patch from
Morten Welinder).
2003-08-20 Noah Levitt <nlevitt@columbia.edu>
* gtk/queryimmodules.c: Don't look at the same directory twice (in

View File

@@ -1,3 +1,12 @@
Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
approximate digit widths up, to avoid truncation, convert to
pango pixels when we have the full string width instead of converting
the approx digit width to pango pixels, take inner border and
interior focus into account correctly. (Fixes #116368, patch from
Morten Welinder).
2003-08-20 Noah Levitt <nlevitt@columbia.edu>
* gtk/queryimmodules.c: Don't look at the same directory twice (in

View File

@@ -1,3 +1,12 @@
Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
approximate digit widths up, to avoid truncation, convert to
pango pixels when we have the full string width instead of converting
the approx digit width to pango pixels, take inner border and
interior focus into account correctly. (Fixes #116368, patch from
Morten Welinder).
2003-08-20 Noah Levitt <nlevitt@columbia.edu>
* gtk/queryimmodules.c: Don't look at the same directory twice (in

View File

@@ -1,3 +1,12 @@
Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
approximate digit widths up, to avoid truncation, convert to
pango pixels when we have the full string width instead of converting
the approx digit width to pango pixels, take inner border and
interior focus into account correctly. (Fixes #116368, patch from
Morten Welinder).
2003-08-20 Noah Levitt <nlevitt@columbia.edu>
* gtk/queryimmodules.c: Don't look at the same directory twice (in

View File

@@ -1,3 +1,12 @@
Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
approximate digit widths up, to avoid truncation, convert to
pango pixels when we have the full string width instead of converting
the approx digit width to pango pixels, take inner border and
interior focus into account correctly. (Fixes #116368, patch from
Morten Welinder).
2003-08-20 Noah Levitt <nlevitt@columbia.edu>
* gtk/queryimmodules.c: Don't look at the same directory twice (in

View File

@@ -650,7 +650,8 @@ gtk_spin_button_size_request (GtkWidget *widget,
pango_context_get_language (context));
digit_width = pango_font_metrics_get_approximate_digit_width (metrics);
digit_width = PANGO_PIXELS (digit_width);
digit_width = PANGO_SCALE *
((digit_width + PANGO_SCALE - 1) / PANGO_SCALE);
pango_font_metrics_unref (metrics);
@@ -662,15 +663,15 @@ gtk_spin_button_size_request (GtkWidget *widget,
string_len = compute_double_length (spin_button->adjustment->upper,
spin_button->digits);
w = MIN (string_len, max_string_len) * digit_width;
w = PANGO_PIXELS (MIN (string_len, max_string_len) * digit_width);
width = MAX (width, w);
string_len = compute_double_length (spin_button->adjustment->lower,
spin_button->digits);
w = MIN (string_len, max_string_len) * digit_width;
w = PANGO_PIXELS (MIN (string_len, max_string_len) * digit_width);
width = MAX (width, w);
requisition->width = width;
if (interior_focus)
requisition->width = width + /* INNER_BORDER */ 2 * 2;
if (!interior_focus)
requisition->width += 2 * focus_width;
}