Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp	(revision 75937)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp	(revision 75938)
@@ -527,4 +527,7 @@
     , m_iLastMouseWheelDelta(0)
     , m_iMouseCaptureViewIndex(-1)
+#ifdef VBOX_WS_WIN
+    , m_fCursorPositionReseted(false)
+#endif
 {
     /* Machine state-change updater: */
@@ -948,4 +951,21 @@
         ::UpdateWindow((HWND)m_viewports[uScreenId]->winId());
 #endif
+
+#ifdef VBOX_WS_WIN
+        // WORKAROUND:
+        // There are situations at least on Windows host that we are receiving
+        // previously posted (but not yet handled) mouse event right after we
+        // have manually teleported mouse cursor to simulate infinite movement,
+        // this makes cursor blink for a large amount of space, so we should
+        // ignore such blinks .. well, at least once.
+        const QPoint shiftingSpace = globalPos - m_lastMousePos;
+        if (m_fCursorPositionReseted && shiftingSpace.manhattanLength() >= 10)
+        {
+            m_fCursorPositionReseted = false;
+            return true;
+        }
+#endif
+
+        /* Pass event to the guest: */
         mouse().PutMouseEvent(globalPos.x() - m_lastMousePos.x(),
                               globalPos.y() - m_lastMousePos.y(),
@@ -986,7 +1006,11 @@
             QCursor::setPos(requiredMousePos / dDprPrimary);
             m_lastMousePos = requiredMousePos / dDprCurrent;
+            m_fCursorPositionReseted = true;
         }
         else
+        {
             m_lastMousePos = globalPos;
+            m_fCursorPositionReseted = false;
+        }
 #else /* VBOX_WS_WIN */
         int iWe = gpDesktop->overallDesktopWidth() - 1;
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.h	(revision 75937)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.h	(revision 75938)
@@ -139,4 +139,10 @@
     int m_iLastMouseWheelDelta;
     int m_iMouseCaptureViewIndex;
+
+#ifdef VBOX_WS_WIN
+    /** Holds whether cursor position was just
+      * reseted to simulate infinite mouse moving. */
+    bool m_fCursorPositionReseted;
+#endif
 };
 
