sc/source/ui/view/output.cxx |   41 ++++++++++-------------------------------
 1 file changed, 10 insertions(+), 31 deletions(-)

New commits:
commit 7174f9ac911461e68badeac0e39ca3c2fd1abcef
Author:     Dennis Francis <dennis.fran...@collabora.com>
AuthorDate: Tue Nov 30 10:58:06 2021 +0530
Commit:     Eike Rathke <er...@redhat.com>
CommitDate: Wed Dec 1 16:59:09 2021 +0100

    tdf#144107: fix incorrect conditioning on bGrid...
    
    introduced in 3092322bb83998397b09d3f34b6d04b5e5c1da50
    
    The intention was to avoid the default line drawing in the original else
    branches to be conditional on bMergeCover. The previous patch used
    'bGrid' as a surrogate for the original 'else' case - which is wrong.
    
    Change-Id: I7c6b49fa9c21064312273b1051ffc7f81de3fef3
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126076
    Tested-by: Jenkins
    Reviewed-by: Dennis Francis <dennis.fran...@collabora.com>
    (cherry picked from commit 307c1f13821386687b8cf3c560ff2570b89ac3a9)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126135
    Reviewed-by: Eike Rathke <er...@redhat.com>

diff --git a/sc/source/ui/view/output.cxx b/sc/source/ui/view/output.cxx
index 93b542b2c851..9a3174720dbe 100644
--- a/sc/source/ui/view/output.cxx
+++ b/sc/source/ui/view/output.cxx
@@ -291,7 +291,7 @@ void ScOutputData::SetSyntaxMode( bool bNewMode )
 void ScOutputData::DrawGrid(vcl::RenderContext& rRenderContext, bool bGrid, 
bool bPage, bool bMergeCover)
 {
     // bMergeCover : Draw lines in sheet bgcolor to cover lok client grid 
lines in merged cell areas.
-    // (Used when scNoGridBackground is set in lok mode.)
+    // When scNoGridBackground is set in lok mode, bMergeCover is set to true 
and bGrid to false.
 
     SCCOL nX;
     SCROW nY;
@@ -355,10 +355,7 @@ void ScOutputData::DrawGrid(vcl::RenderContext& 
rRenderContext, bool bGrid, bool
     tools::Long nLayoutSign = bLayoutRTL ? -1 : 1;
     tools::Long nSignedOneX = nOneX * nLayoutSign;
 
-    if (bGrid)
-        rRenderContext.SetLineColor(aGridColor);
-    else if (bMergeCover)
-        rRenderContext.SetLineColor(aSheetBGColor);
+    rRenderContext.SetLineColor(bMergeCover ? aSheetBGColor : aGridColor);
 
     ScGridMerger aGrid(&rRenderContext, nOneX, nOneY);
 
@@ -401,14 +398,9 @@ void ScOutputData::DrawGrid(vcl::RenderContext& 
rRenderContext, bool bGrid, bool
                                                         aPageColor );
                         bDashed = true;
                     }
-                    else if (bGrid)
-                    {
-                        rRenderContext.SetLineColor( aGridColor );
-                        bDashed = false;
-                    }
-                    else if (bMergeCover)
+                    else
                     {
-                        rRenderContext.SetLineColor(aSheetBGColor);
+                        rRenderContext.SetLineColor(bMergeCover ? 
aSheetBGColor : aGridColor);
                         bDashed = false;
                     }
 
@@ -466,18 +458,14 @@ void ScOutputData::DrawGrid(vcl::RenderContext& 
rRenderContext, bool bGrid, bool
                             }
                         }
 
-                        if (pThisRowInfo->bChanged && !bHOver && bGrid)
-                        {
-                            aGrid.AddVerLine(bWorksInPixels, 
nPosX-nSignedOneX, nPosY, nNextY-nOneY, bDashed);
-                        }
-                        else if (bHOver && bMergeCover)
+                        if ((pThisRowInfo->bChanged && !bHOver && 
!bMergeCover) || (bHOver && bMergeCover))
                         {
                             aGrid.AddVerLine(bWorksInPixels, 
nPosX-nSignedOneX, nPosY, nNextY-nOneY, bDashed);
                         }
                         nPosY = nNextY;
                     }
                 }
-                else if (bGrid)
+                else if (!bMergeCover)
                 {
                     aGrid.AddVerLine(bWorksInPixels, nPosX-nSignedOneX, nScrY, 
nScrY+nScrH-nOneY, bDashed);
                 }
@@ -527,14 +515,9 @@ void ScOutputData::DrawGrid(vcl::RenderContext& 
rRenderContext, bool bGrid, bool
                                                         aPageColor );
                         bDashed = true;
                     }
-                    else if (bGrid)
-                    {
-                        rRenderContext.SetLineColor( aGridColor );
-                        bDashed = false;
-                    }
-                    else if (bMergeCover)
+                    else
                     {
-                        rRenderContext.SetLineColor(aSheetBGColor);
+                        rRenderContext.SetLineColor(bMergeCover ? 
aSheetBGColor : aGridColor);
                         bDashed = false;
                     }
 
@@ -581,11 +564,7 @@ void ScOutputData::DrawGrid(vcl::RenderContext& 
rRenderContext, bool bGrid, bool
                                     //! nVisY from Array ??
                             }
 
-                            if (!bVOver && bGrid)
-                            {
-                                aGrid.AddHorLine(bWorksInPixels, nPosX, 
nNextX-nSignedOneX, nPosY-nOneY, bDashed);
-                            }
-                            else if (bVOver && bMergeCover)
+                            if ((!bVOver && !bMergeCover) || (bVOver && 
bMergeCover))
                             {
                                 aGrid.AddHorLine(bWorksInPixels, nPosX, 
nNextX-nSignedOneX, nPosY-nOneY, bDashed);
                             }
@@ -593,7 +572,7 @@ void ScOutputData::DrawGrid(vcl::RenderContext& 
rRenderContext, bool bGrid, bool
                         nPosX = nNextX;
                     }
                 }
-                else if (bGrid)
+                else if (!bMergeCover)
                 {
                     aGrid.AddHorLine(bWorksInPixels, nScrX, nScrX+nScrW-nOneX, 
nPosY-nOneY, bDashed);
                 }

Reply via email to