Send mouse leave events in HandleMouseMove if HAVE_TRACKMOUSEEVENT is defined and the window has captured the mouse. This used to be done in OnInternalIdle, which now only sends leave events when HAVE_TRACKMOUSEEVENT is *not* defined. Patch from Jamie Gadd, posted 9/10/2005 on wx-dev.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -4626,6 +4626,18 @@ bool wxWindowMSW::HandleMouseMove(int x, int y, WXUINT flags)
|
|||||||
(void)GetEventHandler()->ProcessEvent(event);
|
(void)GetEventHandler()->ProcessEvent(event);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#ifdef HAVE_TRACKMOUSEEVENT
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Check if we need to send a LEAVE event
|
||||||
|
// Windows doesn't send WM_MOUSELEAVE if the mouse has been captured so
|
||||||
|
// send it here if we are using native mouse leave tracking
|
||||||
|
if ( HasCapture() && !IsMouseInWindow() )
|
||||||
|
{
|
||||||
|
GenerateMouseLeave();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif // HAVE_TRACKMOUSEEVENT
|
||||||
|
|
||||||
#if wxUSE_MOUSEEVENT_HACK
|
#if wxUSE_MOUSEEVENT_HACK
|
||||||
// Window gets a click down message followed by a mouse move message even
|
// Window gets a click down message followed by a mouse move message even
|
||||||
|
Reference in New Issue
Block a user