include/vcl/dialog.hxx | 1 include/vcl/floatwin.hxx | 1 include/vcl/syswin.hxx | 3 include/vcl/window.hxx | 8 - vcl/inc/svdata.hxx | 1 vcl/inc/window.h | 12 - vcl/ios/iosinst.cxx | 1 vcl/osx/salinst.cxx | 1 vcl/source/app/help.cxx | 3 vcl/source/control/imp_listbox.cxx | 2 vcl/source/opengl/OpenGLHelper.cxx | 1 vcl/source/window/clipping.cxx | 231 ------------------------------- vcl/source/window/dialog.cxx | 4 vcl/source/window/floatwin.cxx | 5 vcl/source/window/menufloatingwindow.cxx | 1 vcl/source/window/paint.cxx | 18 -- vcl/source/window/stacking.cxx | 7 vcl/source/window/syswin.cxx | 27 --- vcl/source/window/window.cxx | 48 ------ vcl/source/window/winproc.cxx | 12 - 20 files changed, 3 insertions(+), 384 deletions(-)
New commits: commit 0ee9022fda949fe672a111e58ae965531da03694 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:49:57 2016 +0000 ImplIsWindowInFront is now unused Change-Id: I20a7b3acd1af598638282063ad31c0ba91edaf1b diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx index 52874b7..bc762f4 100644 --- a/include/vcl/window.hxx +++ b/include/vcl/window.hxx @@ -738,8 +738,6 @@ private: SAL_DLLPRIVATE long ImplLogicUnitToPixelX( long nX, MapUnit eUnit ); SAL_DLLPRIVATE long ImplLogicUnitToPixelY( long nY, MapUnit eUnit ); - SAL_DLLPRIVATE bool ImplIsWindowInFront( const vcl::Window* pTestWindow ) const; - SAL_DLLPRIVATE static void ImplNewInputContext(); SAL_DLLPRIVATE void ImplCallActivateListeners(vcl::Window*); diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 821db35..fbbc8fc 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -683,92 +683,6 @@ void Window::ImplCalcOverlapRegion( const Rectangle& rSourceRect, vcl::Region& r } } -bool Window::ImplIsWindowInFront( const vcl::Window* pTestWindow ) const -{ - // check for overlapping window - pTestWindow = pTestWindow->ImplGetFirstOverlapWindow(); - const vcl::Window* pTempWindow = pTestWindow; - const vcl::Window* pThisWindow = ImplGetFirstOverlapWindow(); - if ( pTempWindow == pThisWindow ) - return false; - do - { - if ( pTempWindow == pThisWindow ) - return true; - if ( pTempWindow->mpWindowImpl->mbFrame ) - break; - pTempWindow = pTempWindow->mpWindowImpl->mpOverlapWindow; - } - while ( pTempWindow ); - pTempWindow = pThisWindow; - do - { - if ( pTempWindow == pTestWindow ) - return false; - if ( pTempWindow->mpWindowImpl->mbFrame ) - break; - pTempWindow = pTempWindow->mpWindowImpl->mpOverlapWindow; - } - while ( pTempWindow ); - - // move window to same level - if ( pThisWindow->mpWindowImpl->mpOverlapWindow != pTestWindow->mpWindowImpl->mpOverlapWindow ) - { - sal_uInt16 nThisLevel = 0; - sal_uInt16 nTestLevel = 0; - pTempWindow = pThisWindow; - do - { - nThisLevel++; - pTempWindow = pTempWindow->mpWindowImpl->mpOverlapWindow; - } - while ( !pTempWindow->mpWindowImpl->mbFrame ); - pTempWindow = pTestWindow; - do - { - nTestLevel++; - pTempWindow = pTempWindow->mpWindowImpl->mpOverlapWindow; - } - while ( !pTempWindow->mpWindowImpl->mbFrame ); - - if ( nThisLevel < nTestLevel ) - { - do - { - if ( pTestWindow->mpWindowImpl->mpOverlapWindow == pThisWindow->mpWindowImpl->mpOverlapWindow ) - break; - if ( pTestWindow->mpWindowImpl->mbFrame ) - break; - pTestWindow = pTestWindow->mpWindowImpl->mpOverlapWindow; - } - while ( pTestWindow ); - } - else - { - do - { - if ( pThisWindow->mpWindowImpl->mpOverlapWindow == pTempWindow->mpWindowImpl->mpOverlapWindow ) - break; - if ( pThisWindow->mpWindowImpl->mbFrame ) - break; - pThisWindow = pThisWindow->mpWindowImpl->mpOverlapWindow; - } - while ( pThisWindow ); - } - } - - // if TestWindow is before ThisWindow, it is in front - pTempWindow = pTestWindow; - while ( pTempWindow ) - { - if ( pTempWindow == pThisWindow ) - return true; - pTempWindow = pTempWindow->mpWindowImpl->mpNext; - } - - return false; -} - void Window::SaveBackground( const Point& rPos, const Size& rSize, const Point& rDestOff, VirtualDevice& rSaveDevice ) { commit 7ecb1c6d8e5542dc853e42e7e3f55c62d829dab1 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:46:34 2016 +0000 ImplOverlapData is no longer used Change-Id: I8fac0daefbafc9fe9e4d6cd385f543e14ac15f8a diff --git a/vcl/inc/window.h b/vcl/inc/window.h index 80d1d80..5203564 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -102,11 +102,6 @@ struct ImplWinData maTopWindowChildren; }; -struct ImplOverlapData -{ - vcl::Region* mpSaveBackRgn; //< saved region, which must be invalidated -}; - struct ImplFrameData { Idle maPaintIdle; //< paint idle handler @@ -188,7 +183,6 @@ public: ~WindowImpl(); ImplWinData* mpWinData; - ImplOverlapData* mpOverlapData; ImplFrameData* mpFrameData; SalFrame* mpFrame; SalObject* mpSysObj; diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index f845fc2..3489e0d 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -550,9 +550,6 @@ void Window::dispose() delete mpWindowImpl->mpWinData; } - // cleanup overlap related window data - delete mpWindowImpl->mpOverlapData; - // remove BorderWindow or Frame window data mpWindowImpl->mpBorderWindow.disposeAndClear(); if ( mpWindowImpl->mbFrame ) @@ -612,7 +609,6 @@ WindowImpl::WindowImpl( WindowType nType ) maWinRegion = vcl::Region(true); maWinClipRegion = vcl::Region(true); mpWinData = nullptr; // Extra Window Data, that we don't need for all windows - mpOverlapData = nullptr; // Overlap Data mpFrameData = nullptr; // Frame Data mpFrame = nullptr; // Pointer to frame window mpSysObj = nullptr; @@ -930,13 +926,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p ImplInsertWindow( pParent ); mpWindowImpl->mnStyle = nStyle; - // Overlap-Window-Data - if ( mpWindowImpl->mbOverlapWin ) - { - mpWindowImpl->mpOverlapData = new ImplOverlapData; - mpWindowImpl->mpOverlapData->mpSaveBackRgn = nullptr; - } - if( pParent && ! mpWindowImpl->mbFrame ) mbEnableRTL = AllSettings::GetLayoutRTL(); commit 11f1fe95f9b844cb71e02d237d8034b9ed8244f3 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:42:53 2016 +0000 ImplInvalidateAllOverlapBackgrounds is empty now Change-Id: If813d937879a814fe89921fdc81af3e71b2a521f diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx index 0088047..52874b7 100644 --- a/include/vcl/window.hxx +++ b/include/vcl/window.hxx @@ -627,8 +627,6 @@ protected: SAL_DLLPRIVATE void ImplScroll( const Rectangle& rRect, long nHorzScroll, long nVertScroll, ScrollFlags nFlags ); - SAL_DLLPRIVATE void ImplInvalidateAllOverlapBackgrounds(); - SAL_DLLPRIVATE bool ImplSetClipFlagChildren( bool bSysObjOnlySmaller = false ); SAL_DLLPRIVATE bool ImplSetClipFlagOverlapWindows( bool bSysObjOnlySmaller = false ); diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 31893b9..821db35 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -801,10 +801,6 @@ void Window::SaveBackground( const Point& rPos, const Size& rSize, rSaveDevice.DrawOutDev( rDestOff, rSize, rPos, rSize, *this ); } -void Window::ImplInvalidateAllOverlapBackgrounds() -{ -} - } /* namespace vcl */ /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ commit aa09ea1ee2937a8933ea30e4cd86a55e473690e3 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:42:17 2016 +0000 mpFirstBackWin is always null now Change-Id: Ia03747824c7c6134bc91817538b3f79281aefb8b diff --git a/vcl/inc/window.h b/vcl/inc/window.h index 6911d0b..80d1d80 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -117,7 +117,6 @@ struct ImplFrameData VclPtr<vcl::Window> mpFocusWin; //< focus window (is also set, when frame doesn't have the focus) VclPtr<vcl::Window> mpMouseMoveWin; //< last window, where MouseMove() called VclPtr<vcl::Window> mpMouseDownWin; //< last window, where MouseButtonDown() called - VclPtr<vcl::Window> mpFirstBackWin; //< first overlap-window with saved background ::std::vector<VclPtr<vcl::Window> > maOwnerDrawList; //< List of system windows with owner draw decoration PhysicalFontCollection* mpFontCollection; //< Font-List for this frame ImplFontCache* mpFontCache; //< Font-Cache for this frame diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index ee318e1..31893b9 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -33,9 +33,6 @@ void Window::InitClipRegion() vcl::Region aRegion; - // Put back backed up background - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); if ( mpWindowImpl->mbInPaint ) aRegion = *(mpWindowImpl->mpPaintRegion); else @@ -321,9 +318,6 @@ bool Window::ImplSysObjClip( const vcl::Region* pOldRegion ) bUpdate = aNewRegion == *pWinChildClipRegion; } - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); - vcl::Region aRegion = *pWinChildClipRegion; Rectangle aWinRect( Point( mnOutOffX, mnOutOffY ), Size( mnOutWidth, mnOutHeight ) ); vcl::Region aWinRectRegion( aWinRect ); @@ -809,25 +803,6 @@ void Window::SaveBackground( const Point& rPos, const Size& rSize, void Window::ImplInvalidateAllOverlapBackgrounds() { - vcl::Window* pWindow = mpWindowImpl->mpFrameData->mpFirstBackWin; - if (pWindow) - { - if ( ImplIsWindowInFront( pWindow ) ) - { - Rectangle aRect1( Point( mnOutOffX, mnOutOffY ), - Size( mnOutWidth, mnOutHeight ) ); - Rectangle aRect2( Point( pWindow->mnOutOffX, pWindow->mnOutOffY ), - Size( pWindow->mnOutWidth, pWindow->mnOutHeight ) ); - aRect1.Intersection( aRect2 ); - if ( !aRect1.IsEmpty() ) - { - if ( !pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn ) - pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn = new vcl::Region( aRect2 ); - pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn->Exclude( aRect1 ); - } - - } - } } } /* namespace vcl */ diff --git a/vcl/source/window/paint.cxx b/vcl/source/window/paint.cxx index 483a55c79..1c6500d 100644 --- a/vcl/source/window/paint.cxx +++ b/vcl/source/window/paint.cxx @@ -764,10 +764,6 @@ void Window::ImplInvalidateParentFrameRegion( vcl::Region& rRegion ) void Window::ImplInvalidate( const vcl::Region* pRegion, InvalidateFlags nFlags ) { - // reset background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); - // check what has to be redrawn bool bInvalidateAll = !pRegion; @@ -1060,9 +1056,6 @@ void Window::SetWindowRegionPixel() if ( IsReallyVisible() ) { - // restore background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); Rectangle aRect( Point( mnOutOffX, mnOutOffY ), Size( mnOutWidth, mnOutHeight ) ); vcl::Region aRegion( aRect ); ImplInvalidateParentFrameRegion( aRegion ); @@ -1145,9 +1138,6 @@ void Window::SetWindowRegionPixel( const vcl::Region& rRegion ) if ( IsReallyVisible() ) { - // restore background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); Rectangle aRect( Point( mnOutOffX, mnOutOffY ), Size( mnOutWidth, mnOutHeight ) ); vcl::Region aRegion( aRect ); ImplInvalidateParentFrameRegion( aRegion ); @@ -1546,10 +1536,6 @@ void Window::ImplScroll( const Rectangle& rRect, if ( !nHorzScroll && !nVertScroll ) return; - // restore background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); - if ( mpWindowImpl->mpCursor ) mpWindowImpl->mpCursor->ImplSuspend(); diff --git a/vcl/source/window/stacking.cxx b/vcl/source/window/stacking.cxx index 6f9ef3a..8418919 100644 --- a/vcl/source/window/stacking.cxx +++ b/vcl/source/window/stacking.cxx @@ -307,9 +307,6 @@ void Window::ImplToTop( ToTopFlags nFlags ) // recalculate ClipRegion of this and all overlapping windows if ( IsReallyVisible() ) { - // reset background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); mpWindowImpl->mpOverlapWindow->ImplSetClipFlagOverlapWindows(); } } @@ -546,10 +543,6 @@ void Window::SetZOrder( vcl::Window* pRefWindow, ZOrderFlags nFlags ) if ( IsReallyVisible() ) { - // restore background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); - if ( mpWindowImpl->mbInitWinClipRegion || !mpWindowImpl->maWinClipRegion.IsEmpty() ) { bool bInitWinClipRegion = mpWindowImpl->mbInitWinClipRegion; diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 856111e..f845fc2 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -1027,7 +1027,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p mpWindowImpl->mpFrameData->mpFocusWin = nullptr; mpWindowImpl->mpFrameData->mpMouseMoveWin = nullptr; mpWindowImpl->mpFrameData->mpMouseDownWin = nullptr; - mpWindowImpl->mpFrameData->mpFirstBackWin = nullptr; mpWindowImpl->mpFrameData->mpFontCollection = pSVData->maGDIData.mpScreenFontList; mpWindowImpl->mpFrameData->mpFontCache = pSVData->maGDIData.mpScreenFontCache; mpWindowImpl->mpFrameData->mnFocusId = nullptr; @@ -1572,9 +1571,6 @@ void Window::ImplPosSizeWindow( long nX, long nY, if ( IsReallyVisible() ) { - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); - Rectangle aOldWinRect( Point( nOldOutOffX, nOldOutOffY ), Size( nOldOutWidth, nOldOutHeight ) ); pOldRegion = new vcl::Region( aOldWinRect ); @@ -1751,9 +1747,6 @@ void Window::ImplPosSizeWindow( long nX, long nY, { if ( bNewPos || bNewSize ) { - // reset background storage - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); // set Clip-Flag bUpdateSysObjClip = !ImplSetClipFlag( true ); } @@ -2507,9 +2500,6 @@ void Window::Show(bool bVisible, ShowFlags nFlags) if( aDogTag.IsDead() ) return; - // invalidate all saved backgrounds - if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) - ImplInvalidateAllOverlapBackgrounds(); // the SHOW/HIDE events also serve as indicators to send child creation/destroy events to the access bridge // However, the access bridge only uses this event if the data member is not NULL (it's kind of a hack that commit b9532822b5958f71bbf2b968727731d8d221c0ee Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:39:19 2016 +0000 mpNextBackWin is always null now Change-Id: Idd789433606da3452b9cb0a702abdf549fb1c8d4 diff --git a/vcl/inc/window.h b/vcl/inc/window.h index 1860655..6911d0b 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -105,7 +105,6 @@ struct ImplWinData struct ImplOverlapData { vcl::Region* mpSaveBackRgn; //< saved region, which must be invalidated - VclPtr<vcl::Window> mpNextBackWin; //< next window with saved background }; struct ImplFrameData diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 565bfee..ee318e1 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -810,12 +810,8 @@ void Window::SaveBackground( const Point& rPos, const Size& rSize, void Window::ImplInvalidateAllOverlapBackgrounds() { vcl::Window* pWindow = mpWindowImpl->mpFrameData->mpFirstBackWin; - while ( pWindow ) + if (pWindow) { - // remember next window here already, as this window could - // be removed within the next if clause from the list - vcl::Window* pNext = pWindow->mpWindowImpl->mpOverlapData->mpNextBackWin; - if ( ImplIsWindowInFront( pWindow ) ) { Rectangle aRect1( Point( mnOutOffX, mnOutOffY ), @@ -831,8 +827,6 @@ void Window::ImplInvalidateAllOverlapBackgrounds() } } - - pWindow = pNext; } } diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 0e08765..856111e 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -935,7 +935,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p { mpWindowImpl->mpOverlapData = new ImplOverlapData; mpWindowImpl->mpOverlapData->mpSaveBackRgn = nullptr; - mpWindowImpl->mpOverlapData->mpNextBackWin = nullptr; } if( pParent && ! mpWindowImpl->mbFrame ) commit aa644ef77126426748312f5cc46cffce0e9a09d9 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:36:59 2016 +0000 ImplRestoreOverlapBackground is always false Change-Id: I38afa9e0e4a928190c55b8a8f3d822873141fde4 diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx index 4320d5c..0088047 100644 --- a/include/vcl/window.hxx +++ b/include/vcl/window.hxx @@ -627,7 +627,6 @@ protected: SAL_DLLPRIVATE void ImplScroll( const Rectangle& rRect, long nHorzScroll, long nVertScroll, ScrollFlags nFlags ); - SAL_DLLPRIVATE bool ImplRestoreOverlapBackground( vcl::Region& rInvRegion ); SAL_DLLPRIVATE void ImplInvalidateAllOverlapBackgrounds(); SAL_DLLPRIVATE bool ImplSetClipFlagChildren( bool bSysObjOnlySmaller = false ); diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 4d4fdc6..565bfee 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -807,11 +807,6 @@ void Window::SaveBackground( const Point& rPos, const Size& rSize, rSaveDevice.DrawOutDev( rDestOff, rSize, rPos, rSize, *this ); } -bool Window::ImplRestoreOverlapBackground( vcl::Region& rInvRegion ) -{ - return false; -} - void Window::ImplInvalidateAllOverlapBackgrounds() { vcl::Window* pWindow = mpWindowImpl->mpFrameData->mpFirstBackWin; diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index b40cda2..0e08765 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -2344,21 +2344,10 @@ void Window::Show(bool bVisible, ShowFlags nFlags) if ( mpWindowImpl->mbReallyVisible ) { - vcl::Region aInvRegion; - bool bSaveBack = false; + if ( mpWindowImpl->mbInitWinClipRegion ) + ImplInitWinClipRegion(); - if ( ImplIsOverlapWindow() && !mpWindowImpl->mbFrame ) - { - if ( ImplRestoreOverlapBackground( aInvRegion ) ) - bSaveBack = true; - } - - if ( !bSaveBack ) - { - if ( mpWindowImpl->mbInitWinClipRegion ) - ImplInitWinClipRegion(); - aInvRegion = mpWindowImpl->maWinClipRegion; - } + vcl::Region aInvRegion = mpWindowImpl->maWinClipRegion; if( aDogTag.IsDead() ) return; commit 8075107cdecdb181b6cbc2bb280e974521dba247 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:35:30 2016 +0000 ImplDeleteOverlapBackground is empty now Change-Id: Ie022bb51da1f57b9db9362bb34423d9c921f4264 diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx index 24e89f4..4320d5c 100644 --- a/include/vcl/window.hxx +++ b/include/vcl/window.hxx @@ -585,8 +585,6 @@ public: SAL_DLLPRIVATE void ImplUpdateAll( bool bOverlapWindows = true ); - SAL_DLLPRIVATE void ImplDeleteOverlapBackground(); - SAL_DLLPRIVATE void ImplControlFocus( GetFocusFlags nFlags = GetFocusFlags::NONE ); SAL_DLLPRIVATE void ImplMirrorFramePos( Point &pt ) const; diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 89a12a0..4d4fdc6 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -812,10 +812,6 @@ bool Window::ImplRestoreOverlapBackground( vcl::Region& rInvRegion ) return false; } -void Window::ImplDeleteOverlapBackground() -{ -} - void Window::ImplInvalidateAllOverlapBackgrounds() { vcl::Window* pWindow = mpWindowImpl->mpFrameData->mpFirstBackWin; @@ -837,8 +833,6 @@ void Window::ImplInvalidateAllOverlapBackgrounds() if ( !pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn ) pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn = new vcl::Region( aRect2 ); pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn->Exclude( aRect1 ); - if ( pWindow->mpWindowImpl->mpOverlapData->mpSaveBackRgn->IsEmpty() ) - pWindow->ImplDeleteOverlapBackground(); } } diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx index 1b27777..e2520c9 100644 --- a/vcl/source/window/winproc.cxx +++ b/vcl/source/window/winproc.cxx @@ -1574,18 +1574,6 @@ static bool ImplHandleLongPress(vcl::Window *pWindow, const SalLongPressEvent& r static void ImplHandlePaint( vcl::Window* pWindow, const Rectangle& rBoundRect, bool bImmediateUpdate ) { - // give up background save when system paints arrive - vcl::Window* pSaveBackWin = pWindow->ImplGetWindowImpl()->mpFrameData->mpFirstBackWin; - while ( pSaveBackWin ) - { - vcl::Window* pNext = pSaveBackWin->ImplGetWindowImpl()->mpOverlapData->mpNextBackWin; - Rectangle aRect( Point( pSaveBackWin->GetOutOffXPixel(), pSaveBackWin->GetOutOffYPixel() ), - Size( pSaveBackWin->GetOutputWidthPixel(), pSaveBackWin->GetOutputHeightPixel() ) ); - if ( aRect.IsOver( rBoundRect ) ) - pSaveBackWin->ImplDeleteOverlapBackground(); - pSaveBackWin = pNext; - } - // system paint events must be checked for re-mirroring pWindow->ImplGetWindowImpl()->mnPaintFlags |= IMPL_PAINT_CHECKRTL; commit 3ce65a05a59cae95e5758bd626f911ac46428a83 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:33:39 2016 +0000 nothing sets mpSaveBackDev anymore Change-Id: I6be6a1cbcb63510469d8c419433bf05bf4fde6e5 diff --git a/vcl/inc/window.h b/vcl/inc/window.h index 2b8d848..1860655 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -104,7 +104,6 @@ struct ImplWinData struct ImplOverlapData { - VclPtr<VirtualDevice> mpSaveBackDev; //< saved background bitmap vcl::Region* mpSaveBackRgn; //< saved region, which must be invalidated VclPtr<vcl::Window> mpNextBackWin; //< next window with saved background }; diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 05f8f4c..89a12a0 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -809,66 +809,11 @@ void Window::SaveBackground( const Point& rPos, const Size& rSize, bool Window::ImplRestoreOverlapBackground( vcl::Region& rInvRegion ) { - if ( mpWindowImpl->mpOverlapData->mpSaveBackDev ) - { - if ( mpWindowImpl->mbInitWinClipRegion ) - ImplInitWinClipRegion(); - - if ( mpWindowImpl->mpOverlapData->mpSaveBackDev ) - { - Point aDevPt; - Point aDestPt( mnOutOffX, mnOutOffY ); - Size aDevSize = mpWindowImpl->mpOverlapData->mpSaveBackDev->GetOutputSizePixel(); - - Window *pWin = mpWindowImpl->mpFrameWindow; - - if ( mpWindowImpl->mpOverlapData->mpSaveBackRgn ) - { - mpWindowImpl->mpOverlapData->mpSaveBackRgn->Intersect( mpWindowImpl->maWinClipRegion ); - rInvRegion = mpWindowImpl->maWinClipRegion; - rInvRegion.Exclude( *mpWindowImpl->mpOverlapData->mpSaveBackRgn ); - pWin->drawFrameDev( aDestPt, aDevPt, aDevSize, - *(mpWindowImpl->mpOverlapData->mpSaveBackDev), - *mpWindowImpl->mpOverlapData->mpSaveBackRgn ); - } - else - { - pWin->drawFrameDev( aDestPt, aDevPt, aDevSize, - *(mpWindowImpl->mpOverlapData->mpSaveBackDev), - mpWindowImpl->maWinClipRegion ); - } - ImplDeleteOverlapBackground(); - } - - return true; - } - return false; } void Window::ImplDeleteOverlapBackground() { - if ( mpWindowImpl->mpOverlapData->mpSaveBackDev ) - { - mpWindowImpl->mpOverlapData->mpSaveBackDev.disposeAndClear(); - if ( mpWindowImpl->mpOverlapData->mpSaveBackRgn ) - { - delete mpWindowImpl->mpOverlapData->mpSaveBackRgn; - mpWindowImpl->mpOverlapData->mpSaveBackRgn = nullptr; - } - - // remove window from the list - if ( mpWindowImpl->mpFrameData->mpFirstBackWin == this ) - mpWindowImpl->mpFrameData->mpFirstBackWin = mpWindowImpl->mpOverlapData->mpNextBackWin; - else - { - vcl::Window* pTemp = mpWindowImpl->mpFrameData->mpFirstBackWin; - while ( pTemp->mpWindowImpl->mpOverlapData->mpNextBackWin.get() != this ) - pTemp = pTemp->mpWindowImpl->mpOverlapData->mpNextBackWin; - pTemp->mpWindowImpl->mpOverlapData->mpNextBackWin = mpWindowImpl->mpOverlapData->mpNextBackWin; - } - mpWindowImpl->mpOverlapData->mpNextBackWin = nullptr; - } } void Window::ImplInvalidateAllOverlapBackgrounds() diff --git a/vcl/source/window/paint.cxx b/vcl/source/window/paint.cxx index 44aeb97..483a55c79 100644 --- a/vcl/source/window/paint.cxx +++ b/vcl/source/window/paint.cxx @@ -1061,8 +1061,6 @@ void Window::SetWindowRegionPixel() if ( IsReallyVisible() ) { // restore background storage - if ( mpWindowImpl->mpOverlapData && mpWindowImpl->mpOverlapData->mpSaveBackDev ) - ImplDeleteOverlapBackground(); if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) ImplInvalidateAllOverlapBackgrounds(); Rectangle aRect( Point( mnOutOffX, mnOutOffY ), Size( mnOutWidth, mnOutHeight ) ); @@ -1148,8 +1146,6 @@ void Window::SetWindowRegionPixel( const vcl::Region& rRegion ) if ( IsReallyVisible() ) { // restore background storage - if ( mpWindowImpl->mpOverlapData && mpWindowImpl->mpOverlapData->mpSaveBackDev ) - ImplDeleteOverlapBackground(); if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) ImplInvalidateAllOverlapBackgrounds(); Rectangle aRect( Point( mnOutOffX, mnOutOffY ), Size( mnOutWidth, mnOutHeight ) ); diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index f34c8e0..b40cda2 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -934,7 +934,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p if ( mpWindowImpl->mbOverlapWin ) { mpWindowImpl->mpOverlapData = new ImplOverlapData; - mpWindowImpl->mpOverlapData->mpSaveBackDev = nullptr; mpWindowImpl->mpOverlapData->mpSaveBackRgn = nullptr; mpWindowImpl->mpOverlapData->mpNextBackWin = nullptr; } @@ -1754,8 +1753,6 @@ void Window::ImplPosSizeWindow( long nX, long nY, if ( bNewPos || bNewSize ) { // reset background storage - if ( mpWindowImpl->mpOverlapData && mpWindowImpl->mpOverlapData->mpSaveBackDev ) - ImplDeleteOverlapBackground(); if ( mpWindowImpl->mpFrameData->mpFirstBackWin ) ImplInvalidateAllOverlapBackgrounds(); // set Clip-Flag commit 90826f783bc2c6b2a93d67fc89a99d146a7886bf Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:29:21 2016 +0000 mnSaveBackSize only set not read Change-Id: I257cb3803d055f55899a2f52bc3a88886380fb4e diff --git a/vcl/inc/window.h b/vcl/inc/window.h index db207895..2b8d848 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -107,7 +107,6 @@ struct ImplOverlapData VclPtr<VirtualDevice> mpSaveBackDev; //< saved background bitmap vcl::Region* mpSaveBackRgn; //< saved region, which must be invalidated VclPtr<vcl::Window> mpNextBackWin; //< next window with saved background - sal_uIntPtr mnSaveBackSize; //< bitmap size of saved background }; struct ImplFrameData diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 1ce842d..f34c8e0 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -937,7 +937,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p mpWindowImpl->mpOverlapData->mpSaveBackDev = nullptr; mpWindowImpl->mpOverlapData->mpSaveBackRgn = nullptr; mpWindowImpl->mpOverlapData->mpNextBackWin = nullptr; - mpWindowImpl->mpOverlapData->mnSaveBackSize = 0; } if( pParent && ! mpWindowImpl->mbFrame ) commit b253064e867a20d53658a39bfe74c2b1198c80ff Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:28:40 2016 +0000 mnAllSaveBackSize only set not read Change-Id: Ibc5a2313b0231613b3c41002c144672140bf31dd diff --git a/vcl/inc/window.h b/vcl/inc/window.h index 0d26b02..db207895 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -127,7 +127,6 @@ struct ImplFrameData sal_Int32 mnDPIX; //< Original Screen Resolution sal_Int32 mnDPIY; //< Original Screen Resolution ImplMapRes maMapUnitRes; //< for LogicUnitToPixel - sal_uIntPtr mnAllSaveBackSize; //< size of all bitmaps of saved backgrounds ImplSVEvent * mnFocusId; //< FocusId for PostUserLink ImplSVEvent * mnMouseMoveId; //< MoveId for PostUserLink long mnLastMouseX; //< last x mouse position diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 03c8f44..05f8f4c 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -850,7 +850,6 @@ void Window::ImplDeleteOverlapBackground() { if ( mpWindowImpl->mpOverlapData->mpSaveBackDev ) { - mpWindowImpl->mpFrameData->mnAllSaveBackSize -= mpWindowImpl->mpOverlapData->mnSaveBackSize; mpWindowImpl->mpOverlapData->mpSaveBackDev.disposeAndClear(); if ( mpWindowImpl->mpOverlapData->mpSaveBackRgn ) { diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 5876753..1ce842d 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -1033,7 +1033,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p mpWindowImpl->mpFrameData->mpFirstBackWin = nullptr; mpWindowImpl->mpFrameData->mpFontCollection = pSVData->maGDIData.mpScreenFontList; mpWindowImpl->mpFrameData->mpFontCache = pSVData->maGDIData.mpScreenFontCache; - mpWindowImpl->mpFrameData->mnAllSaveBackSize = 0; mpWindowImpl->mpFrameData->mnFocusId = nullptr; mpWindowImpl->mpFrameData->mnMouseMoveId = nullptr; mpWindowImpl->mpFrameData->mnLastMouseX = -1; commit 760e696a4161b453f0d6d0fe3aefb96b9b5b3100 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:27:41 2016 +0000 nothing calls ImplSaveOverlapBackground now Change-Id: I4d40c4bf2aeb3880dfad754c53939236e667f433 diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx index e757170..24e89f4 100644 --- a/include/vcl/window.hxx +++ b/include/vcl/window.hxx @@ -629,7 +629,6 @@ protected: SAL_DLLPRIVATE void ImplScroll( const Rectangle& rRect, long nHorzScroll, long nVertScroll, ScrollFlags nFlags ); - SAL_DLLPRIVATE void ImplSaveOverlapBackground(); SAL_DLLPRIVATE bool ImplRestoreOverlapBackground( vcl::Region& rInvRegion ); SAL_DLLPRIVATE void ImplInvalidateAllOverlapBackgrounds(); diff --git a/vcl/source/window/clipping.cxx b/vcl/source/window/clipping.cxx index 41ed2cb..03c8f44 100644 --- a/vcl/source/window/clipping.cxx +++ b/vcl/source/window/clipping.cxx @@ -25,9 +25,6 @@ #include <salobj.hxx> #include <window.h> -#define IMPL_MAXSAVEBACKSIZE (640*480) -#define IMPL_MAXALLSAVEBACKSIZE (800*600*2) - namespace vcl { void Window::InitClipRegion() @@ -810,46 +807,6 @@ void Window::SaveBackground( const Point& rPos, const Size& rSize, rSaveDevice.DrawOutDev( rDestOff, rSize, rPos, rSize, *this ); } -void Window::ImplSaveOverlapBackground() -{ - DBG_ASSERT( !mpWindowImpl->mpOverlapData->mpSaveBackDev, "Window::ImplSaveOverlapBackground() - Background already saved" ); - - if ( !mpWindowImpl->mbFrame ) - { - sal_uLong nSaveBackSize = mnOutWidth*mnOutHeight; - if ( nSaveBackSize <= IMPL_MAXSAVEBACKSIZE ) - { - if ( nSaveBackSize+mpWindowImpl->mpFrameData->mnAllSaveBackSize <= IMPL_MAXALLSAVEBACKSIZE ) - { - Size aOutSize( mnOutWidth, mnOutHeight ); - mpWindowImpl->mpOverlapData->mpSaveBackDev = VclPtr<VirtualDevice>::Create( *mpWindowImpl->mpFrameWindow ); - if ( mpWindowImpl->mpOverlapData->mpSaveBackDev->SetOutputSizePixel( aOutSize ) ) - { - mpWindowImpl->mpFrameWindow->ImplUpdateAll(); - - if ( mpWindowImpl->mbInitWinClipRegion ) - ImplInitWinClipRegion(); - - mpWindowImpl->mpOverlapData->mnSaveBackSize = nSaveBackSize; - mpWindowImpl->mpFrameData->mnAllSaveBackSize += nSaveBackSize; - Point aDevPt; - - Window* pWin = mpWindowImpl->mpFrameWindow; - pWin->getFrameDev( Point( mnOutOffX, mnOutOffY ), - aDevPt, aOutSize, - *(mpWindowImpl->mpOverlapData->mpSaveBackDev) ); - mpWindowImpl->mpOverlapData->mpNextBackWin = mpWindowImpl->mpFrameData->mpFirstBackWin; - mpWindowImpl->mpFrameData->mpFirstBackWin = this; - } - else - { - mpWindowImpl->mpOverlapData->mpSaveBackDev.disposeAndClear(); - } - } - } - } -} - bool Window::ImplRestoreOverlapBackground( vcl::Region& rInvRegion ) { if ( mpWindowImpl->mpOverlapData->mpSaveBackDev ) commit 29ab053c405afb5dfabf9696d73e22e61c9905f5 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:27:06 2016 +0000 mbSaveBack is now always false Change-Id: Ic8068b9003136c2eff5de0cc9435c0664410e04f diff --git a/vcl/inc/window.h b/vcl/inc/window.h index f61353a..0d26b02 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -108,7 +108,6 @@ struct ImplOverlapData vcl::Region* mpSaveBackRgn; //< saved region, which must be invalidated VclPtr<vcl::Window> mpNextBackWin; //< next window with saved background sal_uIntPtr mnSaveBackSize; //< bitmap size of saved background - bool mbSaveBack; //< true: save background }; struct ImplFrameData diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 480994f..5876753 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -938,7 +938,6 @@ void Window::ImplInit( vcl::Window* pParent, WinBits nStyle, SystemParentData* p mpWindowImpl->mpOverlapData->mpSaveBackRgn = nullptr; mpWindowImpl->mpOverlapData->mpNextBackWin = nullptr; mpWindowImpl->mpOverlapData->mnSaveBackSize = 0; - mpWindowImpl->mpOverlapData->mbSaveBack = false; } if( pParent && ! mpWindowImpl->mbFrame ) @@ -2455,9 +2454,6 @@ void Window::Show(bool bVisible, ShowFlags nFlags) ImplFocusToTop( ToTopFlags::NONE, false ); } - // save background - if ( mpWindowImpl->mpOverlapData && mpWindowImpl->mpOverlapData->mbSaveBack ) - ImplSaveOverlapBackground(); // adjust mpWindowImpl->mbReallyVisible bRealVisibilityChanged = !mpWindowImpl->mbReallyVisible; ImplSetReallyVisible(); commit 01695131f3283d15e8fb803c7a342d0932d0e182 Author: Caolán McNamara <caol...@redhat.com> Date: Sat Jan 30 19:26:07 2016 +0000 Resolves: tdf#93821 assume mbNoSaveBackground as true everywhere Change-Id: I126aa5e9b96299eb25c2240d097859b3c0756535 diff --git a/include/vcl/dialog.hxx b/include/vcl/dialog.hxx index eb4a2fd..1c0b92f 100644 --- a/include/vcl/dialog.hxx +++ b/include/vcl/dialog.hxx @@ -41,7 +41,6 @@ private: DialogImpl* mpDialogImpl; long mnMousePositioned; bool mbInExecute; - bool mbOldSaveBack; bool mbInClose; bool mbModalMode; InitFlag mnInitFlag; // used for deferred init diff --git a/include/vcl/floatwin.hxx b/include/vcl/floatwin.hxx index 61d724b..20b0688 100644 --- a/include/vcl/floatwin.hxx +++ b/include/vcl/floatwin.hxx @@ -106,7 +106,6 @@ private: bool mbPopupModeCanceled; bool mbPopupModeTearOff; bool mbMouseDown; - bool mbOldSaveBackMode; bool mbGrabFocus; // act as key input window, although focus is not set bool mbInCleanUp; Link<FloatingWindow*,void> maPopupModeEndHdl; diff --git a/include/vcl/syswin.hxx b/include/vcl/syswin.hxx index 12b0f8f..e95cbf9 100644 --- a/include/vcl/syswin.hxx +++ b/include/vcl/syswin.hxx @@ -210,9 +210,6 @@ public: // separately from the window title void SetRepresentedURL( const OUString& ); - void EnableSaveBackground( bool bSave = true ); - bool IsSaveBackgroundEnabled() const; - void ShowTitleButton( TitleButton nButton, bool bVisible = true ); bool IsTitleButtonVisible( TitleButton nButton ) const; diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx index a0663b1..d139c14 100644 --- a/vcl/inc/svdata.hxx +++ b/vcl/inc/svdata.hxx @@ -198,7 +198,6 @@ struct ImplSVWinData StartAutoScrollFlags mnAutoScrollFlags; // auto scroll flags bool mbNoDeactivate; // true: do not execute Deactivate bool mbNoSaveFocus; // true: menus must not save/restore focus - bool mbNoSaveBackground; // true: save background is unnecessary or even less performant }; typedef std::vector< std::pair< OUString, FieldUnit > > FieldUnitStringList; diff --git a/vcl/ios/iosinst.cxx b/vcl/ios/iosinst.cxx index 5f58b7b..6ca639e 100644 --- a/vcl/ios/iosinst.cxx +++ b/vcl/ios/iosinst.cxx @@ -176,7 +176,6 @@ SalInstance *CreateSalInstance() IosSalInstance* pInstance = new IosSalInstance( new SalYieldMutex() ); new IosSalData( pInstance ); pInstance->AcquireYieldMutex(1); - ImplGetSVData()->maWinData.mbNoSaveBackground = true; return pInstance; } diff --git a/vcl/osx/salinst.cxx b/vcl/osx/salinst.cxx index 2e3fdad..63b8e05 100644 --- a/vcl/osx/salinst.cxx +++ b/vcl/osx/salinst.cxx @@ -338,7 +338,6 @@ SalInstance* CreateSalInstance() ImplGetSVData()->maNWFData.mbProgressNeedsErase = true; ImplGetSVData()->maNWFData.mbCheckBoxNeedsErase = true; ImplGetSVData()->maNWFData.mnStatusBarLowerRightOffset = 10; - ImplGetSVData()->maWinData.mbNoSaveBackground = true; return pInst; } diff --git a/vcl/source/app/help.cxx b/vcl/source/app/help.cxx index a41c666..f48f6c5 100644 --- a/vcl/source/app/help.cxx +++ b/vcl/source/app/help.cxx @@ -237,9 +237,6 @@ HelpTextWindow::HelpTextWindow( vcl::Window* pParent, const OUString& rText, sal ImplSetMouseTransparent( true ); mnHelpWinStyle = nHelpWinStyle; mnStyle = nStyle; -// on windows this will raise the application window, because help windows are system windows now -// EnableAlwaysOnTop(); - EnableSaveBackground(); if( mnStyle & QuickHelpFlags::BiDiRtl ) { diff --git a/vcl/source/control/imp_listbox.cxx b/vcl/source/control/imp_listbox.cxx index 18e1756..65fd57a 100644 --- a/vcl/source/control/imp_listbox.cxx +++ b/vcl/source/control/imp_listbox.cxx @@ -2944,8 +2944,6 @@ ImplListBoxFloatingWindow::ImplListBoxFloatingWindow( vcl::Window* pParent ) : mnPopupModeStartSaveSelection = LISTBOX_ENTRY_NOTFOUND; - EnableSaveBackground(); - vcl::Window * pBorderWindow = ImplGetBorderWindow(); if( pBorderWindow ) { diff --git a/vcl/source/opengl/OpenGLHelper.cxx b/vcl/source/opengl/OpenGLHelper.cxx index a8a62fc..f98acbe 100644 --- a/vcl/source/opengl/OpenGLHelper.cxx +++ b/vcl/source/opengl/OpenGLHelper.cxx @@ -1004,7 +1004,6 @@ bool OpenGLHelper::isVCLOpenGLEnabled() { if (!getenv("SAL_DISABLE_GL_WATCHDOG")) OpenGLWatchdogThread::start(); - ImplGetSVData()->maWinData.mbNoSaveBackground = true; } return bRet; diff --git a/vcl/source/window/dialog.cxx b/vcl/source/window/dialog.cxx index d06ca87..ce0d6f1 100644 --- a/vcl/source/window/dialog.cxx +++ b/vcl/source/window/dialog.cxx @@ -357,7 +357,6 @@ void Dialog::ImplInitDialogData() mpWindowImpl->mbDialog = true; mpPrevExecuteDlg = nullptr; mbInExecute = false; - mbOldSaveBack = false; mbInClose = false; mbModalMode = false; mpContentArea.clear(); @@ -855,8 +854,6 @@ bool Dialog::ImplStartExecuteModal() } mbInExecute = true; SetModalInputMode( true ); - mbOldSaveBack = IsSaveBackgroundEnabled(); - EnableSaveBackground(); // FIXME: no layouting, workaround some clipping issues ImplAdjustNWFSizes(); @@ -962,7 +959,6 @@ void Dialog::EndDialog( long nResult ) mpPrevExecuteDlg = nullptr; Hide(); - EnableSaveBackground( mbOldSaveBack ); if ( GetParent() ) { NotifyEvent aNEvt( MouseNotifyEvent::ENDEXECUTEDIALOG, this ); diff --git a/vcl/source/window/floatwin.cxx b/vcl/source/window/floatwin.cxx index 8b075c7..ed997c8 100644 --- a/vcl/source/window/floatwin.cxx +++ b/vcl/source/window/floatwin.cxx @@ -170,7 +170,6 @@ FloatingWindow::FloatingWindow(vcl::Window* pParent, const OString& rID, const O , mbPopupModeCanceled(false) , mbPopupModeTearOff(false) , mbMouseDown(false) - , mbOldSaveBackMode(false) , mbGrabFocus(false) , mbInCleanUp(false) { @@ -696,9 +695,6 @@ void FloatingWindow::StartPopupMode( const Rectangle& rRect, FloatWinPopupFlags mbPopupModeTearOff = false; mbMouseDown = false; - mbOldSaveBackMode = IsSaveBackgroundEnabled(); - EnableSaveBackground(); - // add FloatingWindow to list of windows that are in popup mode ImplSVData* pSVData = ImplGetSVData(); mpNextFloat = pSVData->maWinData.mpFirstFloat; @@ -795,7 +791,6 @@ void FloatingWindow::ImplEndPopupMode( FloatWinPopupEndFlags nFlags, VclPtr<vcl: if ( xFocusId != nullptr ) Window::EndSaveFocus( xFocusId, false ); } - EnableSaveBackground( mbOldSaveBackMode ); mbPopupModeCanceled = bool(nFlags & FloatWinPopupEndFlags::Cancel); diff --git a/vcl/source/window/menufloatingwindow.cxx b/vcl/source/window/menufloatingwindow.cxx index 60c52b9..2620b0d 100644 --- a/vcl/source/window/menufloatingwindow.cxx +++ b/vcl/source/window/menufloatingwindow.cxx @@ -45,7 +45,6 @@ MenuFloatingWindow::MenuFloatingWindow( Menu* pMen, vcl::Window* pParent, WinBit bIgnoreFirstMove = true; bKeyInput = false; - EnableSaveBackground(); ApplySettings(*this); SetPopupModeEndHdl( LINK( this, MenuFloatingWindow, PopupEnd ) ); diff --git a/vcl/source/window/syswin.cxx b/vcl/source/window/syswin.cxx index 5ff9f1d..19ec2f9 100644 --- a/vcl/source/window/syswin.cxx +++ b/vcl/source/window/syswin.cxx @@ -291,33 +291,6 @@ void SystemWindow::SetIcon( sal_uInt16 nIcon ) } } -void SystemWindow::EnableSaveBackground(bool bSave) -{ - if( ImplGetSVData()->maWinData.mbNoSaveBackground ) - bSave = false; - - vcl::Window* pWindow = this; - while (pWindow->mpWindowImpl->mpBorderWindow) - pWindow = pWindow->mpWindowImpl->mpBorderWindow; - if (pWindow->mpWindowImpl->mbOverlapWin && !pWindow->mpWindowImpl->mbFrame) - { - pWindow->mpWindowImpl->mpOverlapData->mbSaveBack = bSave; - if (!bSave) - pWindow->ImplDeleteOverlapBackground(); - } -} - -bool SystemWindow::IsSaveBackgroundEnabled() const -{ - const vcl::Window* pWindow = this; - while ( pWindow->mpWindowImpl->mpBorderWindow ) - pWindow = pWindow->mpWindowImpl->mpBorderWindow; - if ( pWindow->mpWindowImpl->mpOverlapData ) - return pWindow->mpWindowImpl->mpOverlapData->mbSaveBack; - else - return false; -} - void SystemWindow::ShowTitleButton( TitleButton nButton, bool bVisible ) { if ( nButton == TitleButton::Docking )
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits