summaryrefslogtreecommitdiff
path: root/gtk/gtkassistant.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2010-04-30 17:56:50 -0400
committerMatthias Clasen <mclasen@redhat.com>2010-04-30 17:56:50 -0400
commitdb76c77b819b1b31e19609bb1b30c85f22b5b482 (patch)
treea8a219c1c86e717e4144e4d07dcef7dfee17cd2c /gtk/gtkassistant.c
parent6ea712fe0968e770f23d865f9bab10266efc06fc (diff)
parent3833ef5c35b9dd9ca13bb9a61e6e322cc62fe369 (diff)
downloadgtk+-db76c77b819b1b31e19609bb1b30c85f22b5b482.tar.gz
Merge branch 'native-layout-incubator'
Conflicts: configure.in docs/reference/gtk/tmpl/gtkaction.sgml docs/reference/gtk/tmpl/gtkbuilder.sgml gdk/directfb/gdkkeys-directfb.c gdk/gdk.symbols gdk/x11/gdkwindow-x11.c gtk/gtkalignment.c gtk/gtkbox.c gtk/gtkbutton.c gtk/gtkcelleditable.c gtk/gtkfilechooser.c gtk/gtkframe.c gtk/gtkinvisible.c gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtksearchenginetracker.c gtk/gtktextview.c gtk/gtktoolbutton.c gtk/gtktooltip.c gtk/gtkviewport.c gtk/gtkwidget.c gtk/gtkwindow.c po-properties/ca@valencia.po po-properties/es.po po-properties/kn.po po-properties/mr.po po/ca.po po/ca@valencia.po po/el.po po/es.po po/gl.po po/id.po po/kn.po po/lv.po po/mr.po po/th.po
Diffstat (limited to 'gtk/gtkassistant.c')
-rw-r--r--gtk/gtkassistant.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/gtk/gtkassistant.c b/gtk/gtkassistant.c
index 41ecd1311b..97caaa0ad7 100644
--- a/gtk/gtkassistant.c
+++ b/gtk/gtkassistant.c
@@ -1167,13 +1167,14 @@ gtk_assistant_size_request (GtkWidget *widget,
requisition->height = height;
}
+
static void
gtk_assistant_size_allocate (GtkWidget *widget,
GtkAllocation *allocation)
{
GtkAssistant *assistant = GTK_ASSISTANT (widget);
GtkAssistantPrivate *priv = assistant->priv;
- GtkRequisition header_requisition;
+ GtkRequisition header_requisition, action_requisition, sidebar_requisition;
GtkAllocation child_allocation, header_allocation;
gint header_padding, content_padding;
gboolean rtl;
@@ -1200,24 +1201,28 @@ gtk_assistant_size_allocate (GtkWidget *widget,
gtk_widget_size_allocate (priv->header_image, &header_allocation);
/* Action area */
+ gtk_widget_get_child_requisition (priv->action_area, &action_requisition);
+
child_allocation.x = GTK_CONTAINER (widget)->border_width;
child_allocation.y = allocation->height -
- GTK_CONTAINER (widget)->border_width - priv->action_area->requisition.height;
+ GTK_CONTAINER (widget)->border_width - action_requisition.height;
child_allocation.width = allocation->width - 2 * GTK_CONTAINER (widget)->border_width;
- child_allocation.height = priv->action_area->requisition.height;
+ child_allocation.height = action_requisition.height;
gtk_widget_size_allocate (priv->action_area, &child_allocation);
/* Sidebar */
+ gtk_widget_get_child_requisition (priv->sidebar_image, &sidebar_requisition);
+
if (rtl)
child_allocation.x = allocation->width -
- GTK_CONTAINER (widget)->border_width - priv->sidebar_image->requisition.width;
+ GTK_CONTAINER (widget)->border_width - sidebar_requisition.width;
else
child_allocation.x = GTK_CONTAINER (widget)->border_width;
child_allocation.y = GTK_CONTAINER (widget)->border_width +
priv->header_image->allocation.height + 2 * header_padding;
- child_allocation.width = priv->sidebar_image->requisition.width;
+ child_allocation.width = sidebar_requisition.width;
child_allocation.height = allocation->height - 2 * GTK_CONTAINER (widget)->border_width -
priv->header_image->allocation.height - 2 * header_padding - priv->action_area->allocation.height;