[Libreoffice-commits] core.git: Branch 'libreoffice-7-1' - vcl/unx

Armin Le Grand (Allotropia) (via logerrit) logerrit at kemper.freedesktop.org
Sun Mar 21 01:38:29 UTC 2021


 vcl/unx/gtk3/gtk3gtkframe.cxx |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit e0cab5d85f88ed98e842639502e9015f9978d859
Author:     Armin Le Grand (Allotropia) <armin.le.grand at me.com>
AuthorDate: Wed Mar 17 18:31:59 2021 +0100
Commit:     Adolfo Jayme Barrientos <fitojb at ubuntu.com>
CommitDate: Sun Mar 21 02:37:44 2021 +0100

    tdf#131031 take MenuBar into account on size change
    
    in GtkSalFrame::SetPosSize when setting local vars for
    maGeometry.nWidth/nHeight the implicitely existing gtk
    native menu bar has to be taken into account. This can
    be done by extracting the values for it and re-apply
    to the new values.
    
    Change-Id: Ic0e76ecfd49fab7dbf330f3e26ab4a6ad3267b35
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112654
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Reviewed-by: Armin Le Grand <Armin.Le.Grand at me.com>
    (cherry picked from commit cc1690b9752b3fef3d541de0d26b7c7681615767)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112727
    Reviewed-by: Adolfo Jayme Barrientos <fitojb at ubuntu.com>

diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx
index 4240940a0960..f0c9d9fd3155 100644
--- a/vcl/unx/gtk3/gtk3gtkframe.cxx
+++ b/vcl/unx/gtk3/gtk3gtkframe.cxx
@@ -1554,8 +1554,13 @@ void GtkSalFrame::SetPosSize( tools::Long nX, tools::Long nY, tools::Long nWidth
     {
         m_bDefaultSize = false;
 
+        // tdf#131031 Just setting maGeometry.nWidth/nHeight will delete
+        // the evtl. implicitely existing space at top for the gtk native MenuBar,
+        // will make the Window too big and the StatusBar at the bottom vanish
+        // and thus breaks the fix in tdf#130841.
+        const int nImplicitMenuBarHeight(m_pSalMenu ? m_pSalMenu->GetMenuBarHeight() : 0);
         maGeometry.nWidth = nWidth;
-        maGeometry.nHeight = nHeight;
+        maGeometry.nHeight = nHeight - nImplicitMenuBarHeight;
 
         if( isChild( false ) )
             widget_set_size_request(nWidth, nHeight);


More information about the Libreoffice-commits mailing list