+
+ border_width = gtk_container_get_border_width (GTK_CONTAINER (menu_bar));
+ *minimum += border_width * 2;
+ *natural += border_width * 2;
+
+ if (get_shadow_type (menu_bar) != GTK_SHADOW_NONE)
+ {
+ gtk_style_context_get_border (context, flags, &border);
+
+ if (orientation == GTK_ORIENTATION_HORIZONTAL)
+ {
+ *minimum += border.left + border.right;
+ *natural += border.left + border.right;
+ }
+ else
+ {
+ *minimum += border.top + border.bottom;
+ *natural += border.top + border.bottom;
+ }
+ }
+}
+
+static void
+gtk_menu_bar_get_preferred_width (GtkWidget *widget,
+ gint *minimum,
+ gint *natural)
+{
+ gtk_menu_bar_size_request (widget, GTK_ORIENTATION_HORIZONTAL, -1, minimum, natural);
+}
+
+static void
+gtk_menu_bar_get_preferred_height (GtkWidget *widget,
+ gint *minimum,
+ gint *natural)
+{
+ gtk_menu_bar_size_request (widget, GTK_ORIENTATION_VERTICAL, -1, minimum, natural);
+}
+
+static void
+gtk_menu_bar_get_preferred_width_for_height (GtkWidget *widget,
+ gint height,
+ gint *minimum,
+ gint *natural)
+{
+ gtk_menu_bar_size_request (widget, GTK_ORIENTATION_HORIZONTAL, height, minimum, natural);
+}
+
+static void
+gtk_menu_bar_get_preferred_height_for_width (GtkWidget *widget,
+ gint width,
+ gint *minimum,
+ gint *natural)
+{
+ gtk_menu_bar_size_request (widget, GTK_ORIENTATION_VERTICAL, width, minimum, natural);