summaryrefslogtreecommitdiffstats
path: root/Gui/mplayer/widgets.c
diff options
context:
space:
mode:
Diffstat (limited to 'Gui/mplayer/widgets.c')
-rw-r--r--Gui/mplayer/widgets.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/Gui/mplayer/widgets.c b/Gui/mplayer/widgets.c
index 907e7c990c..281db06726 100644
--- a/Gui/mplayer/widgets.c
+++ b/Gui/mplayer/widgets.c
@@ -217,7 +217,15 @@ void gtkShow( int type,char * param )
gtk_widget_destroy( PopUpMenu );
}
PopUpMenu=create_PopUpMenu();
+#ifdef HAVE_GTK2_GUI
+ // Ugly hack, but we don't want to loose events
+ while(!GTK_WIDGET_VISIBLE(PopUpMenu)) {
+ gtk_menu_popup(GTK_MENU(PopUpMenu), NULL, NULL, NULL, NULL, 0, gtk_get_current_event_time());
+ gtk_main_iteration();
+ }
+#else
gtk_menu_popup( GTK_MENU( PopUpMenu ),NULL,NULL,NULL,NULL,0,0 );
+#endif //HAVE_GTK2_GUI
break;
case evHidePopUpMenu:
if ( PopUpMenu )