mirror of
https://github.com/moparisthebest/hexchat
synced 2024-11-25 10:42:18 -05:00
Fixed undefined behavior causing hover highlights on the plugin tray menu not working.
Fixes #602
This commit is contained in:
parent
ec12871e60
commit
b6c4cfa2a3
@ -487,25 +487,30 @@ tray_menu_destroy (GtkWidget *menu, gpointer userdata)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
static void
|
static gboolean
|
||||||
tray_menu_enter_cb (GtkWidget *menu)
|
tray_menu_enter_cb (GtkWidget *menu)
|
||||||
{
|
{
|
||||||
tray_menu_inactivetime = 0;
|
tray_menu_inactivetime = 0;
|
||||||
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static gboolean
|
||||||
tray_menu_left_cb (GtkWidget *menu)
|
tray_menu_left_cb (GtkWidget *menu)
|
||||||
{
|
{
|
||||||
tray_menu_inactivetime = g_get_real_time ();
|
tray_menu_inactivetime = g_get_real_time ();
|
||||||
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static gboolean
|
||||||
tray_check_hide (GtkWidget *menu)
|
tray_check_hide (GtkWidget *menu)
|
||||||
{
|
{
|
||||||
if (tray_menu_inactivetime && g_get_real_time () - tray_menu_inactivetime >= 2000000)
|
if (tray_menu_inactivetime && g_get_real_time () - tray_menu_inactivetime >= 2000000)
|
||||||
{
|
{
|
||||||
tray_menu_destroy (menu, NULL);
|
tray_menu_destroy (menu, NULL);
|
||||||
|
return G_SOURCE_REMOVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return G_SOURCE_CONTINUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -581,7 +586,7 @@ tray_menu_cb (GtkWidget *widget, guint button, guint time, gpointer userdata)
|
|||||||
g_signal_connect (G_OBJECT (menu), "enter-notify-event",
|
g_signal_connect (G_OBJECT (menu), "enter-notify-event",
|
||||||
G_CALLBACK (tray_menu_enter_cb), NULL);
|
G_CALLBACK (tray_menu_enter_cb), NULL);
|
||||||
|
|
||||||
tray_menu_timer = g_timeout_add(500, (GSourceFunc) tray_check_hide, menu);
|
tray_menu_timer = g_timeout_add (500, tray_check_hide, menu);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL,
|
gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL,
|
||||||
|
Loading…
Reference in New Issue
Block a user