summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--ChangeLog.pre-2-104
-rw-r--r--ChangeLog.pre-2-84
-rw-r--r--gtk/gtkstatusbar.c12
4 files changed, 18 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 05dab03208..5398293b10 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2005-07-21 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Be
+ a bit more careful to not shrink the label to a negative
+ width. (#311175, Thomas Vander Stichele)
+
* gtk/gtk.symbols: mark gtk_socket_steal as deprecated.
* configure.in: Bump the cairo requirement.
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 05dab03208..5398293b10 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,5 +1,9 @@
2005-07-21 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Be
+ a bit more careful to not shrink the label to a negative
+ width. (#311175, Thomas Vander Stichele)
+
* gtk/gtk.symbols: mark gtk_socket_steal as deprecated.
* configure.in: Bump the cairo requirement.
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 05dab03208..5398293b10 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,5 +1,9 @@
2005-07-21 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Be
+ a bit more careful to not shrink the label to a negative
+ width. (#311175, Thomas Vander Stichele)
+
* gtk/gtk.symbols: mark gtk_socket_steal as deprecated.
* configure.in: Bump the cairo requirement.
diff --git a/gtk/gtkstatusbar.c b/gtk/gtkstatusbar.c
index 1cac81d9ab..8f4eb93a83 100644
--- a/gtk/gtkstatusbar.c
+++ b/gtk/gtkstatusbar.c
@@ -751,8 +751,8 @@ gtk_statusbar_expose_event (GtkWidget *widget,
}
static void
-gtk_statusbar_size_request (GtkWidget *widget,
- GtkRequisition *requisition)
+gtk_statusbar_size_request (GtkWidget *widget,
+ GtkRequisition *requisition)
{
GtkStatusbar *statusbar;
GtkShadowType shadow_type;
@@ -826,7 +826,7 @@ gtk_statusbar_size_allocate (GtkWidget *widget,
allocation->x += rect.width;
}
}
-
+
/* chain up normally */
GTK_WIDGET_CLASS (parent_class)->size_allocate (widget, allocation);
@@ -854,10 +854,10 @@ gtk_statusbar_size_allocate (GtkWidget *widget,
{
/* shrink the label to make room for the grip */
*allocation = statusbar->label->allocation;
- allocation->width -= rect.width;
+ allocation->width = MAX (1, allocation->width - rect.width);
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
- allocation->x += rect.width;
-
+ allocation->x += statusbar->label->allocation.width - allocation->width;
+
gtk_widget_size_allocate (statusbar->label, allocation);
}
}