vcl/osx/salframe.cxx |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

New commits:
commit 9947a9b7918c671deecd0265891206f3679dc5aa
Author:     Patrick Luby <guibmac...@gmail.com>
AuthorDate: Tue Apr 29 11:07:17 2025 -0400
Commit:     Patrick Luby <guibomac...@gmail.com>
CommitDate: Tue Apr 29 21:42:39 2025 +0200

    tdf#163945 Decrease maximum Skia/Metal flushing rate
    
    In commit a24789f747dc998bd4fd1c0110a89e791ee051c2, the maximum
    flushing rate for Skia/Metal was set to 200 flushes per second
    but that caused tdf#163945 to reappear so reduce the limit to
    50 flushes per second.
    
    Change-Id: Iaab6236a6e54484e8a504d812a9bc5d00e1f6caf
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184778
    Tested-by: Jenkins
    Reviewed-by: Patrick Luby <guibomac...@gmail.com>

diff --git a/vcl/osx/salframe.cxx b/vcl/osx/salframe.cxx
index 69c31ede4715..483a5cb9c604 100644
--- a/vcl/osx/salframe.cxx
+++ b/vcl/osx/salframe.cxx
@@ -1216,11 +1216,14 @@ bool AquaSalFrame::doFlush()
             AquaSkiaSalGraphicsImpl *pSkiaGraphicsImpl = 
dynamic_cast<AquaSkiaSalGraphicsImpl*>(mpGraphics->GetImpl());
             if (pSkiaGraphicsImpl)
             {
-                // Assume 1/200th of a second is the fastest flushing rate
+                // Assume a certain frame rate is the fastest flushing rate
                 // that can be handled with Skia/Metal. Note that the Skia
                 // timer is running separately so the overall flushing rate
-                // may still be faster than this limit.
-                static const CFAbsoluteTime fMinFlushInterval = 0.005f;
+                // may still be faster than this limit. Previously, the
+                // limit was set to 200 flushes per second but that caused
+                // tdf#163945 to reappear so reduce the limit to 50 flushes
+                // per second.
+                static const CFAbsoluteTime fMinFlushInterval = 0.02;
                 static CFAbsoluteTime fLastFlushTime = 0;
 
                 CFAbsoluteTime fInterval = CFAbsoluteTimeGetCurrent() - 
fLastFlushTime;

Reply via email to