summaryrefslogtreecommitdiff
path: root/gtk/gtkapplicationwindow.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2013-03-27 00:23:19 -0400
committerMatthias Clasen <mclasen@redhat.com>2013-03-27 00:23:19 -0400
commit93efaa5ebef602e87cb6d246150ae244e9fd379c (patch)
tree1bb235f8265c5058e89ed92354707613d8653d35 /gtk/gtkapplicationwindow.c
parentbdfd0d46380cc086a9e81d3de985a20e2f1c7a82 (diff)
downloadgtk+-93efaa5ebef602e87cb6d246150ae244e9fd379c.tar.gz
Fix GtkApplicationWindow menubar placement
Since the menubar is part of the content, we need to give it the content_window as parent window, to make things work again. https://bugzilla.gnome.org/show_bug.cgi?id=696561
Diffstat (limited to 'gtk/gtkapplicationwindow.c')
-rw-r--r--gtk/gtkapplicationwindow.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gtk/gtkapplicationwindow.c b/gtk/gtkapplicationwindow.c
index 541baf6a03..532c1d4717 100644
--- a/gtk/gtkapplicationwindow.c
+++ b/gtk/gtkapplicationwindow.c
@@ -258,6 +258,9 @@ gtk_application_window_update_menubar (GtkApplicationWindow *window)
window->priv->menubar = gtk_menu_bar_new_from_model (G_MENU_MODEL (combined));
gtk_widget_set_parent (window->priv->menubar, GTK_WIDGET (window));
+ if (_gtk_window_get_content_window (GTK_WINDOW (window)) != NULL)
+ gtk_widget_set_parent_window (window->priv->menubar,
+ _gtk_window_get_content_window (GTK_WINDOW (window)));
gtk_widget_show_all (window->priv->menubar);
g_object_unref (combined);
@@ -760,6 +763,10 @@ gtk_application_window_real_realize (GtkWidget *widget)
GTK_WIDGET_CLASS (gtk_application_window_parent_class)
->realize (widget);
+ if (window->priv->menubar != NULL)
+ gtk_widget_set_parent_window (window->priv->menubar,
+ _gtk_window_get_content_window (GTK_WINDOW (window)));
+
#ifdef GDK_WINDOWING_X11
{
GdkWindow *gdkwindow;