pidgin/pidginavatar.c

changeset 41273
ef8cfc432444
parent 41030
ec8b76f3bf0a
child 41479
3d2e114380f6
--- a/pidgin/pidginavatar.c	Thu Feb 24 21:16:07 2022 -0600
+++ b/pidgin/pidginavatar.c	Tue Mar 08 01:21:19 2022 -0600
@@ -310,14 +310,15 @@
 	builder = gtk_builder_new_from_resource("/im/pidgin/Pidgin3/Avatar/menu.ui");
 	model = (GMenuModel *)gtk_builder_get_object(builder, "menu");
 
-	menu = gtk_menu_new_from_model(model);
-	gtk_menu_attach_to_widget(GTK_MENU(menu), GTK_WIDGET(avatar), NULL);
+	menu = gtk_popover_menu_new();
+	gtk_popover_bind_model(GTK_POPOVER(menu), model, NULL);
+	gtk_popover_set_relative_to(GTK_POPOVER(menu), GTK_WIDGET(avatar));
+	gtk_popover_set_pointing_to(GTK_POPOVER(menu),
+	                            &(const GdkRectangle){(int)event->x, (int)event->y, 0, 0});
 
 	g_clear_object(&builder);
 
-	gtk_widget_show_all(menu);
-
-	gtk_menu_popup_at_pointer(GTK_MENU(menu), (GdkEvent *)event);
+	gtk_popover_popup(GTK_POPOVER(menu));
 
 	return TRUE;
 }

mercurial