]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/window.cpp
Expose GetCount when wxUSE_STL=1.
[wxWidgets.git] / src / gtk / window.cpp
index 9ca920d58198638d0c291687abffed00f1366b94..9b8fc44a59ffbeb5b728486dcef0184156174184 100644 (file)
@@ -8,15 +8,17 @@
 /////////////////////////////////////////////////////////////////////////////
 
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma implementation "window.h"
 #endif
 
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
 #ifdef __VMS
 #define XWarpPointer XWARPPOINTER
 #endif
 
-#include "wx/defs.h"
 #include "wx/window.h"
 #include "wx/dcclient.h"
 #include "wx/frame.h"
@@ -255,6 +257,10 @@ wxWindowGTK *g_delayedFocus = (wxWindowGTK*) NULL;
 // send any activate events at all
 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;
 
 //-----------------------------------------------------------------------------
@@ -1582,6 +1588,8 @@ static gint gtk_window_button_press_callback( GtkWidget *widget,
     if ( !g_captureWindow )
         win = FindWindowForMouseEvent(win, event.m_x, event.m_y);
 
+    gs_timeLastClick = gdk_event->time;
+
 /*
     wxPrintf( wxT("2) OnButtonPress from ") );
     if (win->GetClassInfo() && win->GetClassInfo()->GetClassName())
@@ -4214,7 +4222,7 @@ bool wxWindowGTK::DoPopupMenu( wxMenu *menu, int x, int y )
 #ifdef __WXGTK20__
                   gtk_get_current_event_time()
 #else
-                  GDK_CURRENT_TIME
+                  gs_timeLastClick              // the time of activation
 #endif
                 );