diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c index 04796fcae3..721062284e 100644 --- a/gtk/gtkpopover.c +++ b/gtk/gtkpopover.c @@ -1636,6 +1636,7 @@ gtk_popover_update_relative_to (GtkPopover *popover, G_CALLBACK (scrollable_notify_cb), popover); } + _gtk_widget_update_parent_muxer (GTK_WIDGET (popover)); _gtk_popover_update_context_parent (popover); g_object_unref (popover); } diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index b876509416..3528e40f78 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -15724,6 +15724,8 @@ _gtk_widget_update_parent_muxer (GtkWidget *widget) if (GTK_IS_MENU (widget)) parent = gtk_menu_get_attach_widget (GTK_MENU (widget)); + else if (GTK_IS_POPOVER (widget)) + parent = gtk_popover_get_relative_to (GTK_POPOVER (widget)); else parent = gtk_widget_get_parent (widget);