[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - vcl/source

Noel Grandin (via logerrit) logerrit at kemper.freedesktop.org
Fri Jul 3 19:59:44 UTC 2020


 vcl/source/window/status.cxx |   21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

New commits:
commit dccb00809e4d16abf2cf2176151fedaee209e4c6
Author:     Noel Grandin <noel at peralex.com>
AuthorDate: Fri Jul 3 12:50:30 2020 +0200
Commit:     Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Fri Jul 3 21:59:11 2020 +0200

    tdf#131942 no progress bar saving in Calc
    
    regression from
        commit a7de363cead5cd0021d2e3df4573d4cbe27df23b.
        remove unnecessary Window::Update() calls, which immediately follow
    Invalidate
    
    Change-Id: If081f9a54ad7fe528a7885ac796f0ec6a7059872
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96975
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
    (cherry picked from commit 23e8739b98e1fff3be70159182b20642b70122de)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97806

diff --git a/vcl/source/window/status.cxx b/vcl/source/window/status.cxx
index ce8bba89bbaf..2eeb5ae0fedc 100644
--- a/vcl/source/window/status.cxx
+++ b/vcl/source/window/status.cxx
@@ -504,6 +504,7 @@ void DrawProgress(vcl::Window* pWindow, vcl::RenderContext& rRenderContext, cons
                 pEraseWindow->Invalidate(aRect, InvalidateFlags::NoChildren     |
                                                 InvalidateFlags::NoClipChildren |
                                                 InvalidateFlags::Transparent);
+                pEraseWindow->PaintImmediately();
             }
             rRenderContext.Push(PushFlags::CLIPREGION);
             rRenderContext.IntersectClipRegion(rFramePosSize);
@@ -1172,6 +1173,7 @@ void StatusBar::SetItemText( sal_uInt16 nItemId, const OUString& rText, int nCha
             {
                 tools::Rectangle aRect = ImplGetItemRectPos(nPos);
                 Invalidate(aRect);
+                PaintImmediately();
             }
         }
     }
@@ -1226,6 +1228,7 @@ void StatusBar::SetItemData( sal_uInt16 nItemId, void* pNewData )
         {
             tools::Rectangle aRect = ImplGetItemRectPos(nPos);
             Invalidate(aRect, InvalidateFlags::NoErase);
+            PaintImmediately();
         }
     }
 }
@@ -1255,6 +1258,7 @@ void StatusBar::RedrawItem(sal_uInt16 nItemId)
     {
         tools::Rectangle aRect = ImplGetItemRectPos(nPos);
         Invalidate(aRect);
+        PaintImmediately();
     }
 }
 
@@ -1329,6 +1333,7 @@ void StatusBar::StartProgressMode( const OUString& rText )
     if ( IsReallyVisible() )
     {
         Invalidate();
+        PaintImmediately();
     }
 }
 
@@ -1349,6 +1354,7 @@ void StatusBar::SetProgressValue( sal_uInt16 nNewPercent )
         if ((nTime_ms - mnLastProgressPaint_ms) > 100)
         {
             Invalidate(maPrgsFrameRect);
+            PaintImmediately();
             mnLastProgressPaint_ms = nTime_ms;
         }
     }
@@ -1364,6 +1370,7 @@ void StatusBar::EndProgressMode()
     if ( IsReallyVisible() )
     {
         Invalidate();
+        PaintImmediately();
     }
 }
 
@@ -1371,8 +1378,17 @@ void StatusBar::SetText(const OUString& rText)
 {
     if ((GetStyle() & WB_RIGHT) && !mbProgressMode && IsReallyVisible() && IsUpdateMode())
     {
-        Window::SetText(rText);
-        Invalidate();
+        if (mbFormat)
+        {
+            Invalidate();
+            Window::SetText(rText);
+        }
+        else
+        {
+            Invalidate();
+            Window::SetText(rText);
+            PaintImmediately();
+        }
     }
     else if (mbProgressMode)
     {
@@ -1380,6 +1396,7 @@ void StatusBar::SetText(const OUString& rText)
         if (IsReallyVisible())
         {
             Invalidate();
+            PaintImmediately();
         }
     }
     else


More information about the Libreoffice-commits mailing list