// Author: Kevin Ollivier, Steven Lamerton, Vadim Zeitlin
// Modified by:
// Created: 2010-03-06
-// RCS-ID: $Id$
// Copyright: (c) Kevin Ollivier
// (c) 2010 Steven Lamerton
// (c) 2010 Vadim Zeitlin
#if wxUSE_UIACTIONSIMULATOR
#include "wx/uiaction.h"
+#include "wx/event.h"
+#include "wx/evtloop.h"
+#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include "wx/unix/utilsx11.h"
Window root = display.DefaultRoot();
XWarpPointer(display, None, root, 0, 0, 0, 0, x, y);
+ // At least with wxGTK we must always process the pending events before the
+ // mouse position change really takes effect, so just do it from here
+ // instead of forcing the client code using this function to always use
+ // wxYield() which is unnecessary under the other platforms.
+ if ( wxEventLoopBase* const loop = wxEventLoop::GetActive() )
+ {
+ loop->YieldFor(wxEVT_CATEGORY_USER_INPUT);
+ }
+
return true;
}