From 99fb39460a81e9244d2f96fa0b35a02176e5d9c5 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 12 Nov 2013 21:01:29 -0500 Subject: [PATCH] GtkApplicationWindow: avoid mis-allocation In the fallback case, we were adding the border width of the window twice, causing the content to be mis-positioned and cut off in some cases. https://bugzilla.gnome.org/show_bug.cgi?id=710909 --- gtk/gtkapplicationwindow.c | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/gtk/gtkapplicationwindow.c b/gtk/gtkapplicationwindow.c index 7f3f975448..f612dcf6b1 100644 --- a/gtk/gtkapplicationwindow.c +++ b/gtk/gtkapplicationwindow.c @@ -600,19 +600,11 @@ gtk_application_window_real_size_allocate (GtkWidget *widget, menubar_allocation.height = menubar_height; gtk_widget_size_allocate (window->priv->menubar, &menubar_allocation); + child_allocation.y += menubar_height; + child_allocation.height -= menubar_height; child = gtk_bin_get_child (GTK_BIN (window)); if (child != NULL && gtk_widget_get_visible (child)) - { - gint border_width; - - border_width = gtk_container_get_border_width (GTK_CONTAINER (window)); - child_allocation.x += border_width; - child_allocation.y += border_width + menubar_height; - child_allocation.width = MAX (1, child_allocation.width - border_width * 2); - child_allocation.height = MAX (1, child_allocation.height - border_width * 2 - menubar_height); - - gtk_widget_size_allocate (child, &child_allocation); - } + gtk_widget_size_allocate (child, &child_allocation); } else GTK_WIDGET_CLASS (gtk_application_window_parent_class)