reverted GTK 1.x part of the last patch, it breaks popup menus sometimes

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@22378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2003-07-30 00:15:26 +00:00
parent 3c097668f5
commit 4ae711c91a
2 changed files with 14 additions and 2 deletions

View File

@@ -255,6 +255,10 @@ wxWindowGTK *g_delayedFocus = (wxWindowGTK*) NULL;
// send any activate events at all // send any activate events at all
static int g_sendActivateEvent = -1; static int g_sendActivateEvent = -1;
// hack: we need something to pass to gtk_menu_popup, so we store the time of
// the last click here
static guint32 gs_timeLastClick = 0;
extern bool g_mainThreadLocked; extern bool g_mainThreadLocked;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
@@ -1577,6 +1581,8 @@ static gint gtk_window_button_press_callback( GtkWidget *widget,
if ( !g_captureWindow ) if ( !g_captureWindow )
win = FindWindowForMouseEvent(win, event.m_x, event.m_y); win = FindWindowForMouseEvent(win, event.m_x, event.m_y);
gs_timeLastClick = gdk_event->time;
/* /*
wxPrintf( wxT("2) OnButtonPress from ") ); wxPrintf( wxT("2) OnButtonPress from ") );
if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
@@ -4231,7 +4237,7 @@ bool wxWindowGTK::DoPopupMenu( wxMenu *menu, int x, int y )
#ifdef __WXGTK20__ #ifdef __WXGTK20__
gtk_get_current_event_time() gtk_get_current_event_time()
#else #else
GDK_CURRENT_TIME gs_timeLastClick // the time of activation
#endif #endif
); );

View File

@@ -255,6 +255,10 @@ wxWindowGTK *g_delayedFocus = (wxWindowGTK*) NULL;
// send any activate events at all // send any activate events at all
static int g_sendActivateEvent = -1; static int g_sendActivateEvent = -1;
// hack: we need something to pass to gtk_menu_popup, so we store the time of
// the last click here
static guint32 gs_timeLastClick = 0;
extern bool g_mainThreadLocked; extern bool g_mainThreadLocked;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
@@ -1577,6 +1581,8 @@ static gint gtk_window_button_press_callback( GtkWidget *widget,
if ( !g_captureWindow ) if ( !g_captureWindow )
win = FindWindowForMouseEvent(win, event.m_x, event.m_y); win = FindWindowForMouseEvent(win, event.m_x, event.m_y);
gs_timeLastClick = gdk_event->time;
/* /*
wxPrintf( wxT("2) OnButtonPress from ") ); wxPrintf( wxT("2) OnButtonPress from ") );
if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
@@ -4231,7 +4237,7 @@ bool wxWindowGTK::DoPopupMenu( wxMenu *menu, int x, int y )
#ifdef __WXGTK20__ #ifdef __WXGTK20__
gtk_get_current_event_time() gtk_get_current_event_time()
#else #else
GDK_CURRENT_TIME gs_timeLastClick // the time of activation
#endif #endif
); );