[Libreoffice-commits] core.git: vcl/unx

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Wed Mar 3 17:34:11 UTC 2021


 vcl/unx/gtk3/gtk3gtkinst.cxx |   12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

New commits:
commit 279ee055ab85c9e21df46594d0f13c5b6c426c09
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Wed Mar 3 11:59:57 2021 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Wed Mar 3 18:33:33 2021 +0100

    layout on resize immediately
    
    but continue to layout at idle on queue_resize
    
    Change-Id: I1d0f2dd2d2f5631753092cf0450d2002e2ba3484
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111902
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx
index 193f222cf3ed..63ebf1885967 100644
--- a/vcl/unx/gtk3/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/gtk3gtkinst.cxx
@@ -3740,17 +3740,23 @@ public:
         maLayoutIdle.Start();
     }
 
+    void Layout()
+    {
+        if (vcl::Window *pChild = GetWindow(GetWindowType::FirstChild))
+            pChild->SetPosSizePixel(Point(0, 0), GetSizePixel());
+    }
+
     virtual void Resize() override
     {
+        maLayoutIdle.Stop();
+        Layout();
         WorkWindow::Resize();
-        queue_resize();
     }
 };
 
 IMPL_LINK_NOARG(ChildFrame, ImplHandleLayoutTimerHdl, Timer*, void)
 {
-    if (vcl::Window *pChild = GetWindow(GetWindowType::FirstChild))
-        pChild->SetPosSizePixel(Point(0, 0), GetSizePixel());
+    Layout();
 }
 
 class GtkInstanceContainer : public GtkInstanceWidget, public virtual weld::Container


More information about the Libreoffice-commits mailing list