sw/source/core/view/viewsh.cxx |   48 ++++++++++++++++++-----------------------
 1 file changed, 22 insertions(+), 26 deletions(-)

New commits:
commit bd9430864240d3073333ce4e7461ae148b9226d3
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Wed May 17 09:03:20 2023 +0100
Commit:     Caolán McNamara <caolan.mcnam...@collabora.com>
CommitDate: Fri May 19 09:59:44 2023 +0200

    bPaint is now always true here
    
    Change-Id: I9a9ef0b85140dd622c42983613464f76e29ee35e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151870
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>

diff --git a/sw/source/core/view/viewsh.cxx b/sw/source/core/view/viewsh.cxx
index 16717f4e540d..0d8ed870085d 100644
--- a/sw/source/core/view/viewsh.cxx
+++ b/sw/source/core/view/viewsh.cxx
@@ -342,36 +342,32 @@ void SwViewShell::ImplEndAction( const bool bIdleEnd )
                     SwRect aRect( oRegion->back() );
                     oRegion->pop_back();
 
-                    const bool bPaint = true;
-                    if ( bPaint )
+                    if (GetWin()->SupportsDoubleBuffering())
+                        InvalidateWindows(aRect);
+                    else
                     {
-                        if (GetWin()->SupportsDoubleBuffering())
-                            InvalidateWindows(aRect);
-                        else
+                        // #i75172# begin DrawingLayer paint
+                        // need to do begin/end DrawingLayer preparation for 
each single rectangle of the
+                        // repaint region. I already tried to prepare only 
once for the whole Region. This
+                        // seems to work (and does technically) but fails with 
transparent objects. Since the
+                        // region given to BeginDrawLayers() defines the clip 
region for DrawingLayer paint,
+                        // transparent objects in the single rectangles will 
indeed be painted multiple times.
+                        if (!comphelper::LibreOfficeKit::isActive())
                         {
-                            // #i75172# begin DrawingLayer paint
-                            // need to do begin/end DrawingLayer preparation 
for each single rectangle of the
-                            // repaint region. I already tried to prepare only 
once for the whole Region. This
-                            // seems to work (and does technically) but fails 
with transparent objects. Since the
-                            // region given to BeginDrawLayers() defines the 
clip region for DrawingLayer paint,
-                            // transparent objects in the single rectangles 
will indeed be painted multiple times.
-                            if (!comphelper::LibreOfficeKit::isActive())
-                            {
-                                DLPrePaint2(vcl::Region(aRect.SVRect()));
-                            }
+                            DLPrePaint2(vcl::Region(aRect.SVRect()));
+                        }
 
-                            if ( bPaintsFromSystem )
-                                PaintDesktop(*GetOut(), aRect);
-                            if (!comphelper::LibreOfficeKit::isActive())
-                                pCurrentLayout->PaintSwFrame( *mpOut, aRect );
-                            else
-                                
pCurrentLayout->GetCurrShell()->InvalidateWindows(aRect);
+                        if ( bPaintsFromSystem )
+                            PaintDesktop(*GetOut(), aRect);
+                        if (!comphelper::LibreOfficeKit::isActive())
+                            pCurrentLayout->PaintSwFrame( *mpOut, aRect );
+                        else
+                            
pCurrentLayout->GetCurrShell()->InvalidateWindows(aRect);
 
-                            // #i75172# end DrawingLayer paint
-                            if (!comphelper::LibreOfficeKit::isActive())
-                            {
-                                DLPostPaint2(true);
-                            }
+                        // #i75172# end DrawingLayer paint
+                        if (!comphelper::LibreOfficeKit::isActive())
+                        {
+                            DLPostPaint2(true);
                         }
                     }
 

Reply via email to