[Libreoffice-commits] core.git: sd/source vcl/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Wed Jul 18 15:50:02 UTC 2018


 sd/source/ui/view/sdwindow.cxx |    4 ++--
 vcl/source/window/window2.cxx  |    2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 8de98e61fbc96bf523b3dec7e1e52eb7e2d7693e
Author:     Pranav Kant <pranavk at collabora.co.uk>
AuthorDate: Tue Jul 17 19:10:48 2018 +0530
Commit:     pranavk <pranavk at collabora.co.uk>
CommitDate: Wed Jul 18 17:49:37 2018 +0200

    lokdialog: no invalidation when in init show
    
    This improves LOK dialog opening time considerably.
    
    libreofficekit/tilebench results:
    
    Before:
    profile run:
      initialization - 346.5185(ms)
      load document - 2162.5881(ms)
      open dialog - 7077.8980(ms)
      wait for dialog - 52.7742(ms)
      render dialog - 256.9597(ms)
      post close dialog - 523.7811(ms)
      destroy document - 58.3723(ms)
    Total: 10.4789(s)
    
    After:
    profile run:
      initialization - 336.5867(ms)
      load document - 2155.5481(ms)
      open dialog - 1151.4130(ms)
      wait for dialog - 51.5332(ms)
      render dialog - 260.3197(ms)
      post close dialog - 519.8729(ms)
      destroy document - 56.7322(ms)
    Total: 4.5320(s)
    
    Change-Id: I6345aca33c5881aba33c8a5f74765b99fe098711
    Reviewed-on: https://gerrit.libreoffice.org/57561
    Tested-by: Jenkins
    Reviewed-by: pranavk <pranavk at collabora.co.uk>

diff --git a/sd/source/ui/view/sdwindow.cxx b/sd/source/ui/view/sdwindow.cxx
index cfc5b3f68570..a82f8fff1a28 100644
--- a/sd/source/ui/view/sdwindow.cxx
+++ b/sd/source/ui/view/sdwindow.cxx
@@ -1012,7 +1012,7 @@ Selection Window::GetSurroundingTextSelection() const
 void Window::LogicInvalidate(const ::tools::Rectangle* pRectangle)
 {
     DrawViewShell* pDrawViewShell = dynamic_cast<DrawViewShell*>(mpViewShell);
-    if (pDrawViewShell && pDrawViewShell->IsInSwitchPage())
+    if (!pDrawViewShell || pDrawViewShell->IsInSwitchPage())
         return;
 
     OString sRectangle;
@@ -1025,7 +1025,7 @@ void Window::LogicInvalidate(const ::tools::Rectangle* pRectangle)
             aRectangle = OutputDevice::LogicToLogic(aRectangle, MapMode(MapUnit::Map100thMM), MapMode(MapUnit::MapTwip));
         sRectangle = aRectangle.toString();
     }
-    SfxViewShell& rSfxViewShell = mpViewShell->GetViewShellBase();
+    SfxViewShell& rSfxViewShell = pDrawViewShell->GetViewShellBase();
     SfxLokHelper::notifyInvalidation(&rSfxViewShell, sRectangle);
 }
 
diff --git a/vcl/source/window/window2.cxx b/vcl/source/window/window2.cxx
index 459557d438b8..096df67d2c99 100644
--- a/vcl/source/window/window2.cxx
+++ b/vcl/source/window/window2.cxx
@@ -1375,7 +1375,7 @@ void Window::queue_resize(StateChangedType eReason)
 
     if (VclPtr<vcl::Window> pParent = GetParentWithLOKNotifier())
     {
-        if (GetParentDialog())
+        if (!pParent->IsInInitShow())
             LogicInvalidate(nullptr);
     }
 }


More information about the Libreoffice-commits mailing list