Modified CaptureMouse to call DoReleaseMouse if necessary before
doing another DoCaptureMouse, because otherwise we have a nested Capture which is not possible in some systems (the point of these wrappers). Also ReleaseMouse now calls DoCaptureMouse, not CaptureMouse, if necessary. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1704,6 +1704,7 @@ void wxWindowBase::CaptureMouse()
|
|||||||
wxWindow *winOld = GetCapture();
|
wxWindow *winOld = GetCapture();
|
||||||
if ( winOld )
|
if ( winOld )
|
||||||
{
|
{
|
||||||
|
winOld->DoReleaseMouse();
|
||||||
// save it on stack
|
// save it on stack
|
||||||
wxWindowNext *item = new wxWindowNext;
|
wxWindowNext *item = new wxWindowNext;
|
||||||
item->win = winOld;
|
item->win = winOld;
|
||||||
@@ -1725,7 +1726,7 @@ void wxWindowBase::ReleaseMouse()
|
|||||||
|
|
||||||
if ( ms_winCaptureNext )
|
if ( ms_winCaptureNext )
|
||||||
{
|
{
|
||||||
ms_winCaptureNext->win->CaptureMouse();
|
ms_winCaptureNext->win->DoCaptureMouse();
|
||||||
|
|
||||||
wxWindowNext *item = ms_winCaptureNext;
|
wxWindowNext *item = ms_winCaptureNext;
|
||||||
ms_winCaptureNext = item->next;
|
ms_winCaptureNext = item->next;
|
||||||
|
Reference in New Issue
Block a user