Replace Gtk3.22 deprecated function gtk_menu_popup

This commit is contained in:
Robert Fewell 2017-07-09 09:32:32 +01:00 committed by Geert Janssens
parent 3bb33a2796
commit 18769d90f8

View File

@ -106,6 +106,7 @@ static void go_option_menu_select_item(GOOptionMenu *option_menu,
go_option_menu_update_contents(option_menu);
}
#if !GTK_CHECK_VERSION(3,22,0)
static void go_option_menu_position(GtkMenu *menu, gint *x, gint *y,
gboolean *push_in, gpointer user_data)
{
@ -164,6 +165,7 @@ static void go_option_menu_position(GtkMenu *menu, gint *x, gint *y,
*y = menu_ypos;
*push_in = TRUE;
}
#endif
static gint go_option_menu_button_press(GtkWidget *widget,
GdkEventButton *event)
@ -177,10 +179,18 @@ static gint go_option_menu_button_press(GtkWidget *widget,
if (event->type == GDK_BUTTON_PRESS && event->button == 1)
{
#if GTK_CHECK_VERSION(3,22,0)
gtk_menu_popup_at_widget (GTK_MENU(option_menu->menu),
widget,
GDK_GRAVITY_SOUTH_WEST,
GDK_GRAVITY_NORTH_WEST,
(GdkEvent *) event);
#else
gtk_menu_popup(GTK_MENU(option_menu->menu), NULL, NULL,
go_option_menu_position, option_menu, event->button,
event->time);
#endif
return TRUE;
}
@ -195,8 +205,16 @@ static gint go_option_menu_key_press(GtkWidget *widget, GdkEventKey *event)
{
case GDK_KEY_KP_Space:
case GDK_KEY_space:
#if GTK_CHECK_VERSION(3,22,0)
gtk_menu_popup_at_widget (GTK_MENU(option_menu->menu),
widget,
GDK_GRAVITY_SOUTH_WEST,
GDK_GRAVITY_NORTH_WEST,
(GdkEvent *) event);
#else
gtk_menu_popup(GTK_MENU(option_menu->menu), NULL, NULL,
go_option_menu_position, option_menu, 0, event->time);
#endif
return TRUE;
}