Only shrink the label if we need to. (#169390, Felix Riemann)

2005-05-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
	the label if we need to.  (#169390, Felix Riemann)
This commit is contained in:
Matthias Clasen 2005-05-16 04:54:35 +00:00 committed by Matthias Clasen
parent f1cbeaff1e
commit 9cde596b73
4 changed files with 24 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
the label if we need to. (#169390, Felix Riemann)
Sat May 14 00:07:46 2005 Manish Singh <yosh@gimp.org> Sat May 14 00:07:46 2005 Manish Singh <yosh@gimp.org>
* gdk/gdkdraw.c * gdk/gdkdraw.c

View File

@ -1,3 +1,8 @@
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
the label if we need to. (#169390, Felix Riemann)
Sat May 14 00:07:46 2005 Manish Singh <yosh@gimp.org> Sat May 14 00:07:46 2005 Manish Singh <yosh@gimp.org>
* gdk/gdkdraw.c * gdk/gdkdraw.c

View File

@ -1,3 +1,8 @@
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
the label if we need to. (#169390, Felix Riemann)
Sat May 14 00:07:46 2005 Manish Singh <yosh@gimp.org> Sat May 14 00:07:46 2005 Manish Singh <yosh@gimp.org>
* gdk/gdkdraw.c * gdk/gdkdraw.c

View File

@ -850,13 +850,16 @@ gtk_statusbar_size_allocate (GtkWidget *widget,
} }
else else
{ {
/* shrink the label to make room for the grip */ if (statusbar->label->allocation.width + rect.width > statusbar->frame->allocation.width)
*allocation = statusbar->label->allocation; {
allocation->width -= rect.width; /* shrink the label to make room for the grip */
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) *allocation = statusbar->label->allocation;
allocation->x += rect.width; allocation->width -= rect.width;
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
allocation->x += rect.width;
gtk_widget_size_allocate (statusbar->label, allocation); gtk_widget_size_allocate (statusbar->label, allocation);
}
} }
} }
} }