diff options
author | Ras-al-Ghul <dipankar1995@gmail.com> | 2016-01-07 23:19:53 +0530 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2016-01-08 16:11:22 +0000 |
commit | b65af458547264187f28301562db026ef187bec9 (patch) | |
tree | 5c3c8d174f08726a5b7e4d00920ae51033ca0955 | |
parent | 63b67ab5cab8cf7576a68cabe5fb1a42c6ad800c (diff) |
tdf#96888 Kill internal vcl dog-tags ...
Did a small change in winproc.cxx file. Patch No. 9
Change-Id: I71e3876c0512e2696d61962f2427384354130bb3
Reviewed-on: https://gerrit.libreoffice.org/21224
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
-rw-r--r-- | vcl/source/window/winproc.cxx | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx index ae6c24dd1d48..cdb09cc8d9e7 100644 --- a/vcl/source/window/winproc.cxx +++ b/vcl/source/window/winproc.cxx @@ -519,7 +519,7 @@ bool ImplHandleMouseEvent( vcl::Window* pWindow, MouseNotifyEvent nSVEvent, bool } // test for mouseleave and mouseenter - vcl::Window* pMouseMoveWin = pWinFrameData->mpMouseMoveWin; + VclPtr<vcl::Window> pMouseMoveWin = pWinFrameData->mpMouseMoveWin; if ( pChild != pMouseMoveWin ) { if ( pMouseMoveWin ) @@ -527,19 +527,17 @@ bool ImplHandleMouseEvent( vcl::Window* pWindow, MouseNotifyEvent nSVEvent, bool Point aLeaveMousePos = pMouseMoveWin->ImplFrameToOutput( aMousePos ); MouseEvent aMLeaveEvt( aLeaveMousePos, nClicks, nMode | MouseEventModifiers::LEAVEWINDOW, nCode, nCode ); NotifyEvent aNLeaveEvt( MouseNotifyEvent::MOUSEMOVE, pMouseMoveWin, &aMLeaveEvt ); - ImplDelData aDelData; - ImplDelData aDelData2; + VclPtr<vcl::Window> xWindow; pWinFrameData->mbInMouseMove = true; pMouseMoveWin->ImplGetWinData()->mbMouseOver = false; - pMouseMoveWin->ImplAddDel( &aDelData ); // A MouseLeave can destroy this window if ( pChild ) - pChild->ImplAddDel( &aDelData2 ); + xWindow = pChild; if ( !ImplCallPreNotify( aNLeaveEvt ) ) { pMouseMoveWin->MouseMove( aMLeaveEvt ); - if( !aDelData.IsDead() ) + if( !pMouseMoveWin->IsDisposed() ) aNLeaveEvt.GetWindow()->ImplNotifyKeyMouseCommandEventListeners( aNLeaveEvt ); } @@ -548,14 +546,13 @@ bool ImplHandleMouseEvent( vcl::Window* pWindow, MouseNotifyEvent nSVEvent, bool if ( pChild ) { - if ( aDelData2.IsDead() ) + if ( xWindow->IsDisposed() ) pChild = nullptr; else - pChild->ImplRemoveDel( &aDelData2 ); + xWindow.clear(); } - if ( aDelData.IsDead() ) + if ( pMouseMoveWin->IsDisposed() ) return true; - pMouseMoveWin->ImplRemoveDel( &aDelData ); } nMode |= MouseEventModifiers::ENTERWINDOW; |