From c8ca3e8e7a37c5726d914f95f51366ae5669c339 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 21 Jun 2023 11:18:58 -0400 Subject: [PATCH] Add gtk_popover_update_allocation This is a better name for gtk_popover_present. --- gtk/gtkpopover.c | 20 ++++++++++++++++++++ gtk/gtkpopover.h | 3 +++ 2 files changed, 23 insertions(+) diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c index 2532472877..050432abb9 100644 --- a/gtk/gtkpopover.c +++ b/gtk/gtkpopover.c @@ -647,6 +647,26 @@ present_popup (GtkPopover *popover) */ void gtk_popover_present (GtkPopover *popover) +{ + gtk_popover_update_allocation (popover); +} + +/** + * gtk_popover_update_allocation: + * @popover: a `GtkPopover` + * + * Allocate a size for the `GtkPopover`. + * + * This function needs to be called in size-allocate by widgets + * who have a `GtkPopover` as child. When using a layout manager, + * this is happening automatically. + * + * To make a popover appear on screen, use [method@Gtk.Popover.popup]. + * + * Since: 4.12 + */ +void +gtk_popover_update_allocation (GtkPopover *popover) { GtkWidget *widget = GTK_WIDGET (popover); diff --git a/gtk/gtkpopover.h b/gtk/gtkpopover.h index 9bda7c967a..e46814ad7a 100644 --- a/gtk/gtkpopover.h +++ b/gtk/gtkpopover.h @@ -123,6 +123,9 @@ void gtk_popover_set_default_widget (GtkPopover *popover, GDK_AVAILABLE_IN_ALL void gtk_popover_present (GtkPopover *popover); +GDK_AVAILABLE_IN_4_12 +void gtk_popover_update_allocation (GtkPopover *popover); + G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkPopover, g_object_unref) G_END_DECLS