Andreas Radke pushed to branch main at Arch Linux / Packaging / Packages / 
libreoffice-fresh


Commits:
2b08a4b0 by Andreas Radke at 2023-08-28T08:56:38+02:00
upgpkg: 7.6.0-2; fix FS#79484 - font size issues when editing a cell

- - - - -


2 changed files:

- + 5484657.diff
- PKGBUILD


Changes:

=====================================
5484657.diff
=====================================
@@ -0,0 +1,53 @@
+From 5484657d2b1677b7e385ab6ef87ad64dcb9934e4 Mon Sep 17 00:00:00 2001
+From: Noel Grandin <[email protected]>
+Date: Thu, 10 Aug 2023 17:42:12 +0200
+Subject: [PATCH] tdf#156209 Font size increases when copying from cell in edit 
mode
+
+Regression from  0558926c2f9201a12b4c46efc36b8a4080af4d46
+"use more officecfg for SvtMiscOptions".
+
+However.... even reverting the above commit does not fix the problem.
+This is because there is an underlying latent bug, where depending on the 
order of initialisation of various and when they fire events, we can end up 
calling the alternative path in ScInputHandler::ImplCreateEditEngine which 
creates a pool via EditEngine::CreatePool(), which ends up having the "wrong" 
default map unit. And then that pool sticks around even after we have a 
document, and causes the reported bug.
+
+Solve it by simply not initialising the pool until we have an associated 
document, which is fine, since we don't actually need the pool until then.
+
+
+Change-Id: If012c82df225e59dca828556bfca84c1948b5887
+Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155560
+Tested-by: Noel Grandin <[email protected]>
+Reviewed-by: Noel Grandin <[email protected]>
+---
+
+diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx
+index 3351408..1267509 100644
+--- a/sc/source/ui/app/inputhdl.cxx
++++ b/sc/source/ui/app/inputhdl.cxx
+@@ -928,14 +928,10 @@
+     if ( mpEditEngine )
+         return;
+ 
+-    if ( pActiveViewSh )
+-    {
+-        ScDocument& rDoc = 
pActiveViewSh->GetViewData().GetDocShell()->GetDocument();
+-        mpEditEngine = std::make_unique<ScFieldEditEngine>(&rDoc, 
rDoc.GetEnginePool(), rDoc.GetEditPool());
+-    }
+-    else
+-        mpEditEngine = std::make_unique<ScFieldEditEngine>(nullptr, 
EditEngine::CreatePool().get(), nullptr, true);
+-
++    // we cannot create a properly initialised EditEngine until we have a 
document
++    assert( pActiveViewSh );
++    ScDocument& rDoc = 
pActiveViewSh->GetViewData().GetDocShell()->GetDocument();
++    mpEditEngine = std::make_unique<ScFieldEditEngine>(&rDoc, 
rDoc.GetEnginePool(), rDoc.GetEditPool());
+     mpEditEngine->SetWordDelimiters( ScEditUtil::ModifyDelimiters( 
mpEditEngine->GetWordDelimiters() ) );
+     UpdateRefDevice();      // also sets MapMode
+     mpEditEngine->SetPaperSize( Size( 1000000, 1000000 ) );
+@@ -4197,7 +4193,8 @@
+     else
+         pActiveViewSh = dynamic_cast<ScTabViewShell*>( 
SfxViewShell::Current() );
+ 
+-    ImplCreateEditEngine();
++    if (pActiveViewSh)
++        ImplCreateEditEngine();
+ 
+     if ( pState != pLastState.get() )
+     {


=====================================
PKGBUILD
=====================================
@@ -12,7 +12,7 @@ pkgbase=libreoffice-fresh
 pkgname=('libreoffice-fresh-sdk' 'libreoffice-fresh')
 _LOver=7.6.0.3
 pkgver=7.6.0
-pkgrel=1
+pkgrel=2
 arch=('x86_64')
 license=('LGPL3')
 url="https://www.libreoffice.org/";
@@ -61,6 +61,7 @@ 
source=(${_mirror}/libreoffice{,-help,-translations}-${_LOver}.tar.xz{,.asc}
        
${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll
        make-pyuno-work-with-system-wide-module-install.diff
         623ea5c.diff
+        5484657.diff
        soffice-template.desktop.in 
        libreoffice-fresh.sh libreoffice-fresh.csh)
 noextract=(35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
@@ -113,6 +114,7 @@ 
sha256sums=('07f33f11a75b72a3044749d4f2f7d02a0fd79eaed4fb73e618ec5fe3576d0c25'
             'eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6'
             'c463654a73ecfbc242ff109726fb4faecdbfb3d91affafe919b24bea65afb563'
             '440c9af5f3d1213d8ed7177282380f25cbc981cabc8b590dcb777aaae84178e5'
+            'f4a61b909460162cc0f9140020b996a2a2d7d0d42362dbb9eb42ac81fa46d6a7'
             'd0be8099cbee3c9dfda694a828149b881c345b204ab68826f317580aafb50879'
             'b43ed267643fc5ced803dca010427b12b1f10db485173ccb19efb3395e60c82e'
             '66f2cb5d2ff9909ee9633aea73d5306fc8c4ff358fa526f45d9994210d3e23ff')
@@ -139,6 +141,9 @@ prepare() {
         # fix build - https://gerrit.libreoffice.org/c/core/+/145421
         patch -Np1 -i "${srcdir}"/623ea5c.diff
 
+        # tdf#156209 / FS#79484 calc font size bug
+        patch -Np1 -i "${srcdir}"/5484657.diff
+
        #use the CFLAGS but remove the LibO overridden ones
        for i in $CFLAGS; do
                case "$i" in



View it on GitLab: 
https://gitlab.archlinux.org/archlinux/packaging/packages/libreoffice-fresh/-/commit/2b08a4b085c80042fba2887805d80cc500bc25fa

-- 
View it on GitLab: 
https://gitlab.archlinux.org/archlinux/packaging/packages/libreoffice-fresh/-/commit/2b08a4b085c80042fba2887805d80cc500bc25fa
You're receiving this email because of your account on gitlab.archlinux.org.


Reply via email to