core.git: embeddedobj/source

2024-06-20 Thread Mike Kaganski (via logerrit)
 embeddedobj/source/msole/oleembed.cxx  |2 ++
 embeddedobj/source/msole/olevisual.cxx |5 ++---
 2 files changed, 4 insertions(+), 3 deletions(-)

New commits:
commit d32153d3217350b6646227d9239e3fd191e2b4c3
Author: Mike Kaganski 
AuthorDate: Fri Jun 21 10:04:33 2024 +0500
Commit: Mike Kaganski 
CommitDate: Fri Jun 21 08:57:08 2024 +0200

Make sure to clear the guard around OleEmbeddedObject::changeState

The method itself clears its own guard; the caller still holding the
guard results in hangs seen in some Java code.

See also commit e2bfc34d146806a8f96be0cd2323d716f12cba4e (Reimplement
OleComponentNative_Impl to use IGlobalInterfaceTablem 2024-03-11).

Change-Id: Ib22e71e7500ccceb946f7b1d6606f8f61ae2afe8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169315
Reviewed-by: Mike Kaganski 
Tested-by: Jenkins

diff --git a/embeddedobj/source/msole/oleembed.cxx 
b/embeddedobj/source/msole/oleembed.cxx
index a1e12ed5e3e8..835ef9cd4885 100644
--- a/embeddedobj/source/msole/oleembed.cxx
+++ b/embeddedobj/source/msole/oleembed.cxx
@@ -913,6 +913,7 @@ void SAL_CALL OleEmbeddedObject::doVerb( sal_Int32 nVerbID )
 m_bTriedConversion = true;
 if ( TryToConvertToOOo( m_xObjectStream ) )
 {
+aGuard.clear();
 changeState( embed::EmbedStates::ACTIVE );
 return;
 }
@@ -944,6 +945,7 @@ void SAL_CALL OleEmbeddedObject::doVerb( sal_Int32 nVerbID )
 
 if ( TryToConvertToOOo( xStream ) )
 {
+aGuard.clear();
 changeState( embed::EmbedStates::ACTIVE );
 return;
 }
diff --git a/embeddedobj/source/msole/olevisual.cxx 
b/embeddedobj/source/msole/olevisual.cxx
index 492541b00df2..83dc0903e0bb 100644
--- a/embeddedobj/source/msole/olevisual.cxx
+++ b/embeddedobj/source/msole/olevisual.cxx
@@ -355,9 +355,6 @@ embed::VisualRepresentation SAL_CALL 
OleEmbeddedObject::getPreferredVisualRepres
 {
 try
 {
-if ( m_nObjectState == embed::EmbedStates::LOADED )
-changeState( embed::EmbedStates::RUNNING );
-
 datatransfer::DataFlavor aDataFlavor(
 "application/x-openoffice-wmf;windows_formatname=\"Image 
WMF\"",
 "Windows Metafile",
@@ -366,6 +363,8 @@ embed::VisualRepresentation SAL_CALL 
OleEmbeddedObject::getPreferredVisualRepres
 embed::VisualRepresentation aVisualRepr;
 {
 osl::ResettableMutexGuardScopedReleaser clearedMutex(aGuard);
+if ( m_nObjectState == embed::EmbedStates::LOADED )
+changeState( embed::EmbedStates::RUNNING );
 aVisualRepr.Data = 
m_pOleComponent->getTransferData(aDataFlavor);
 }
 aVisualRepr.Flavor = aDataFlavor;


Re: VS 2022 version 17.9.1 has a bug preventing building cli_ure

2024-06-20 Thread Oliver Brinzing

I can confirm this issue with

Microsoft Visual Studio Professional 2022 (64-Bit) - Current Version 17.10.3

LINK : error LNK2034: Die Metadaten sind nicht konsistent mit der 
COFF-Symboltabelle: Symbol
"?rtl_ustr_asciil_reverseEquals_WithLength@@$$J0YAEPEB_SPEBDJ@Z" (06000537) 
weist inkonsistente
Metadaten mit (0A0009DC) in climaker_emit.o auf.
climaker_emit.o : error LNK2020: Nicht aufgelöstes Token (0A0009DC) "extern "C" 
unsigned char
__cdecl rtl_ustr_asciil_reverseEquals_WithLength(char16_t const *,char const 
*,long)"
(?rtl_ustr_asciil_reverseEquals_WithLength@@$$J0YAEPEB_SPEBDJ@Z).
D:\sources\libo-core\instdir\sdk\bin\climaker.exe : fatal error LNK1120: 1 
nicht aufgelöste Externe
[LNK] Library/wininetbe1lo.dll
[DEP] LNK:Executable/helpex.exe.d

mt.exe : general error c101008d: Failed to write the updated manifest to the 
resource of file
"D:/sources/libo-core/instdir/sdk/bin/climaker.exe". Das System kann die 
angegebene Datei nicht finden.
[LNK] Executable/helpex.exe
make[1]: *** [D:/sources/libo-core/cli_ure/Executable_climaker.mk:10:
D:/sources/libo-core/instdir/sdk/bin/climaker.exe] Error 96
make[1]: *** Waiting for unfinished jobs
make: *** [Makefile:295: build] Error 2

Am 22.05.2024 um 20:39 schrieb Vasily Melenchuk:

New version of Visual Studio 17.10.0 has exactly the same issue again.
Do not hurry with update.

LINK : error LNK2034: metadata inconsistent with COFF symbol table: 
symbol '?   rtl_ustr_asciil_reverseEquals_WithLength@@$$J0YAEPEB_SPEBDJ@Z' 
(06000589) has inconsistent metadata with(0A000A14) in climaker_emit.o
climaker_emit.o : error LNK2020: unresolved token (0A000A14) "extern "C" 
unsigned char __cdecl   rtl_ustr_asciil_reverseEquals_WithLength(char16_t const *,char const 
*,long)" (?   rtl_ustr_asciil_reverseEquals_WithLength@@$$J0YAEPEB_SPEBDJ@Z)
D:\libreoffice\master\instdir\sdk\bin\climaker.exe : fatal error 
LNK1120: 1 unresolved externals



-Original Message-
From: LibreOffice  On Behalf Of 
Oliver Brinzing
Sent: Thursday, March 21, 2024 10:58 PM
To: libreoffice@lists.freedesktop.org
Subject: Re: VS 2022 version 17.9.1 has a bug preventing building cli_ure

Am 20.03.2024 um 06:01 schrieb Mike Kaganski:

On 24.02.2024 21:50, Mike Kaganski wrote:

After upgrading my VS v.17.9.0 to v.17.9.1, building cli_ure started to fail 
like this:


LINK : error LNK2034: metadata inconsistent with COFF symbol table:
symbol
'?rtl_ustr_asciil_reverseEquals_WithLength@@$$J0YAEPEB_SPEBDJ@Z'
(06000579) has inconsistent metadata with (0A000A1A) in
climaker_emit.o climaker_emit.o : error LNK2020: unresolved token (0A000A1A) "extern 
"C" unsigned char __cdecl rtl_ustr_asciil_reverseEquals_WithLength(char16_t const *,char 
const *,long)"
(?rtl_ustr_asciil_reverseEquals_WithLength@@$$J0YAEPEB_SPEBDJ@Z)
C:\lo\build\instdir\sdk\bin\climaker.exe : fatal error LNK1120: 1
unresolved externals


I have filed a bug to Microsoft:

https://deu01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdev
elopercommunity.visualstudio.com%2Ft%2FLINK-%3A-error-LNK2034%3A-meta
data-inconsis%2F10599604%3Fport%3D1025%26fsid%3Dfdff4046-995a-4c06-8c
64-1c14b9752c8f&data=05%7C02%7Cvasily.melenchuk%40cib.de%7C18f799eaae
bb4c97b38108dc49e142af%7C00dd3e38f5434e1a88b93dbb13d75c49%7C0%7C0%7C6
38466479173686144%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjo
iV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C4%7C%7C%7C&sdata=5yAjhj
9ym%2FhxgKpBUeYmnNftJ2md%2F8D82udjjOOKr%2BY%3D&reserved=0


This problem is fixed in VS 2022 version 17.9.4:
https://deu01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flear
n.microsoft.com%2Fen-us%2Fvisualstudio%2Freleases%2F2022%2Frelease-not
es%2317.9.4&data=05%7C02%7Cvasily.melenchuk%40cib.de%7C18f799eaaebb4c9
7b38108dc49e142af%7C00dd3e38f5434e1a88b93dbb13d75c49%7C0%7C0%7C6384664
79173695033%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMz
IiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C4%7C%7C%7C&sdata=%2FvnkJSIPmEMe
S4bWkRU%2B3sSDSJ0BzdEZ2ERpL8Lh%2F6Y%3D&reserved=0



yes, it works again with VS 2022

btw: i had a build break after a "clean build":

cd /cygdrive/d/sources/libo-core
./g checkout master
./g fetch --tags
./g pull -r

/opt/lo/bin/make clean gb_COLOR=1 gb_TITLES=1

/cygdrive/d/sources/libo-core/autogen.sh \ 
--with-external-tar=/cygdrive/d/sources/lo-externalsrc \ 
--with-junit=/cygdrive/d/sources/junit-4.10.jar \
--with-ant-home=/cygdrive/d/sources/apache-ant-1.9.5 \
--with-jdk-home=/cygdrive/d/Programme/Java/jdk-17 \ --enable-pch \ 
--disable-ccache \ --enable-debug \ --disable-odk \ --disable-online-update \
--with-visual-studio=2022

/opt/lo/bin/make build gb_COLOR=1 gb_TITLES=1 2>&1 | tee build.log

[...]
[PAT] icu
[BIN] dragonbox
[MOD] frozen
[BIN] glm
Configuring OpenSSL version 3.0.13 for target VC-WIN64A Using os-specific seed 
configuration
/cygdrive/d/sources/libo-core/workdir/UnpackedTarball/openssl/crypto/sha/../providers:
 No such file or directory at Configure line 3419.
make[1]: *** 
[D:/sources/lib

New Defects reported by Coverity Scan for LibreOffice

2024-06-20 Thread scan-admin
Hi,

Please find the latest report on new defect(s) introduced to LibreOffice found 
with Coverity Scan.

4 new defect(s) introduced to LibreOffice found with Coverity Scan.


New defect(s) Reported-by: Coverity Scan
Showing 4 of 4 defect(s)


** CID 1604132:  Incorrect expression  (IDENTICAL_BRANCHES)
/vcl/source/gdi/pdfwriter_impl.cxx: 5678 in 
vcl::PDFWriterImpl::finalizeSignature()()



*** CID 1604132:  Incorrect expression  (IDENTICAL_BRANCHES)
/vcl/source/gdi/pdfwriter_impl.cxx: 5678 in 
vcl::PDFWriterImpl::finalizeSignature()()
5672 if (osl::File::E_None != m_aFile.setPos(osl_Pos_Absolut, 
m_nSignatureLastByteRangeNoOffset))
5673 return false;
5674 OString aByteRangeNo = OString::number( nLastByteRangeNo ) + " ]";
5675 
5676 if (m_aFile.write(aByteRangeNo.getStr(), aByteRangeNo.getLength(), 
nWritten) != osl::File::E_None)
5677 {
>>> CID 1604132:  Incorrect expression  (IDENTICAL_BRANCHES)
>>> The same code is executed when the condition "osl::FileBase::E_None != 
>>> this->m_aFile.setPos(1U, nOffset)" is true or false, because the code in 
>>> the if-then branch and after the if statement is identical. Should the if 
>>> statement be removed?
5678 if (osl::File::E_None != m_aFile.setPos(osl_Pos_Absolut, 
nOffset))
5679 return false;
5680 return false;
5681 }
5682 
5683 // 3- create the PKCS#7 object using NSS

** CID 1604131:  Null pointer dereferences  (NULL_RETURNS)



*** CID 1604131:  Null pointer dereferences  (NULL_RETURNS)
/editeng/source/editeng/impedit3.cxx: 643 in 
ImpEditEngine::CheckPageOverflow()()
637 
638 sal_uInt32 nParaCount = maParaPortionList.Count();
639 bool bOnlyOneEmptyPara = false;
640 if (nParaCount == 1)
641 {
642 const ParaPortion* pPPortion = 
GetParaPortions().SafeGetObject(0);
>>> CID 1604131:  Null pointer dereferences  (NULL_RETURNS)
>>> Dereferencing a pointer that might be "nullptr" "pPPortion->GetLines()" 
>>> when calling "Count".
643 bOnlyOneEmptyPara = pPPortion->GetLines().Count() == 1
644 && pPPortion->GetLines()[0].GetLen() == 0;
645 }
646 
647 if (nTxtHeight > nBoxHeight && !bOnlyOneEmptyPara)
648 {

** CID 1604130:  Null pointer dereferences  (NULL_RETURNS)



*** CID 1604130:  Null pointer dereferences  (NULL_RETURNS)
/editeng/source/editeng/impedit2.cxx: 3697 in 
ImpEditEngine::GetLineNumberAtIndex(int, int)()
3691 {
3692 // we explicitly allow for the index to point at the character 
right behind the text
3693 const bool bValidIndex = /*0 <= nIndex &&*/ nIndex <= 
pNode->Len();
3694 OSL_ENSURE( bValidIndex, "GetLineNumberAtIndex: invalid index" 
);
3695 const ParaPortion* pPPortion = 
maParaPortionList.SafeGetObject(nPara);
3696 const EditLineList& rLineList = pPPortion->GetLines();
>>> CID 1604130:  Null pointer dereferences  (NULL_RETURNS)
>>> Dereferencing a pointer that might be "nullptr" "rLineList" when 
>>> calling "Count".
3697 const sal_Int32 nLineCount = rLineList.Count();
3698 if (nIndex == pNode->Len())
3699 nLineNo = nLineCount > 0 ? nLineCount - 1 : 0;
3700 else if (bValidIndex)   // nIndex < pNode->Len()
3701 {
3702 sal_Int32 nStart = -1, nEnd = -1;

** CID 1604129:  Uninitialized members  (UNINIT_CTOR)
/codemaker/source/netmaker/netproduce.hxx: 27 in NetProducer::NetProducer()()



*** CID 1604129:  Uninitialized members  (UNINIT_CTOR)
/codemaker/source/netmaker/netproduce.hxx: 27 in NetProducer::NetProducer()()
21 class NetProducer
22 {
23 public:
24 NetProducer()
25 : m_manager(new TypeManager())
26 {
>>> CID 1604129:  Uninitialized members  (UNINIT_CTOR)
>>> Non-static class member "m_dryRun" is not initialized in this 
>>> constructor nor in any functions that it calls.
27 }
28 
29 public:
30 void initProducer(const NetOptions& options);
31 void produceAll();
32 



To view the defects in Coverity Scan visit, 
https://u15810271.ct.sendgrid.net/ls/click?upn=u001.AxU2LYlgjL6eX23u9ErQy-2BKADyCpvUKOL6EWmZljiu6VvXBlQRUbS683tC8265rGNPXqJ1ffcoLZCnTuJFQbNcTEkb4XaEQkzovKhJ5DB3c-3DPf01_A9M4dSy7guk8NP6DcfgslOyvJRzavztVIKj6nRqYjYpWom7SJFyX0y710bz0kUGtIRGEEv60T

core.git: cui/uiconfig

2024-06-20 Thread Andrea Gelmini (via logerrit)
 cui/uiconfig/ui/optsavepage.ui |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 6958d226e6ce75c1b676ac041b5b59140c1f646b
Author: Andrea Gelmini 
AuthorDate: Wed Jun 19 13:40:17 2024 +0200
Commit: Andrea Gelmini 
CommitDate: Fri Jun 21 07:48:01 2024 +0200

Fix typo

Change-Id: I05003d690d10ad03aa498a69063368e33340596d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169210
Reviewed-by: Christian Lohmaier 
Tested-by: Jenkins

diff --git a/cui/uiconfig/ui/optsavepage.ui b/cui/uiconfig/ui/optsavepage.ui
index 7a7dcf1dee34..37378b17e141 100644
--- a/cui/uiconfig/ui/optsavepage.ui
+++ b/cui/uiconfig/ui/optsavepage.ui
@@ -230,7 +230,7 @@
 True
 
   
-Specifies that the office suite saves 
the modified document itself, instead of creaing a temporary AutoRecovery 
version. Uses the same time interval as AutoRecovery does.
+Specifies that the office suite saves 
the modified document itself, instead of creating a temporary AutoRecovery 
version. Uses the same time interval as AutoRecovery does.
   
 
   


core.git: unotools/source

2024-06-20 Thread Andrea Gelmini (via logerrit)
 unotools/source/config/fontcfg.cxx |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit c51d428510c855423c9e264e7eaa355f7c26a215
Author: Andrea Gelmini 
AuthorDate: Tue Jun 18 20:43:04 2024 +0200
Commit: Andrea Gelmini 
CommitDate: Fri Jun 21 07:43:42 2024 +0200

Fix typo in code

Change-Id: I2d9c6e1c90c445bc6b2df257ed5c2e845225e987
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169152
Tested-by: Jenkins
Reviewed-by: Andrea Gelmini 

diff --git a/unotools/source/config/fontcfg.cxx 
b/unotools/source/config/fontcfg.cxx
index aafa5246274e..2813131b1472 100644
--- a/unotools/source/config/fontcfg.cxx
+++ b/unotools/source/config/fontcfg.cxx
@@ -510,8 +510,8 @@ ImplFontAttrTypeSearchData const aImplTypeAttrSearchList[] =
 {   "monotype", ImplFontAttrs::None },
 {   "linotype", ImplFontAttrs::None },
 {   "titling",  ImplFontAttrs::Titling },
-{   "captitals",ImplFontAttrs::Capitals },
-{   "captital", ImplFontAttrs::Capitals },
+{   "capitals", ImplFontAttrs::Capitals },
+{   "capital",  ImplFontAttrs::Capitals },
 {   "caps", ImplFontAttrs::Capitals },
 {   "italic",   ImplFontAttrs::Italic },
 {   "oblique",  ImplFontAttrs::Italic },


core.git: include/svx sc/source solenv/sanitizers

2024-06-20 Thread Kira Tubo (via logerrit)
 include/svx/strings.hrc |2 +-
 sc/source/ui/sidebar/CellBorderStyleControl.cxx |1 -
 solenv/sanitizers/ui/modules/scalc.suppr|3 +++
 3 files changed, 4 insertions(+), 2 deletions(-)

New commits:
commit e5c55b2cfc47dcc5b711811fedc75ee982e3d46e
Author: Kira Tubo 
AuthorDate: Thu Jun 20 16:01:24 2024 -0700
Commit: Michael Weghorn 
CommitDate: Fri Jun 21 07:40:37 2024 +0200

tdf#146468: Fix typo and move comments

Fix typo on variable RID_SVXSTR_TABLE_PRESET_OUTER and move comments
about consolidating border tooltip strings to 
solenv/sanitizers/ui/modules/scalc.suppr

See comments on Gerrit for more information: 
https://gerrit.libreoffice.org/c/core/+/169052

Change-Id: Ic5283e568e13023242858850dbce8922e2c80d8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169308
Reviewed-by: Michael Weghorn 
Tested-by: Jenkins

diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc
index cf3c12e12a4e..8c61f7714e09 100644
--- a/include/svx/strings.hrc
+++ b/include/svx/strings.hrc
@@ -1811,7 +1811,7 @@
 
 // strings related to borders
 #define RID_SVXSTR_TABLE_PRESET_NONE
NC_("RID_SVXSTR_TABLE_PRESET_NONE", "No Borders")
-#define RID_SVXSTR_TABLE_PRESET_OUTER   
NC_("RID_SVXSTR_TABLE_PRESET_ONLYOUTER", "Outer Border") // Sidebar/toolbar
+#define RID_SVXSTR_TABLE_PRESET_OUTER   
NC_("RID_SVXSTR_TABLE_PRESET_OUTER", "Outer Border") // Sidebar/toolbar
 #define RID_SVXSTR_TABLE_PRESET_ONLYOUTER   
NC_("RID_SVXSTR_TABLE_PRESET_ONLYOUTER", "Outer Border Only") // Format dialog
 #define RID_SVXSTR_TABLE_PRESET_OUTERHORI   
NC_("RID_SVXSTR_TABLE_PRESET_OUTERHORI", "Outer Border and Horizontal Lines")
 #define RID_SVXSTR_TABLE_PRESET_OUTERALL
NC_("RID_SVXSTR_TABLE_PRESET_OUTERALL", "Outer Border and All Inner Lines")
diff --git a/sc/source/ui/sidebar/CellBorderStyleControl.cxx 
b/sc/source/ui/sidebar/CellBorderStyleControl.cxx
index 12ac05d23794..f8e792ee183b 100644
--- a/sc/source/ui/sidebar/CellBorderStyleControl.cxx
+++ b/sc/source/ui/sidebar/CellBorderStyleControl.cxx
@@ -64,7 +64,6 @@ CellBorderStylePopup::~CellBorderStylePopup()
 
 void CellBorderStylePopup::Initialize()
 {
-// Tooltip values now controlled in svx/strings.hrc instead of 
sc/uiconfig/scalc/ui/floatingborderstyle.ui
 mxTBBorder1->connect_clicked ( LINK(this, CellBorderStylePopup, 
TB1SelectHdl) );
 mxTBBorder1->set_item_tooltip_text(0, 
SvxResId(RID_SVXSTR_TABLE_PRESET_NONE));
 mxTBBorder1->set_item_tooltip_text(1, 
SvxResId(RID_SVXSTR_TABLE_PRESET_OUTERALL));
diff --git a/solenv/sanitizers/ui/modules/scalc.suppr 
b/solenv/sanitizers/ui/modules/scalc.suppr
index 83df53230a57..e2e164de3b01 100644
--- a/solenv/sanitizers/ui/modules/scalc.suppr
+++ b/solenv/sanitizers/ui/modules/scalc.suppr
@@ -45,6 +45,8 @@ 
sc/uiconfig/scalc/ui/definedatabaserangedialog.ui://GtkLabel[@id='invalid'] orph
 sc/uiconfig/scalc/ui/definename.ui://GtkLabel[@id='label'] orphan-label
 sc/uiconfig/scalc/ui/doubledialog.ui://GtkEntry[@id='value'] no-labelled-by
 sc/uiconfig/scalc/ui/externaldata.ui://GtkLabel[@id='secondsft'] orphan-label
+
+// Tooltip values now controlled in svx/strings.hrc instead of 
sc/uiconfig/scalc/ui/floatingborderstyle.ui
 sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='none'] 
button-no-label
 sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='all'] 
button-no-label
 sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='outside'] 
button-no-label
@@ -61,6 +63,7 @@ 
sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='diagup'] button
 sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='diagdown'] 
button-no-label
 sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='topbottom'] 
button-no-label
 sc/uiconfig/scalc/ui/floatingborderstyle.ui://GtkToolButton[@id='leftright'] 
button-no-label
+
 sc/uiconfig/scalc/ui/fourieranalysisdialog.ui://GtkLabel[@id='error-message'] 
orphan-label
 sc/uiconfig/scalc/ui/groupbynumber.ui://GtkEntry[@id='edit_by'] no-labelled-by
 sc/uiconfig/scalc/ui/headerfootercontent.ui://GtkLabel[@id='labelFT_H_CUSTOM'] 
orphan-label


core.git: Changes to 'refs/tags/cib_contract49c-24.2.4.2.M2'

2024-06-20 Thread Thorsten Behrens (via logerrit)
Tag 'cib_contract49c-24.2.4.2.M2' created by Thorsten Behrens 
 at 2024-06-20 22:29 +

cib_contract49c-24.2.4.2.M2
-BEGIN PGP SIGNATURE-

iNUEABYKAH0WIQRV78SO268/dhkw1IIeB5amgXyR5gUCZnStNl8UgAAuAChp
c3N1ZXItZnByQG5vdGF0aW9ucy5vcGVucGdwLmZpZnRoaG9yc2VtYW4ubmV0NTVF
RkM0OEVEQkFGM0Y3NjE5MzBENDgyMUUwNzk2QTY4MTdDOTFFNgAKCRAeB5amgXyR
5r+QAP9CsKpmTggRG0aElRKhbMIcGMq2YjkWEVMwBk2evq0ItAEApwvh7w86tykd
CP3B30eoFECc+fA5PzU2ME8zmyvN/Q0=
=VUeP
-END PGP SIGNATURE-

Changes since cib_contract49c-24.2.4.2.M1-2:
---
 0 files changed
---


core.git: sw/inc

2024-06-20 Thread Andrea Gelmini (via logerrit)
 sw/inc/unoframe.hxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 151d997365f7bf271d63af535d29a9c3439c6d46
Author: Andrea Gelmini 
AuthorDate: Thu Jun 20 19:18:03 2024 +0200
Commit: Andrea Gelmini 
CommitDate: Thu Jun 20 23:50:41 2024 +0200

Fix translation

Change-Id: I9a3fd130260b2db4a19830465035a51c25ace041
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169219
Tested-by: Jenkins
Reviewed-by: Andrea Gelmini 

diff --git a/sw/inc/unoframe.hxx b/sw/inc/unoframe.hxx
index e94d99434bc2..46963a85c425 100644
--- a/sw/inc/unoframe.hxx
+++ b/sw/inc/unoframe.hxx
@@ -203,7 +203,7 @@ public:
 virtual rtl::Reference< SwXTextCursor > createXTextCursorByRange(
 const ::css::uno::Reference< ::css::text::XTextRange >& 
aTextPosition ) override;
 
-//XEnumerationAccess - frueher XParagraphEnumerationAccess
+//XEnumerationAccess - was: XParagraphEnumerationAccess
 virtual css::uno::Reference< css::container::XEnumeration >  SAL_CALL 
createEnumeration() override;
 
 //XElementAccess


core.git: sw/source

2024-06-20 Thread Andrea Gelmini (via logerrit)
 sw/source/core/layout/fly.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit d5e00871def3d67be63a240991dd0888ff8ac3bb
Author: Andrea Gelmini 
AuthorDate: Thu Jun 20 19:14:39 2024 +0200
Commit: Andrea Gelmini 
CommitDate: Thu Jun 20 23:50:10 2024 +0200

Fix typo

Change-Id: I7faabbb1906ce12978de4c8ddad7b1edf5bad4e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169230
Tested-by: Jenkins
Reviewed-by: Andrea Gelmini 

diff --git a/sw/source/core/layout/fly.cxx b/sw/source/core/layout/fly.cxx
index 0ed011effe79..5ad4d6e096b3 100644
--- a/sw/source/core/layout/fly.cxx
+++ b/sw/source/core/layout/fly.cxx
@@ -2487,7 +2487,7 @@ bool SwFlyFrame::IsResizeValid(const SwBorderAttrs 
*pAttrs, Size aTargetSize)
 }
 
 // if not valid resize, and both AutoSizeWidth and AutoSizeHeight,
-// then consider resize is valid if any one of the dimensions was changed 
from it's original size
+// then consider resize is valid if any one of the dimensions was changed 
from its original size
 // (the frame's dimensions), and the destination dimension is a valid one.
 if (bAutosizeWidth && bAutosizeHeight && !bIsValidResize)
 {


core.git: Branch 'feature/cib_contract49c' - include/xmloff sd/qa sw/qa sw/source xmloff/source

2024-06-20 Thread Thorsten Behrens (via logerrit)
 include/xmloff/txtparae.hxx   |7 
 sd/qa/unit/data/odp/tdf161023.fodp|   35 -
 sd/qa/unit/import-tests2.cxx  |   52 --
 sw/qa/core/text/data/number-portion-format.odt|binary
 sw/qa/extras/htmlexport/xhtmlexport.cxx   |4 
 sw/qa/extras/odfexport/data/table_in_frame_to_page.fodt   |   66 ---
 sw/qa/extras/odfexport/data/tdf160253_ordinary_numbering.fodt |   43 --
 sw/qa/extras/odfexport/data/tdf160253_outline_numbering.fodt  |   37 -
 sw/qa/extras/odfexport/odfexport2.cxx |   84 
 sw/qa/extras/odfimport/data/empty_line_in_text_box.fodt   |   31 -
 sw/qa/extras/odfimport/odfimport.cxx  |   53 --
 sw/source/core/text/txtfld.cxx|   22 +
 sw/source/filter/ww8/ww8par.cxx   |   19 
 sw/source/filter/ww8/ww8par.hxx   |2 
 sw/source/filter/ww8/ww8par2.cxx  |4 
 sw/source/filter/ww8/ww8par5.cxx  |2 
 sw/source/filter/ww8/ww8par6.cxx  |4 
 sw/source/filter/xml/xmlfmte.cxx  |2 
 xmloff/source/text/txtparae.cxx   |  208 +++---
 xmloff/source/text/txtparai.cxx   |   13 
 20 files changed, 213 insertions(+), 475 deletions(-)

New commits:
commit efedfae6a340bac4ad49843c178ae1b45a92352c
Author: Thorsten Behrens 
AuthorDate: Thu Jun 20 23:38:43 2024 +0200
Commit: Thorsten Behrens 
CommitDate: Thu Jun 20 23:39:51 2024 +0200

Revert attempted clipboard fixes on branch

This is a squashed revert, consisting of:

* Revert "tdf#161054: drop support of last empty span as paragraph mark 
format"
* Revert "tdf#161023: Empty spans may only define paragraph marks in text 
documents"
* Revert "This block seems obsolete now, try to drop it"
* Revert "Make sure to export autostyles from inside frames anchored to 
page"
* Revert "tdf#160253: fix list identifier export decision code"

diff --git a/include/xmloff/txtparae.hxx b/include/xmloff/txtparae.hxx
index ec07d1af8112..436c2d2b629e 100644
--- a/include/xmloff/txtparae.hxx
+++ b/include/xmloff/txtparae.hxx
@@ -114,8 +114,6 @@ class XMLOFF_DLLPUBLIC XMLTextParagraphExport : public 
XMLStyleExport
 
 struct DocumentListNodes;
 std::unique_ptr mpDocumentListNodes;
-std::vector maDocumentNodeOrder;
-bool bInDocumentNodeOrderCollection = false;
 
 o3tl::sorted_vector> 
maFrameRecurseGuard;
 o3tl::sorted_vector> 
maShapeRecurseGuard;
@@ -474,7 +472,9 @@ public:
 exportText( rText, rBaseSection, true, bIsProgress, 
true/*bExportParagraph*/ );
 }
 
-void collectTextAutoStylesAndNodeExportOrder(bool bIsProgress);
+// It the model implements the xAutoStylesSupplier interface, the automatic
+// styles can exported without iterating over the text portions
+void collectTextAutoStylesOptimized( bool bIsProgress );
 
 // This method exports all automatic styles that have been collected.
 void exportTextAutoStyles();
@@ -540,7 +540,6 @@ public:
 void PopTextListsHelper();
 
 private:
-void RecordNodeIndex(const css::uno::Reference& 
xTextContent);
 bool ShouldSkipListId(const css::uno::Reference& 
xTextContent);
 bool ExportListId() const;
 
diff --git a/sd/qa/unit/data/odp/tdf161023.fodp 
b/sd/qa/unit/data/odp/tdf161023.fodp
deleted file mode 100644
index bf3a894cec4b..
--- a/sd/qa/unit/data/odp/tdf161023.fodp
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
- 
-  
- 
- 
-  
-   
-  
- 
- 
-  
-   
-  
- 
- 
-  
-   
-  
- 
- 
-  
-   
-
- 
-  a
-  
-  c
- 
-
-   
-  
- 
-
\ No newline at end of file
diff --git a/sd/qa/unit/import-tests2.cxx b/sd/qa/unit/import-tests2.cxx
index a69a30ef991a..ac730a24d6bf 100644
--- a/sd/qa/unit/import-tests2.cxx
+++ b/sd/qa/unit/import-tests2.cxx
@@ -1982,58 +1982,6 @@ CPPUNIT_TEST_FIXTURE(SdImportTest2, testMasterSlides)
 CPPUNIT_ASSERT_EQUAL(sal_Int32(7), xMasterPages->getCount());
 }
 
-CPPUNIT_TEST_FIXTURE(SdImportTest2, testTdf161023)
-{
-// Given a shape with three paragraphs (18pt), all directly assigned a 
smaller font (10pt)
-createSdImpressDoc("odp/tdf161023.fodp");
-auto shape = getShapeFromPage(0, 0);
-
-// 1st paragraph, not empty
-{
-auto paragraph(getParagraphFromShape(0, shape));
-CPPUNIT_ASSERT_EQUAL(u"a"_ustr, paragraph->getString());
-auto run(getRunFromParagraph(0, paragraph));
-CPPUNIT_ASSERT_EQUAL(u"a"_ustr, run->getString());
-uno::Reference xPropSet(run, 
uno::UNO_QUERY_THROW);
-double fCharHeight = 0;
-xPropSet->getPropertyValue("CharHeight") >>= fCharHeight;
-CPPUNIT_ASSERT_EQUAL(10.0, fCharHeight);
-// No more runs
-CPPUNIT_

core.git: Branch 'libreoffice-24-8' - external/libxslt

2024-06-20 Thread Stephan Bergmann (via logerrit)
 external/libxslt/ExternalPackage_libxslt.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit dcaf9c147a1cfea268db49952171338555379794
Author: Stephan Bergmann 
AuthorDate: Thu Jun 20 15:46:51 2024 +0200
Commit: Xisco Fauli 
CommitDate: Thu Jun 20 22:49:43 2024 +0200

Fix build

...after 4eb9cde4db28616e0b0c9cd6825830ab7d2f3c96 "libxslt: uprade to 
1.1.41",

> external/libxslt/ExternalPackage_libxslt.mk:28: *** file 
workdir_for_build/UnpackedTarball/libxslt/libexslt/.libs/libexslt.so.0.8.21 
does not exist in the tarball.  Stop.

at least during an Emscripten cross-build

Change-Id: I7fcde7f8708fba68d5d9b751420e402c5da41f3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169288
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/external/libxslt/ExternalPackage_libxslt.mk 
b/external/libxslt/ExternalPackage_libxslt.mk
index c1a8ee1217f1..42b2004728e5 100644
--- a/external/libxslt/ExternalPackage_libxslt.mk
+++ b/external/libxslt/ExternalPackage_libxslt.mk
@@ -25,7 +25,7 @@ $(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.dl
 endif
 else # OS!=WNT
 $(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libxslt.so.1,libxslt/.libs/libxslt.so.1.1.$(LIBXSLT_VERSION_MICRO)))
-$(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.21))
+$(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.22))
 endif
 endif # DISABLE_DYNLOADING
 


core.git: Branch 'feature/cib_contract49c' - translations

2024-06-20 Thread Thorsten Behrens (via logerrit)
 translations |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit db31d9c82e5b8c530ed7270f459451dd0f83777c
Author: Thorsten Behrens 
AuthorDate: Thu Jun 20 22:18:11 2024 +0200
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 22:18:11 2024 +0200

Update git submodules

* Update translations from branch 'feature/cib_contract49c'
  to 86983d17704f420a06f585a8e8d229a328f50908
  - Add translation for "autoformat warning" msgbox

Change-Id: Iaf9517b559e1193c59f94b1e146a748119131d95

diff --git a/translations b/translations
index 221d20eaf354..86983d17704f 16
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit 221d20eaf354f82b10065e8d9fc3b365182412c1
+Subproject commit 86983d17704f420a06f585a8e8d229a328f50908


translations.git: Branch 'feature/cib_contract49c' - source/de

2024-06-20 Thread Thorsten Behrens (via logerrit)
 source/de/sc/messages.po |   16 
 1 file changed, 16 insertions(+)

New commits:
commit 86983d17704f420a06f585a8e8d229a328f50908
Author: Thorsten Behrens 
AuthorDate: Thu Jun 20 22:17:11 2024 +0200
Commit: Thorsten Behrens 
CommitDate: Thu Jun 20 22:17:11 2024 +0200

Add translation for "autoformat warning" msgbox

Change-Id: Iaf9517b559e1193c59f94b1e146a748119131d95

diff --git a/source/de/sc/messages.po b/source/de/sc/messages.po
index 525e7ce25da..7fb29633dc1 100644
--- a/source/de/sc/messages.po
+++ b/source/de/sc/messages.po
@@ -1536,6 +1536,22 @@ msgstr ""
 "muss ein Bereich von mindestens
"
 "mit 3 × 3 Zellen ausgewählt sein."
 
+#. c8AhB
+#: sc/inc/globstr.hrc:272
+msgctxt "STR_AUTOFORMAT_WAIT_WARNING_TITLE"
+msgid ""
+msgstr ""
+
+#. X95F9
+#: sc/inc/globstr.hrc:273
+msgctxt "STR_AUTOFORMAT_WAIT_WARNING"
+msgid ""
+"Applying AutoFormat to the selected range may take a long time.
"
+"Do you want to proceed?"
+msgstr ""
+"Anwendung der Autoformatierung auf den selektierten Bereich kann erhebliche 
Zeit beanspruchen.
"
+"Möchten Sie fortfahren?"
+
 #. iySox
 #: sc/inc/globstr.hrc:272
 msgctxt "STR_OPTIONAL"


core.git: bridges/source

2024-06-20 Thread Stephan Bergmann (via logerrit)
 bridges/source/cpp_uno/gcc3_wasm/abi.hxx |   78 +++
 1 file changed, 68 insertions(+), 10 deletions(-)

New commits:
commit f4ec967599f5dafa1ce477631d7c2e8de005e28f
Author: Stephan Bergmann 
AuthorDate: Thu Jun 20 17:09:45 2024 +0200
Commit: Stephan Bergmann 
CommitDate: Thu Jun 20 21:49:23 2024 +0200

Fix redefinion of Emscripten __cxxabiv1::__cxa_exception


system/lib/libcxxabi/src/cxa_exception.h has two different definitions of 
that
struct, a short one for when __USING_EMSCRIPTEN_EXCEPTIONS__ is defined, 
and a
long one for the other case.  In 7175431a4b2154113c2c3c28f7ae8a8f14a84c7a
"Implement exception catching", I had naively copied the short version, 
assuming
that __USING_EMSCRIPTEN_EXCEPTIONS__ was something that sounded like it 
would be
defined with --enable-wasm-exceptions.  But some debugging of actual 
exception
handling now showed that the assumption had apparently been wrong (though I
still have no idea about the semantics of that 
__USING_EMSCRIPTEN_EXCEPTIONS__
define, and when it would or would not be defined), and that I had copied 
the
wrong version.

The relevant test code

> try {
> const ret = invoke.invoke('throwRuntimeException', params, 
outparamindex, outparam);
> console.assert(false);
> ret.delete();
> } catch (e) {
> const [type, message] = getExceptionMessage(e);
> console.assert(type === 
'com::sun::star::reflection::InvocationTargetException');
> console.assert(message === undefined); //TODO
> //TODO: inspect wrapped css.uno.RuntimeException
> decrementExceptionRefcount(e);
> }

in unotest/source/embindtest/embindtest.js had apparently happened to not 
cause a
crash with the wrong version of __cxxabiv1::__cxa_exception, but had also
happened to not detect the mistake due to the relevant parts being 
commented out
with TODO (because, in turn, proper UNO exception catching is still lacking 
in
our Embind-based JS binding).

Change-Id: I718087c7ed2c17808696267ece17237d5cdf2f54
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169305
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/bridges/source/cpp_uno/gcc3_wasm/abi.hxx 
b/bridges/source/cpp_uno/gcc3_wasm/abi.hxx
index 67dbd06c0390..160c15ee8259 100644
--- a/bridges/source/cpp_uno/gcc3_wasm/abi.hxx
+++ b/bridges/source/cpp_uno/gcc3_wasm/abi.hxx
@@ -13,6 +13,7 @@
 
 #include 
 #include 
+#include 
 #include 
 
 #include 
@@ -22,24 +23,81 @@
 #include 
 
 #if !HAVE_CXXABI_H_CXA_EXCEPTION
-// , 
system/lib/libcxxabi/src/cxa_exception.h:
+
+// , 
system/lib/libunwind/include/unwind_itanium.h,
+// except where MODIFIED:
+typedef std::/*MODIFIED*/ uint64_t _Unwind_Exception_Class;
+struct _Unwind_Exception
+{
+_Unwind_Exception_Class exception_class;
+void (*exception_cleanup)(/*MODIFIED: _Unwind_Reason_Code reason, 
_Unwind_Exception* exc*/);
+#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+std::/*MODIFIED*/ uintptr_t private_[6];
+#elif !defined(__USING_WASM_EXCEPTIONS__)
+std::/*MODIFIED*/ uintptr_t private_1; // non-zero means forced unwind
+std::/*MODIFIED*/ uintptr_t private_2; // holds sp that phase1 found for 
phase2 to use
+#endif
+#if __SIZEOF_POINTER__ == 4
+// The implementation of _Unwind_Exception uses an attribute mode on the
+// above fields which has the side effect of causing this whole struct to
+// round up to 32 bytes in size (48 with SEH). To be more explicit, we add
+// pad fields added for binary compatibility.
+std::/*MODIFIED*/ uint32_t reserved[3];
+#endif
+// The Itanium ABI requires that _Unwind_Exception objects are "double-word
+// aligned".  GCC has interpreted this to mean "use the maximum useful
+// alignment for the target"; so do we.
+} __attribute__((__aligned__));
+
+// , 
system/lib/libcxxabi/src/cxa_exception.h,
+// except where MODIFIED:
 namespace __cxxabiv1
 {
 struct __cxa_exception
 {
-std::size_t referenceCount;
+#if defined(__LP64__) || defined(_WIN64) || defined(_LIBCXXABI_ARM_EHABI)
+// Now _Unwind_Exception is marked with __attribute__((aligned)),
+// which implies __cxa_exception is also aligned. Insert padding
+// in the beginning of the struct, rather than before unwindHeader.
+void* reserve;
+// This is a new field to support C++11 exception_ptr.
+// For binary compatibility it is at the start of this
+// struct which is prepended to the object thrown in
+// __cxa_allocate_exception.
+std::/*MODIFIED*/ size_t referenceCount;
+#endif
+//  Manage the exception 

core.git: Branch 'feature/cib_contract49c' - sw/source

2024-06-20 Thread Samuel Mehrbrodt (via logerrit)
 sw/source/uibase/shells/txtnum.cxx |2 ++
 1 file changed, 2 insertions(+)

New commits:
commit f7402d54c96a3945e3df3f042cedc8ddec3185ea
Author: Samuel Mehrbrodt 
AuthorDate: Thu Jun 20 08:25:46 2024 +0200
Commit: Thorsten Behrens 
CommitDate: Thu Jun 20 21:43:33 2024 +0200

tdf#161653 Fix selecting from numbering dropdown

Change-Id: I5ba2133395619ec96b32940a6ceddf0c32615a03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169253
Tested-by: Thorsten Behrens 
Reviewed-by: Thorsten Behrens 

diff --git a/sw/source/uibase/shells/txtnum.cxx 
b/sw/source/uibase/shells/txtnum.cxx
index 43c1b8d1aedd..e5d2089c1933 100644
--- a/sw/source/uibase/shells/txtnum.cxx
+++ b/sw/source/uibase/shells/txtnum.cxx
@@ -262,6 +262,8 @@ void SwTextShell::ExecSetNumber(SfxRequest const &rReq)
 case FN_SVX_SET_OUTLINE:
 {
 const SfxUInt16Item* pIndexItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_INDEX );
+if (!pIndexItem) // tdf#161653
+pIndexItem = rReq.GetArg(nSlot);
 const SfxStringItem* pCharItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_CHAR );
 const SfxStringItem* pFontItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_FONT );
 


core.git: vcl/ios vcl/osx

2024-06-20 Thread Patrick Luby (via logerrit)
 vcl/ios/DataFlavorMapping.cxx |   11 +--
 vcl/osx/DataFlavorMapping.cxx |   10 +-
 2 files changed, 18 insertions(+), 3 deletions(-)

New commits:
commit dd86e0a51a6539872f51a653580867bf0cfc22c5
Author: Patrick Luby 
AuthorDate: Thu Jun 20 11:11:54 2024 -0400
Commit: Patrick Luby 
CommitDate: Thu Jun 20 20:16:27 2024 +0200

tdf#161461 stop crashing by retaining NSString

OUStringToNSString() returns an autoreleased NSString so it
needs to be retained for the life of maOfficeOnlyTypes.

Change-Id: Ic3777f818b7cada8e88e97965531fc0a7f2e825c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169284
Tested-by: Jenkins
Reviewed-by: Patrick Luby 

diff --git a/vcl/ios/DataFlavorMapping.cxx b/vcl/ios/DataFlavorMapping.cxx
index 14bf0f6f43d7..607f110222bb 100644
--- a/vcl/ios/DataFlavorMapping.cxx
+++ b/vcl/ios/DataFlavorMapping.cxx
@@ -421,10 +421,17 @@ NSString* 
DataFlavorMapper::openOfficeToSystemFlavor(const DataFlavor& oOOFlavor
 OfficeOnlyTypes::const_iterator it = 
maOfficeOnlyTypes.find(oOOFlavor.MimeType);
 
 if (it == maOfficeOnlyTypes.end())
-sysFlavor = maOfficeOnlyTypes[oOOFlavor.MimeType]
-= OUStringToNSString(oOOFlavor.MimeType);
+{
+// tdf#161461 stop crashing by retaining NSString
+// OUStringToNSString() returns an autoreleased NSString so it
+// needs to be retained for the life of maOfficeOnlyTypes.
+sysFlavor = maOfficeOnlyTypes[oOOFlavor.MimeType] =
+[OUStringToNSString(oOOFlavor.MimeType) retain];
+}
 else
+{
 sysFlavor = it->second;
+}
 }
 
 return sysFlavor;
diff --git a/vcl/osx/DataFlavorMapping.cxx b/vcl/osx/DataFlavorMapping.cxx
index d02582653f6d..16a2c8be9207 100644
--- a/vcl/osx/DataFlavorMapping.cxx
+++ b/vcl/osx/DataFlavorMapping.cxx
@@ -586,9 +586,17 @@ const NSString* 
DataFlavorMapper::openOfficeToSystemFlavor( const DataFlavor& oO
 OfficeOnlyTypes::const_iterator it = maOfficeOnlyTypes.find( 
oOOFlavor.MimeType );
 
 if( it == maOfficeOnlyTypes.end() )
-sysFlavor = maOfficeOnlyTypes[ oOOFlavor.MimeType ] = 
OUStringToNSString( oOOFlavor.MimeType );
+{
+// tdf#161461 stop crashing by retaining NSString
+// OUStringToNSString() returns an autoreleased NSString so it
+// needs to be retained for the life of maOfficeOnlyTypes.
+sysFlavor = maOfficeOnlyTypes[oOOFlavor.MimeType] =
+[OUStringToNSString(oOOFlavor.MimeType) retain];
+}
 else
+{
 sysFlavor = it->second;
+}
 }
 
 return sysFlavor;


core.git: external/libxslt

2024-06-20 Thread Stephan Bergmann (via logerrit)
 external/libxslt/ExternalPackage_libxslt.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 9288a75f716972bb5d65031c624cb22ea4cb8ee8
Author: Stephan Bergmann 
AuthorDate: Thu Jun 20 15:46:51 2024 +0200
Commit: Stephan Bergmann 
CommitDate: Thu Jun 20 20:14:28 2024 +0200

Fix build

...after 4eb9cde4db28616e0b0c9cd6825830ab7d2f3c96 "libxslt: uprade to 
1.1.41",

> external/libxslt/ExternalPackage_libxslt.mk:28: *** file 
workdir_for_build/UnpackedTarball/libxslt/libexslt/.libs/libexslt.so.0.8.21 
does not exist in the tarball.  Stop.

at least during an Emscripten cross-build

Change-Id: I7fcde7f8708fba68d5d9b751420e402c5da41f3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169280
Reviewed-by: Stephan Bergmann 
Tested-by: Jenkins

diff --git a/external/libxslt/ExternalPackage_libxslt.mk 
b/external/libxslt/ExternalPackage_libxslt.mk
index c1a8ee1217f1..42b2004728e5 100644
--- a/external/libxslt/ExternalPackage_libxslt.mk
+++ b/external/libxslt/ExternalPackage_libxslt.mk
@@ -25,7 +25,7 @@ $(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.dl
 endif
 else # OS!=WNT
 $(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libxslt.so.1,libxslt/.libs/libxslt.so.1.1.$(LIBXSLT_VERSION_MICRO)))
-$(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.21))
+$(eval $(call 
gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.22))
 endif
 endif # DISABLE_DYNLOADING
 


core.git: sw/CppunitTest_sw_writerfilter_ooxml.mk sw/qa

2024-06-20 Thread Miklos Vajna (via logerrit)
 sw/CppunitTest_sw_writerfilter_ooxml.mk  |4 
 sw/qa/writerfilter/ooxml/data/recursive_header_rels.docx |binary
 2 files changed, 4 insertions(+)

New commits:
commit b49c6551fcdeb2ff9c965fcbe885344f5f108e59
Author: Miklos Vajna 
AuthorDate: Thu Jun 20 16:46:52 2024 +0200
Commit: Miklos Vajna 
CommitDate: Thu Jun 20 19:40:47 2024 +0200

CppunitTest_sw_writerfilter_ooxml: turn on set_non_application_font_use

Similar to commit dc4d7500c9d283e26d1553ce11366a217cf1f69d (Fix
CppunitTest_sd_import_tests-smartart non_application_font_use,
2023-10-23):

- sw/qa/writerfilter/ooxml/data/recursive_header_rels.docx: Aptos ->
  Calibri

Change-Id: I6bcf3f39861426f2e94d0d88e301007501636e1b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169283
Reviewed-by: Miklos Vajna 
Tested-by: Jenkins

diff --git a/sw/CppunitTest_sw_writerfilter_ooxml.mk 
b/sw/CppunitTest_sw_writerfilter_ooxml.mk
index d7faae578f4f..cfae3bc41a9f 100644
--- a/sw/CppunitTest_sw_writerfilter_ooxml.mk
+++ b/sw/CppunitTest_sw_writerfilter_ooxml.mk
@@ -51,4 +51,8 @@ $(eval $(call 
gb_CppunitTest_use_configuration,sw_writerfilter_ooxml))
 # by a link relation
 $(call gb_CppunitTest_get_target,sw_writerfilter_ooxml) : $(call 
gb_Library_get_target,sw_writerfilter)
 
+ifneq ($(filter MORE_FONTS,$(BUILD_TYPE)),)
+$(eval $(call 
gb_CppunitTest_set_non_application_font_use,sw_writerfilter_ooxml,abort))
+endif
+
 # vim: set noet sw=4 ts=4:
diff --git a/sw/qa/writerfilter/ooxml/data/recursive_header_rels.docx 
b/sw/qa/writerfilter/ooxml/data/recursive_header_rels.docx
index 8000760017ed..4d1d128d9312 100644
Binary files a/sw/qa/writerfilter/ooxml/data/recursive_header_rels.docx and 
b/sw/qa/writerfilter/ooxml/data/recursive_header_rels.docx differ


core.git: basic/source

2024-06-20 Thread Andrea Gelmini (via logerrit)
 basic/source/runtime/methods.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 431e3d8a525de715b967e8b7ecee53a5acc6bc4f
Author: Andrea Gelmini 
AuthorDate: Thu Jun 20 15:25:37 2024 +0200
Commit: Andrea Gelmini 
CommitDate: Thu Jun 20 19:22:44 2024 +0200

Fix typo

Change-Id: Ib6bfd1938d8d2da3d3aa9ccbb7b80750c4671f39
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169279
Tested-by: Jenkins
Reviewed-by: Andrea Gelmini 

diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index 8e87d6d0d5ef..2e2381a121c5 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -115,7 +115,7 @@ static sal_Int32 GetDayDiff(const Date& rDate) { return 
rDate - Date(1899'12'30)
 
 static sal_Int32 nanoSecToMilliSec(sal_Int64 nNanoSeconds)
 {
-// Rounding nanoseconds to milliseconds precision to avoid comparision 
inaccuracies
+// Rounding nanoseconds to milliseconds precision to avoid comparison 
inaccuracies
 return o3tl::convert(nNanoSeconds, 1, tools::Time::nanoPerMilli);
 }
 


core.git: sw/source

2024-06-20 Thread Andrea Gelmini (via logerrit)
 sw/source/core/unocore/unosett.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 04bd09866f656bd265f5631297070dcf14c5f77f
Author: Andrea Gelmini 
AuthorDate: Tue Jun 18 22:55:45 2024 +0200
Commit: Andrea Gelmini 
CommitDate: Thu Jun 20 19:21:52 2024 +0200

Fix typo

Change-Id: Ia197c0eb16227f1dbee0c0eef65d4c2821edfa83
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169170
Tested-by: Andrea Gelmini 
Reviewed-by: Julien Nabet 

diff --git a/sw/source/core/unocore/unosett.cxx 
b/sw/source/core/unocore/unosett.cxx
index 56edf4f8c840..a28fc1f1b4c4 100644
--- a/sw/source/core/unocore/unosett.cxx
+++ b/sw/source/core/unocore/unosett.cxx
@@ -1050,7 +1050,7 @@ SwXNumberingRules::SwXNumberingRules(SwDocShell& rDocSh) :
 m_bOwnNumRuleCreated(false)
 {
 if (!m_pDocShell->GetDoc())
-throw uno::RuntimeException(u"Unitialized shell passed to 
SwXNumberingRules constructor"_ustr);
+throw uno::RuntimeException(u"Uninitialized shell passed to 
SwXNumberingRules constructor"_ustr);
 m_pImpl->StartListening(GetPageDescNotifier(m_pDocShell->GetDoc()));
 }
 


core.git: basic/source

2024-06-20 Thread Stephan Bergmann (via logerrit)
 basic/source/runtime/methods.cxx |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 321284dde91854a7583c11a207da3bb94691d12d
Author: Stephan Bergmann 
AuthorDate: Thu Jun 20 16:16:25 2024 +0200
Commit: Stephan Bergmann 
CommitDate: Thu Jun 20 18:32:31 2024 +0200

-Werror,-Wunused-function

Change-Id: I11af8dfbcdda6bbb77f2ccfaf2c994492bc3f807
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169282
Reviewed-by: Stephan Bergmann 
Tested-by: Jenkins

diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index da57ccc98736..8e87d6d0d5ef 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -111,14 +111,14 @@ using namespace com::sun::star::uno;
 
 static sal_Int32 GetDayDiff(const Date& rDate) { return rDate - 
Date(1899'12'30); }
 
+#if HAVE_FEATURE_SCRIPTING
+
 static sal_Int32 nanoSecToMilliSec(sal_Int64 nNanoSeconds)
 {
 // Rounding nanoseconds to milliseconds precision to avoid comparision 
inaccuracies
 return o3tl::convert(nNanoSeconds, 1, tools::Time::nanoPerMilli);
 }
 
-#if HAVE_FEATURE_SCRIPTING
-
 static void FilterWhiteSpace( OUString& rStr )
 {
 if (rStr.isEmpty())


core.git: Branch 'libreoffice-24-8' - external/libcmis

2024-06-20 Thread Michael Stahl (via logerrit)
 external/libcmis/UnpackedTarball_libcmis.mk   |1 
 external/libcmis/http-session-cleanup.patch.1 |   82 ++
 2 files changed, 83 insertions(+)

New commits:
commit 04e793b19b1b5f3773f1ea20d5b4133d37795ad0
Author: Michael Stahl 
AuthorDate: Wed Jun 19 18:24:25 2024 +0200
Commit: Michael Stahl 
CommitDate: Thu Jun 20 18:16:42 2024 +0200

libcmis: fix UAF on invalid certificate

headers_slist may be used again on the 2nd call to curl_easy_perform()
in the CURLE_SSL_CACERT case.

Change-Id: I146d7f5dd72e2abd580a68c8ea4c9e56b7adeca3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169267
Reviewed-by: Michael Stahl 
Tested-by: Jenkins
(cherry picked from commit 31ac510f0d8e8cb79d564c147ccf7265894cdcda)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169285

diff --git a/external/libcmis/UnpackedTarball_libcmis.mk 
b/external/libcmis/UnpackedTarball_libcmis.mk
index e9c22b9b9338..d13b8cd463b1 100644
--- a/external/libcmis/UnpackedTarball_libcmis.mk
+++ b/external/libcmis/UnpackedTarball_libcmis.mk
@@ -18,6 +18,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libcmis,1))
 $(eval $(call gb_UnpackedTarball_add_patches,libcmis,\
external/libcmis/0001-cid-1545775-COPY_INSTEAD_OF_MOVE.patch \
external/libcmis/0001-Fix-warning-C4589-when-building-with-MSVC.patch \
+   external/libcmis/http-session-cleanup.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libcmis/http-session-cleanup.patch.1 
b/external/libcmis/http-session-cleanup.patch.1
new file mode 100644
index ..0c7b352d4407
--- /dev/null
+++ b/external/libcmis/http-session-cleanup.patch.1
@@ -0,0 +1,82 @@
+--- libcmis/src/libcmis/http-session.cxx.orig  2024-06-19 18:04:14.198691623 
+0200
 libcmis/src/libcmis/http-session.cxx   2024-06-19 18:09:08.853234764 
+0200
+@@ -670,16 +670,17 @@
+ curl_easy_setopt( m_curlHandle, CURLOPT_URL, url.c_str() );
+ 
+ // Set the headers
+-struct curl_slist *headers_slist = NULL;
++struct deleter { void operator()(curl_slist* p) const { 
curl_slist_free_all(p); } };
++unique_ptr headers_slist;
+ for ( vector< string >::iterator it = headers.begin( ); it != 
headers.end( ); ++it )
+-headers_slist = curl_slist_append( headers_slist, it->c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
it->c_str()));
+ 
+ // If we are using OAuth2, then add the proper header with token to 
authenticate
+ // Otherwise, just set the credentials normally using in libcurl options
+ if ( m_oauth2Handler != NULL && !m_oauth2Handler->getHttpHeader( 
).empty() )
+ {
+-headers_slist = curl_slist_append( headers_slist,
+-   m_oauth2Handler->getHttpHeader( 
).c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(),
++   
m_oauth2Handler->getHttpHeader().c_str()));
+ }
+ else if ( !getUsername().empty() )
+ {
+@@ -693,7 +693,7 @@
+ #endif
+ }
+ 
+-curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, headers_slist );
++curl_easy_setopt(m_curlHandle, CURLOPT_HTTPHEADER, headers_slist.get());
+ 
+ // Set the proxy configuration if any
+ if ( !libcmis::SessionFactory::getProxy( ).empty() )
+@@ -747,9 +747,6 @@
+ // Perform the query
+ CURLcode errCode = curl_easy_perform( m_curlHandle );
+ 
+-// Free the headers list
+-curl_slist_free_all( headers_slist );
+-
+ // Process the response
+ bool isHttpError = errCode == CURLE_HTTP_RETURNED_ERROR;
+ if ( CURLE_OK != errCode && !( m_noHttpErrors && isHttpError ) )
+--- libcmis/src/libcmis/sharepoint-session.cxx.orig2024-06-19 
18:04:35.761804551 +0200
 libcmis/src/libcmis/sharepoint-session.cxx 2024-06-19 18:08:44.563107553 
+0200
+@@ -200,12 +200,13 @@
+ curl_easy_setopt( m_curlHandle, CURLOPT_URL, url.c_str() );
+ 
+ // Set the headers
+-struct curl_slist *headers_slist = NULL;
++struct deleter { void operator()(curl_slist* p) const { 
curl_slist_free_all(p); } };
++unique_ptr headers_slist;
+ for ( vector< string >::iterator it = headers.begin( ); it != 
headers.end( ); ++it )
+-headers_slist = curl_slist_append( headers_slist, it->c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
it->c_str()));
+ 
+-headers_slist = curl_slist_append( headers_slist, 
"accept:application/json; odata=verbose" );
+-headers_slist = curl_slist_append( headers_slist, ( "x-requestdigest:" + 
m_digestCode ).c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
"accept:application/json; odata=verbose"));
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
("x-requestdigest:" + m_digestCode).c_str()));
+ 
+ if ( !getUsername().empty() && !getPassword().empty() )
+ {
+@@ -220,7 +219,7 @@
+ #endif
+ }
+ 
+-

core.git: ucb/source

2024-06-20 Thread Michael Stahl (via logerrit)
 ucb/source/ucp/webdav-curl/DAVException.hxx  |1 +
 ucb/source/ucp/webdav-curl/webdavcontent.cxx |9 +++--
 2 files changed, 8 insertions(+), 2 deletions(-)

New commits:
commit 21279261fda69855924271230e3ac736615fc95c
Author: Michael Stahl 
AuthorDate: Thu Jun 20 14:21:20 2024 +0200
Commit: Michael Stahl 
CommitDate: Thu Jun 20 16:48:56 2024 +0200

ucb: webdav-curl: don't mash together HTTP_CONNECT and HTTP_TIMEOUT

First a DAVException with DAV_HTTP_CONNECT is thrown, then it's
converted to USC_CONNECTION_TIMED_OUT, then that is converted to
DAVException with DAV_HTTP_TIMEOUT, a bit misleading.

Change-Id: Ie5089d67d363f57eaa9e1ed057b36adb41e846d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169277
Reviewed-by: Michael Stahl 
Tested-by: Jenkins

diff --git a/ucb/source/ucp/webdav-curl/DAVException.hxx 
b/ucb/source/ucp/webdav-curl/DAVException.hxx
index 759e43f25f8e..bd3053305901 100644
--- a/ucb/source/ucp/webdav-curl/DAVException.hxx
+++ b/ucb/source/ucp/webdav-curl/DAVException.hxx
@@ -93,6 +93,7 @@ const sal_uInt16 SC_HTTP_VERSION_NOT_SUPPORTED   = 505;
 const sal_uInt16 SC_INSUFFICIENT_STORAGE = 507;
 
 // unofficial status codes only used internally by LO
+const sal_uInt16 USC_CONNECT_FAILED  = 907;
 // used to cache the connection time out event
 const sal_uInt16 USC_CONNECTION_TIMED_OUT= 908;
 // name resolution failed
diff --git a/ucb/source/ucp/webdav-curl/webdavcontent.cxx 
b/ucb/source/ucp/webdav-curl/webdavcontent.cxx
index 1b004017b482..c33e4cb24bcc 100644
--- a/ucb/source/ucp/webdav-curl/webdavcontent.cxx
+++ b/ucb/source/ucp/webdav-curl/webdavcontent.cxx
@@ -3889,7 +3889,8 @@ Content::ResourceType Content::getResourceType(
 rResAccess->resetUri();
 
 // first check if the cached error can be mapped to 
DAVException::DAV_HTTP_TIMEOUT or mapped to DAVException::DAV_HTTP_CONNECT
-if (aDAVOptions.getHttpResponseStatusCode() == 
USC_CONNECTION_TIMED_OUT
+if (aDAVOptions.getHttpResponseStatusCode() == USC_CONNECT_FAILED
+|| aDAVOptions.getHttpResponseStatusCode() == 
USC_CONNECTION_TIMED_OUT
 // can't get any reliable info without auth => cancel request
 || aDAVOptions.getHttpResponseStatusCode() == USC_AUTH_FAILED
 || aDAVOptions.getHttpResponseStatusCode() == 
USC_AUTHPROXY_FAILED)
@@ -3904,6 +3905,9 @@ Content::ResourceType Content::getResourceType(
 DAVException::ExceptionCode e{};
 switch (aDAVOptions.getHttpResponseStatusCode())
 {
+case USC_CONNECT_FAILED:
+e = DAVException::DAV_HTTP_CONNECT;
+break;
 case USC_CONNECTION_TIMED_OUT:
 e = DAVException::DAV_HTTP_TIMEOUT;
 break;
@@ -4057,7 +4061,7 @@ void Content::getResourceOptions(
 SAL_WARN( "ucb.ucp.webdav", "OPTIONS - DAVException: 
DAV_HTTP_TIMEOUT or DAV_HTTP_CONNECT for URL <" << 
m_xIdentifier->getContentIdentifier() << ">" );
 // cache the internal unofficial status code
 
-aDAVOptions.setHttpResponseStatusCode( 
USC_CONNECTION_TIMED_OUT );
+aDAVOptions.setHttpResponseStatusCode(e.getError() == 
DAVException::DAV_HTTP_CONNECT ? USC_CONNECT_FAILED : USC_CONNECTION_TIMED_OUT);
 // used only internally, so the text doesn't really 
matter..
 aStaticDAVOptionsCache.addDAVOptions( aDAVOptions,
   
m_nOptsCacheLifeNotFound );
@@ -4215,6 +4219,7 @@ void Content::getResourceOptions(
 if ( networkAccessAllowed != nullptr &&
  ( ( CachedResponseStatusCode == SC_NOT_FOUND ) ||
( CachedResponseStatusCode == SC_GONE ) ||
+   ( CachedResponseStatusCode == USC_CONNECT_FAILED ) ||
( CachedResponseStatusCode == USC_CONNECTION_TIMED_OUT ) ||
( CachedResponseStatusCode == USC_LOOKUP_FAILED ) ||
( CachedResponseStatusCode == USC_AUTH_FAILED ) ||


ESC meeting minutes: 2024-06-20

2024-06-20 Thread Miklos Vajna

* Present:
+ Olivier, Cloph, Hossein, Ilmari, Jonathan, Michael W, Michael S, Regina, 
Stephan, Heiko, Thorsten, Miklos, Xisco

* Completed Action Items:

* Pending Action Items:

* Release Engineering update (Cloph)
+ 24.2: 24.2.5 RC1 in 1 week
+ 24.8:
+ beta2 this week, if needed -> so far no requests, so will be skipped
+ string / UI freeze in 2 weeks
+ late features?
  + late addition to the notes page in Impress in the works (Thorsten)
+ feedback on Windows 7 vs Python 3.newer (Cloph)
  + rest of the office works nicely, except actual Python functionality
  + fails gracefull, so no need to take any action at this moment

* Documentation (Olivier)
+ New Help
   + Links to documentation in Help pages (ohallot)
+ Helpcontents2
   + Updates and fixes (ohallot, D. Maddern)
+ Guides
   + Published Impress guide + post
+ Bugzilla Documentation statistics
252(252) bugs open
+ Updates:
BZ changes   1 week   1 month   3 months   12 months
   created 10(3)43(-5)101(-2)234(1)
 commented 22(10)   91(-9)237(4) 896(-2)
  resolved  3(1)23(-3) 63(1) 134(0)
+ top 10 contributors:
  Dione Maddern made 56 changes in 1 month, and 100 changes in 1 year
  Olivier Hallot made 44 changes in 1 month, and 269 changes in 1 year
  Vernon, Stuart Foote made 15 changes in 1 month, and 121 changes in 1 
year
  Ilmari Lauhakangas made 12 changes in 1 month, and 81 changes in 1 
year
  Heiko Tietze made 11 changes in 1 month, and 83 changes in 1 year
  Stéphane Guillou made 9 changes in 1 month, and 223 changes in 1 year
  Kaganski, Mike made 8 changes in 1 month, and 79 changes in 1 year
  Justin Luth made 6 changes in 1 month, and 8 changes in 1 year
  Timur made 6 changes in 1 month, and 8 changes in 1 year
  Bogdan B made 4 changes in 1 month, and 13 changes in 1 year

* UX Update (Heiko)
+ Bugzilla (topicUI) statistics
239(239) (topicUI) bugs open, 38(38) (needsUXEval) needs to be 
evaluated by the UXteam
+ Updates:
BZ changes   1 week   1 month   3 months   12 months
 added  5(2) 12(1) 16(0)   24(1)
 commented 37(-4)   189(-5)   504(-10)   1756(25)
   removed  2(2)  2(2)  7(2)   12(2)
  resolved  6(3) 28(0) 80(1)  285(-4)
+ top 10 contributors:
  Heiko Tietze made 128 changes in 1 month, and 964 changes in 1 year
  Stéphane Guillou made 104 changes in 1 month, and 659 changes in 1 
year
  Eyal Rozenberg made 25 changes in 1 month, and 156 changes in 1 year
  Dieter made 23 changes in 1 month, and 149 changes in 1 year
  Vernon, Stuart Foote made 22 changes in 1 month, and 310 changes in 1 
year
  Telesto made 12 changes in 1 month, and 35 changes in 1 year
  Ilmari Lauhakangas made 10 changes in 1 month, and 131 changes in 1 
year
  *UNKNOWN* made 9 changes in 1 month, and 12 changes in 1 year
  Henschel, Regina made 9 changes in 1 month, and 41 changes in 1 year
  Kaganski, Mike made 6 changes in 1 month, and 80 changes in 1 year
 -> + [Bug 161641] CTRL+A should select only the closest range of cells filled
   with data
   + https://gerrit.libreoffice.org/c/core/+/169276
   + if it's too controversial, may need to add a setting to keep the 
unchanged behavior as well
+ [Bug 157684] Add option to set default Wrap for inserted pictures
 -> + [Bug 158520] Writer: Index-tagged headings not considered headings
   cross-reference-wise
+ [Bug 161344] Changing the language for Selected text clutters up language 
lists
+ [Bug 161574] Name index-related context menu items based on the type of 
index
   that was right-clicked
 -> + [Bug 161555] Missing shape algebra operation: Fragment
+ [Bug 161061] [UI] improve Calc grid lines options wording (was: "Grid 
lines are
   visible on all cells when option 'Show on colored cells' is chosen")

* Vertical tabpages state (Samuel/Thorsten)
+ maybe a safe move would be to revert on 24-8 and keep working on master 
(Xisco)
  + perhaps prepare the revert and discuss on gerrit

- https://gerrit.libreoffice.org/c/core/+/169207

- https://gerrit.libreoffice.org/c/core/+/169231

- these two reverts look enough

- looked into this a bit (Heiko)

  - tried, but it's too complex

  - Rafael is looking at pulling up the gen backend to gtk3 level

- currently a master fix do not exist for 161492, 161491, 161351 (Regina)

  - agree with the revert on the branch

  - sounds like a good & positive way fwd (Thorsten)

=> CC Samuel/Thorsten on the gerrit reverts, push on the branch after a timeout 
(all)

* Crash Testing (Caolan)
+ Missing Caolan
+ https:

core.git: 2 commits - include/svl svl/source sw/source

2024-06-20 Thread Noel Grandin (via logerrit)
 include/svl/itemset.hxx   |1 +
 svl/source/items/itemset.cxx  |   25 +
 sw/source/core/doc/docbm.cxx  |2 ++
 sw/source/core/txtnode/thints.cxx |   10 +-
 4 files changed, 29 insertions(+), 9 deletions(-)

New commits:
commit 1be12e6d298a1e22871cdb9eecb7b6440b0d1d88
Author: Noel Grandin 
AuthorDate: Thu Jun 20 14:11:09 2024 +0200
Commit: Noel Grandin 
CommitDate: Thu Jun 20 16:20:35 2024 +0200

tdf#144208 speedup doc with lots of redline(13)

Add a custom method to SfxItemSet, to avoid some of the function calling
overhead in a hot loop

Change-Id: I525c9a696af941c6e39aa1677eb2a85f69c621bf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169271
Reviewed-by: Noel Grandin 
Tested-by: Jenkins

diff --git a/include/svl/itemset.hxx b/include/svl/itemset.hxx
index 3626ac54388b..fe510a8c4c78 100644
--- a/include/svl/itemset.hxx
+++ b/include/svl/itemset.hxx
@@ -212,6 +212,7 @@ public:
 template
 boolHasItem(TypedWhichId nWhich, const T** 
ppItem = nullptr) const
 { return HasItem(sal_uInt16(nWhich), reinterpret_cast(ppItem)); }
+voidCollectHasItems(std::vector& 
rItemWhichs) const;
 
 void DisableItem(sal_uInt16 nWhich)
 { DisableOrInvalidateItem_ForWhichID(true, nWhich); }
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 251194194d11..b3a6dd8f68cf 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -929,6 +929,31 @@ bool SfxItemSet::HasItem(sal_uInt16 nWhich, const 
SfxPoolItem** ppItem) const
 return bRet;
 }
 
+void SfxItemSet::CollectHasItems(std::vector& rItemWhichs) const
+{
+for(auto const & rPair : m_aWhichRanges)
+{
+const sal_uInt16 nBeg = rPair.first;
+const sal_uInt16 nEnd = rPair.second;
+for( sal_uInt16 nWhich = nBeg; nWhich <= nEnd; ++nWhich )
+{
+bool bHasItem = false;
+auto aHit(m_aPoolItemMap.find(nWhich));
+if (aHit != m_aPoolItemMap.end())
+{
+bHasItem = !IsInvalidItem(aHit->second) && 
!IsDisabledItem(aHit->second);
+}
+else
+{
+if (m_pParent)
+bHasItem = SfxItemState::SET == 
m_pParent->GetItemState_ForWhichID( SfxItemState::DEFAULT, nWhich, true, 
nullptr);
+}
+if (bHasItem)
+rItemWhichs.push_back( nWhich );
+}
+}
+}
+
 const SfxPoolItem* SfxItemSet::PutImplAsTargetWhich(const SfxPoolItem& rItem, 
sal_uInt16 nTargetWhich, bool bPassingOwnership)
 {
 if (0 == nTargetWhich || nTargetWhich == rItem.Which())
diff --git a/sw/source/core/txtnode/thints.cxx 
b/sw/source/core/txtnode/thints.cxx
index 9ab24d03af75..a532efb352cc 100644
--- a/sw/source/core/txtnode/thints.cxx
+++ b/sw/source/core/txtnode/thints.cxx
@@ -3099,15 +3099,7 @@ bool SwpHints::TryInsertHint(
 rNode.SetCalcHiddenCharFlags();
 
 // fdo#71556: populate aWhichFormatAttr member of SwMsgPoolItem
-const WhichRangesContainer& pRanges = pSet->GetRanges();
-for(auto const & rPair : pRanges)
-{
-const sal_uInt16 nBeg = rPair.first;
-const sal_uInt16 nEnd = rPair.second;
-for( sal_uInt16 nSubElem = nBeg; nSubElem <= nEnd; ++nSubElem )
-if( pSet->HasItem( nSubElem ) )
-aWhichSublist.push_back( nSubElem );
-}
+pSet->CollectHasItems(aWhichSublist);
 break;
 }
 case RES_TXTATR_INETFMT:
commit 2ab4c442a57686eae47a9d9f06d3662544aa591b
Author: Noel Grandin 
AuthorDate: Thu Jun 20 14:09:52 2024 +0200
Commit: Noel Grandin 
CommitDate: Thu Jun 20 16:20:26 2024 +0200

tdf#144208 speedup doc with lots of redline(4) II

exit early in DelBookmarks if the redlines are not in the range we need
to fix

(Second attempt at landing this)

Change-Id: I371623ad5840e56bc4ed80565befc7b26e3f5e08
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169270
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/sw/source/core/doc/docbm.cxx b/sw/source/core/doc/docbm.cxx
index 753cdafc0e71..84d09de32d72 100644
--- a/sw/source/core/doc/docbm.cxx
+++ b/sw/source/core/doc/docbm.cxx
@@ -2099,6 +2099,8 @@ void DelBookmarks(
 if (pCNd && !bStt)
 pREnd->AssignEndIndex( *pCNd );
 }
+if( lcl_Greater( *pRStt, rEnd, oEndContentIdx ) )
+break;
 }
 }
 }


core.git: Branch 'libreoffice-24-8' - sw/source

2024-06-20 Thread Samuel Mehrbrodt (via logerrit)
 sw/source/uibase/shells/txtnum.cxx |2 ++
 1 file changed, 2 insertions(+)

New commits:
commit e0245c22b646ac22de476be0537d694704d56459
Author: Samuel Mehrbrodt 
AuthorDate: Thu Jun 20 08:25:46 2024 +0200
Commit: Justin Luth 
CommitDate: Thu Jun 20 16:17:36 2024 +0200

tdf#161653 Fix selecting from numbering dropdown

Change-Id: I5ba2133395619ec96b32940a6ceddf0c32615a03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169252
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt 
(cherry picked from commit 41d26f14fffdb701f6e7ef459a11577725cd0d27)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169145
Tested-by: Justin Luth 
Reviewed-by: Justin Luth 

diff --git a/sw/source/uibase/shells/txtnum.cxx 
b/sw/source/uibase/shells/txtnum.cxx
index 86aa9a6b224e..0941c702ff55 100644
--- a/sw/source/uibase/shells/txtnum.cxx
+++ b/sw/source/uibase/shells/txtnum.cxx
@@ -261,6 +261,8 @@ void SwTextShell::ExecSetNumber(SfxRequest const &rReq)
 case FN_SVX_SET_OUTLINE:
 {
 const SfxUInt16Item* pIndexItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_INDEX );
+if (!pIndexItem) // tdf#161653
+pIndexItem = rReq.GetArg(nSlot);
 const SfxStringItem* pCharItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_CHAR );
 const SfxStringItem* pFontItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_FONT );
 


core.git: translations

2024-06-20 Thread Christian Lohmaier (via logerrit)
 translations |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit d5a7ae5989cb05f3121a9fe1373c3f23a7b00ad6
Author: Christian Lohmaier 
AuthorDate: Thu Jun 20 16:12:40 2024 +0200
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 16:12:40 2024 +0200

Update git submodules

* Update translations from branch 'master'
  to 755fc723ca53063e9481f8ca26b14e6b00d46d38
  - update translations for 24-8/master

and force-fix errors using pocheck

Change-Id: If076c515de168ad573ccd927faf405d15c6dff34

diff --git a/translations b/translations
index cf2e53f45d27..755fc723ca53 16
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit cf2e53f45d2727aa4c1b587362eb2e5f1a83f498
+Subproject commit 755fc723ca53063e9481f8ca26b14e6b00d46d38


core.git: Branch 'libreoffice-24-8' - helpcontent2

2024-06-20 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 50bb6975fb7511e1c4073747ff82c6befb463d63
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 11:07:42 2024 -0300
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 16:07:42 2024 +0200

Update git submodules

* Update helpcontent2 from branch 'libreoffice-24-8'
  to cff3696b273edfe384a652a11e654fb56b889abf
  - Update term Organizer -> General in swriter/ pages

Change-Id: I33ac397dd8c1f831b832c9d385a14e236853a9de
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169273
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit 1178a2c5645336fa720a1fe6cc023df8a8e7895f)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169149

diff --git a/helpcontent2 b/helpcontent2
index 2d73197c2134..cff3696b273e 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 2d73197c21348cbe3d7e8d5329a6fc9e8dc5e326
+Subproject commit cff3696b273edfe384a652a11e654fb56b889abf


help.git: Branch 'libreoffice-24-8' - source/text

2024-06-20 Thread Olivier Hallot (via logerrit)
 source/text/swriter/01/05130002.xhp |6 +-
 source/text/swriter/guide/even_odd_sdw.xhp  |   38 ++---
 source/text/swriter/guide/header_pagestyles.xhp |   39 ++---
 source/text/swriter/guide/pagebackground.xhp|   52 -
 source/text/swriter/guide/pagenumbers.xhp   |   70 
 source/text/swriter/guide/pageorientation.xhp   |   58 +--
 source/text/swriter/guide/pagestyles.xhp|   46 +++
 7 files changed, 154 insertions(+), 155 deletions(-)

New commits:
commit cff3696b273edfe384a652a11e654fb56b889abf
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 09:11:39 2024 -0300
Commit: Olivier Hallot 
CommitDate: Thu Jun 20 16:07:42 2024 +0200

Update term Organizer -> General in swriter/ pages

Change-Id: I33ac397dd8c1f831b832c9d385a14e236853a9de
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169273
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit 1178a2c5645336fa720a1fe6cc023df8a8e7895f)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169149

diff --git a/source/text/swriter/01/05130002.xhp 
b/source/text/swriter/01/05130002.xhp
index d8aaf97d6b..ace6151acf 100644
--- a/source/text/swriter/01/05130002.xhp
+++ b/source/text/swriter/01/05130002.xhp
@@ -19,7 +19,7 @@
 
 
 
-Character Style 
+Character Style 
 /text/swriter/01/05130002.xhp
 
 
@@ -28,7 +28,7 @@
 
 
 Character 
Style
-Character 
styles provide a way to customize the formatting for individual characters. Use 
character styles to change the properties of a character, word or selected part 
of a paragraph. When you apply a character style to a text selection, the 
character style properties override the corresponding paragraph character 
properties.
+Character styles provide a way 
to customize the formatting for individual characters. Use character styles to 
change the properties of a character, word or selected part of a paragraph. 
When you apply a character style to a text selection, the character style 
properties override the corresponding paragraph character 
properties.
 For example, if you 
apply a character style with 15pt font size to a selection in a paragraph with 
character property of 12pt font size, the selection is set to 15pt, while the 
rest of the paragraph remains with 12pt font size.
 No Character Style is actually 
the set of character properties of the current paragraph style. Choose No 
Character Style to reset the character properties of the selection to those of 
the paragraph style. You cannot customize No Character Style.
 
@@ -36,7 +36,7 @@
 
 Direct formatting overrides any formatting 
provided by a character style. To remove direct formatting from a selection, 
use Format - Clear Direct Formatting (CommandCtrl+M).
 
-Use the Contains section in the 
Organizer to see the properties of the character style.
+Use the Contains section in the 
General tab to see the properties of the character style.
 
 
 
diff --git a/source/text/swriter/guide/even_odd_sdw.xhp 
b/source/text/swriter/guide/even_odd_sdw.xhp
index 3e9cd0622b..490e6933a9 100644
--- a/source/text/swriter/guide/even_odd_sdw.xhp
+++ b/source/text/swriter/guide/even_odd_sdw.xhp
@@ -20,14 +20,14 @@
 
 
   
-Alternating Page Styles on Odd and Even 
Pages
+Alternating Page Styles on Odd and Even Pages
 /text/swriter/guide/even_odd_sdw.xhp
   
 
 
 
 
-
+
   page styles; left and right pages
   blank pages with alternating page styles
   empty page with alternating page styles
@@ -46,10 +46,10 @@
 
   
 
-   Icon
+   Icon
 
 
-  $[officename] can automatically apply alternating page styles 
on even (left) and odd pages (right) in your document. For example, you can use 
page styles to display different headers and footers on even and odd pages. The 
current page style is displayed in the Status Bar at the bottom of 
the workplace.
+  $[officename] can 
automatically apply alternating page styles on even (left) and odd pages 
(right) in your document. For example, you can use page styles to display 
different headers and footers on even and odd pages. The current page style is 
displayed in the Status Bar at the bottom of the 
workplace.
 
   
 
@@ -59,48 +59,48 @@
 
 
   
-Choose 
View - Styles, and then click the Page Styles icon.
+Choose View - Styles, and then click the Page Styles icon.
   
   
-In the list 
of page styles, right-click "Left Page" and choose 
Modify.
+In the list of page styles, 
right-click "Left Page" and choose Modify.
   
   
-Click the 
Organizer tab.
+Click the 
General tab.
   
   
-Select 
"Right Page" in the Next Style box, and then click 
OK.
+Select "Right Page" in the 
Next Style box, and then click OK.
   
   
-In the list 
of page styles, right-click "Right Page" and choose 
Modify.
+In the list of page styles, 
right-click "Right Page" and choose Modify.
   
   
-Sele

core.git: Branch 'libreoffice-24-8' - helpcontent2

2024-06-20 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit a6e7de192c54253bad228c7e07071c973363ec04
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 11:07:20 2024 -0300
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 16:07:20 2024 +0200

Update git submodules

* Update helpcontent2 from branch 'libreoffice-24-8'
  to 2d73197c21348cbe3d7e8d5329a6fc9e8dc5e326
  - Update term Organizer -> General in shared/ pages

Change-Id: I455cc5e0f115638fb1c9312db8d8cd50e7b1b0cf
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169272
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit b0425a000fa79d8152652b031c1be8d3d3b2af56)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169148

diff --git a/helpcontent2 b/helpcontent2
index 83da8f2dc58d..2d73197c2134 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 83da8f2dc58d4fefaecf204ec6fc54281c65213a
+Subproject commit 2d73197c21348cbe3d7e8d5329a6fc9e8dc5e326


help.git: Branch 'libreoffice-24-8' - source/text

2024-06-20 Thread Olivier Hallot (via logerrit)
 source/text/shared/00/0001.xhp |2 +-
 source/text/shared/00/00040500.xhp |   16 
 source/text/shared/01/05040100.xhp |4 ++--
 3 files changed, 11 insertions(+), 11 deletions(-)

New commits:
commit 2d73197c21348cbe3d7e8d5329a6fc9e8dc5e326
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 08:56:32 2024 -0300
Commit: Olivier Hallot 
CommitDate: Thu Jun 20 16:07:20 2024 +0200

Update term Organizer -> General in shared/ pages

Change-Id: I455cc5e0f115638fb1c9312db8d8cd50e7b1b0cf
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169272
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit b0425a000fa79d8152652b031c1be8d3d3b2af56)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169148

diff --git a/source/text/shared/00/0001.xhp 
b/source/text/shared/00/0001.xhp
index 9688e8bdfa..d370d15da8 100644
--- a/source/text/shared/00/0001.xhp
+++ b/source/text/shared/00/0001.xhp
@@ -252,7 +252,7 @@
 
 
 Reset to Parent
-Values for the current 
tab are set to those found in the corresponding tab of the style specified in 
“Inherit from” in Organizer. In all cases, also when “Inherit from” is “- None 
-”, current tab values specified in “Contains” are removed.
+Values for the current 
tab are set to those found in the corresponding tab of the style specified in 
“Inherit from” in the General tab. In all cases, also when “Inherit from” is “- 
None -”, current tab values specified in “Contains” are removed.
 
 
 This option appears 
only for Paragraph Style, Character Style, and Frame Style.
diff --git a/source/text/shared/00/00040500.xhp 
b/source/text/shared/00/00040500.xhp
index 9e8794e88d..82754a2bfd 100644
--- a/source/text/shared/00/00040500.xhp
+++ b/source/text/shared/00/00040500.xhp
@@ -483,24 +483,24 @@
 Choose Format - Cells - 
Background tab.
 
 
-Choose Format - Page 
Style - Organizer tab.
-Choose Styles - Edit 
Style - Organizer tab.
-Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - Organizer tab.
+Choose Format - Page 
Style - General tab.
+Choose Styles - Edit 
Style - General tab.
+Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - General tab.
 
 
-Choose Format - Page Style - 
Organizer tab.
-Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - Organizer tab.
+Choose Format - Page Style - 
General tab.
+Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - General tab.
 
 
-Choose Format - Styles - Edit Style - 
Organizer tab.
-Choose Format 
- Styles - Manage Styles - open context menu of an entry and choose 
New/Edit Style - Organizer tab.
+Choose Format - Styles - Edit Style - 
General tab.
+Choose Format 
- Styles - Manage Styles - open context menu of an entry and choose 
New/Edit Style - General tab.
 
 
 Choose Slide - Properties - 
Page tab.
 
 
 Choose View - 
Styles (Command+T)
-(F11) - open 
context menu of an entry and choose New/Edit Style - 
Organizer tab.
+(F11) - open 
context menu of an entry and choose New/Edit Style - 
General tab.
 
 
 
diff --git a/source/text/shared/01/05040100.xhp 
b/source/text/shared/01/05040100.xhp
index ca17e324a2..818eaeda81 100644
--- a/source/text/shared/01/05040100.xhp
+++ b/source/text/shared/01/05040100.xhp
@@ -20,7 +20,7 @@
 
 
   
- Organizer
+ General
  /text/shared/01/05040100.xhp
   

@@ -32,7 +32,7 @@
 
 
 
-Organizer
+General
 Set the options for the selected 
style.
 
   


core.git: external/libcmis

2024-06-20 Thread Michael Stahl (via logerrit)
 external/libcmis/UnpackedTarball_libcmis.mk   |1 +
 external/libcmis/factory-no-retry-ssl.patch.1 |   17 +
 2 files changed, 18 insertions(+)

New commits:
commit af79ac4bf4a27e2d77e60b64049de21102a8ba85
Author: Michael Stahl 
AuthorDate: Thu Jun 20 12:37:28 2024 +0200
Commit: Michael Stahl 
CommitDate: Thu Jun 20 15:59:27 2024 +0200

libcmis: don't retry if the connection failed at TLS level

... for example due to bad certificate; it is pointless as it will
fail exactly the same way.

Change-Id: I654261b2691987453e4ac9a3e2f3019dce20da48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169268
Reviewed-by: Michael Stahl 
Tested-by: Jenkins

diff --git a/external/libcmis/UnpackedTarball_libcmis.mk 
b/external/libcmis/UnpackedTarball_libcmis.mk
index d13b8cd463b1..4a0a1a5e9e03 100644
--- a/external/libcmis/UnpackedTarball_libcmis.mk
+++ b/external/libcmis/UnpackedTarball_libcmis.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,libcmis,\
external/libcmis/0001-cid-1545775-COPY_INSTEAD_OF_MOVE.patch \
external/libcmis/0001-Fix-warning-C4589-when-building-with-MSVC.patch \
external/libcmis/http-session-cleanup.patch.1 \
+   external/libcmis/factory-no-retry-ssl.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libcmis/factory-no-retry-ssl.patch.1 
b/external/libcmis/factory-no-retry-ssl.patch.1
new file mode 100644
index ..e549ca5e08c8
--- /dev/null
+++ b/external/libcmis/factory-no-retry-ssl.patch.1
@@ -0,0 +1,17 @@
+--- libcmis/src/libcmis/session-factory.cxx.orig   2024-06-19 
18:43:56.244832053 +0200
 libcmis/src/libcmis/session-factory.cxx2024-06-20 11:46:26.518263605 
+0200
+@@ -94,8 +94,13 @@
+ {
+ response = httpSession->httpGetRequest( bindingUrl );
+ }
+-catch ( const CurlException& )
++catch (const CurlException& e)
+ {
++if (strcmp(e.what(), "Invalid SSL certificate") == 0)
++{
++// no point in trying other protocols
++throw e.getCmisException();
++}
+ // Could be SharePoint - needs NTLM authentication
+ session = new SharePointSession( bindingUrl, username,
+   password, verbose );


core.git: external/libcmis

2024-06-20 Thread Michael Stahl (via logerrit)
 external/libcmis/UnpackedTarball_libcmis.mk   |1 
 external/libcmis/http-session-cleanup.patch.1 |   82 ++
 2 files changed, 83 insertions(+)

New commits:
commit 31ac510f0d8e8cb79d564c147ccf7265894cdcda
Author: Michael Stahl 
AuthorDate: Wed Jun 19 18:24:25 2024 +0200
Commit: Michael Stahl 
CommitDate: Thu Jun 20 15:56:46 2024 +0200

libcmis: fix UAF on invalid certificate

headers_slist may be used again on the 2nd call to curl_easy_perform()
in the CURLE_SSL_CACERT case.

Change-Id: I146d7f5dd72e2abd580a68c8ea4c9e56b7adeca3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169267
Reviewed-by: Michael Stahl 
Tested-by: Jenkins

diff --git a/external/libcmis/UnpackedTarball_libcmis.mk 
b/external/libcmis/UnpackedTarball_libcmis.mk
index e9c22b9b9338..d13b8cd463b1 100644
--- a/external/libcmis/UnpackedTarball_libcmis.mk
+++ b/external/libcmis/UnpackedTarball_libcmis.mk
@@ -18,6 +18,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libcmis,1))
 $(eval $(call gb_UnpackedTarball_add_patches,libcmis,\
external/libcmis/0001-cid-1545775-COPY_INSTEAD_OF_MOVE.patch \
external/libcmis/0001-Fix-warning-C4589-when-building-with-MSVC.patch \
+   external/libcmis/http-session-cleanup.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libcmis/http-session-cleanup.patch.1 
b/external/libcmis/http-session-cleanup.patch.1
new file mode 100644
index ..0c7b352d4407
--- /dev/null
+++ b/external/libcmis/http-session-cleanup.patch.1
@@ -0,0 +1,82 @@
+--- libcmis/src/libcmis/http-session.cxx.orig  2024-06-19 18:04:14.198691623 
+0200
 libcmis/src/libcmis/http-session.cxx   2024-06-19 18:09:08.853234764 
+0200
+@@ -670,16 +670,17 @@
+ curl_easy_setopt( m_curlHandle, CURLOPT_URL, url.c_str() );
+ 
+ // Set the headers
+-struct curl_slist *headers_slist = NULL;
++struct deleter { void operator()(curl_slist* p) const { 
curl_slist_free_all(p); } };
++unique_ptr headers_slist;
+ for ( vector< string >::iterator it = headers.begin( ); it != 
headers.end( ); ++it )
+-headers_slist = curl_slist_append( headers_slist, it->c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
it->c_str()));
+ 
+ // If we are using OAuth2, then add the proper header with token to 
authenticate
+ // Otherwise, just set the credentials normally using in libcurl options
+ if ( m_oauth2Handler != NULL && !m_oauth2Handler->getHttpHeader( 
).empty() )
+ {
+-headers_slist = curl_slist_append( headers_slist,
+-   m_oauth2Handler->getHttpHeader( 
).c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(),
++   
m_oauth2Handler->getHttpHeader().c_str()));
+ }
+ else if ( !getUsername().empty() )
+ {
+@@ -693,7 +693,7 @@
+ #endif
+ }
+ 
+-curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, headers_slist );
++curl_easy_setopt(m_curlHandle, CURLOPT_HTTPHEADER, headers_slist.get());
+ 
+ // Set the proxy configuration if any
+ if ( !libcmis::SessionFactory::getProxy( ).empty() )
+@@ -747,9 +747,6 @@
+ // Perform the query
+ CURLcode errCode = curl_easy_perform( m_curlHandle );
+ 
+-// Free the headers list
+-curl_slist_free_all( headers_slist );
+-
+ // Process the response
+ bool isHttpError = errCode == CURLE_HTTP_RETURNED_ERROR;
+ if ( CURLE_OK != errCode && !( m_noHttpErrors && isHttpError ) )
+--- libcmis/src/libcmis/sharepoint-session.cxx.orig2024-06-19 
18:04:35.761804551 +0200
 libcmis/src/libcmis/sharepoint-session.cxx 2024-06-19 18:08:44.563107553 
+0200
+@@ -200,12 +200,13 @@
+ curl_easy_setopt( m_curlHandle, CURLOPT_URL, url.c_str() );
+ 
+ // Set the headers
+-struct curl_slist *headers_slist = NULL;
++struct deleter { void operator()(curl_slist* p) const { 
curl_slist_free_all(p); } };
++unique_ptr headers_slist;
+ for ( vector< string >::iterator it = headers.begin( ); it != 
headers.end( ); ++it )
+-headers_slist = curl_slist_append( headers_slist, it->c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
it->c_str()));
+ 
+-headers_slist = curl_slist_append( headers_slist, 
"accept:application/json; odata=verbose" );
+-headers_slist = curl_slist_append( headers_slist, ( "x-requestdigest:" + 
m_digestCode ).c_str( ) );
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
"accept:application/json; odata=verbose"));
++headers_slist.reset(curl_slist_append(headers_slist.release(), 
("x-requestdigest:" + m_digestCode).c_str()));
+ 
+ if ( !getUsername().empty() && !getPassword().empty() )
+ {
+@@ -220,7 +219,7 @@
+ #endif
+ }
+ 
+-curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, headers_slist );
++curl_easy_setopt(m_curlHandle, CURLOPT_HTTPHEADER, headers

core.git: helpcontent2

2024-06-20 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit a611a5d1078631cf49b78c7c30b3046329b503f6
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 10:45:14 2024 -0300
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 15:45:14 2024 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to 1178a2c5645336fa720a1fe6cc023df8a8e7895f
  - Update term Organizer -> General in swriter/ pages

Change-Id: I33ac397dd8c1f831b832c9d385a14e236853a9de
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169273
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/helpcontent2 b/helpcontent2
index b0425a000fa7..1178a2c56453 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit b0425a000fa79d8152652b031c1be8d3d3b2af56
+Subproject commit 1178a2c5645336fa720a1fe6cc023df8a8e7895f


help.git: source/text

2024-06-20 Thread Olivier Hallot (via logerrit)
 source/text/swriter/01/05130002.xhp |6 +-
 source/text/swriter/guide/even_odd_sdw.xhp  |   38 ++---
 source/text/swriter/guide/header_pagestyles.xhp |   39 ++---
 source/text/swriter/guide/pagebackground.xhp|   52 -
 source/text/swriter/guide/pagenumbers.xhp   |   70 
 source/text/swriter/guide/pageorientation.xhp   |   58 +--
 source/text/swriter/guide/pagestyles.xhp|   46 +++
 7 files changed, 154 insertions(+), 155 deletions(-)

New commits:
commit 1178a2c5645336fa720a1fe6cc023df8a8e7895f
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 09:11:39 2024 -0300
Commit: Olivier Hallot 
CommitDate: Thu Jun 20 15:45:14 2024 +0200

Update term Organizer -> General in swriter/ pages

Change-Id: I33ac397dd8c1f831b832c9d385a14e236853a9de
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169273
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/source/text/swriter/01/05130002.xhp 
b/source/text/swriter/01/05130002.xhp
index d8aaf97d6b..ace6151acf 100644
--- a/source/text/swriter/01/05130002.xhp
+++ b/source/text/swriter/01/05130002.xhp
@@ -19,7 +19,7 @@
 
 
 
-Character Style 
+Character Style 
 /text/swriter/01/05130002.xhp
 
 
@@ -28,7 +28,7 @@
 
 
 Character 
Style
-Character 
styles provide a way to customize the formatting for individual characters. Use 
character styles to change the properties of a character, word or selected part 
of a paragraph. When you apply a character style to a text selection, the 
character style properties override the corresponding paragraph character 
properties.
+Character styles provide a way 
to customize the formatting for individual characters. Use character styles to 
change the properties of a character, word or selected part of a paragraph. 
When you apply a character style to a text selection, the character style 
properties override the corresponding paragraph character 
properties.
 For example, if you 
apply a character style with 15pt font size to a selection in a paragraph with 
character property of 12pt font size, the selection is set to 15pt, while the 
rest of the paragraph remains with 12pt font size.
 No Character Style is actually 
the set of character properties of the current paragraph style. Choose No 
Character Style to reset the character properties of the selection to those of 
the paragraph style. You cannot customize No Character Style.
 
@@ -36,7 +36,7 @@
 
 Direct formatting overrides any formatting 
provided by a character style. To remove direct formatting from a selection, 
use Format - Clear Direct Formatting (CommandCtrl+M).
 
-Use the Contains section in the 
Organizer to see the properties of the character style.
+Use the Contains section in the 
General tab to see the properties of the character style.
 
 
 
diff --git a/source/text/swriter/guide/even_odd_sdw.xhp 
b/source/text/swriter/guide/even_odd_sdw.xhp
index 3e9cd0622b..490e6933a9 100644
--- a/source/text/swriter/guide/even_odd_sdw.xhp
+++ b/source/text/swriter/guide/even_odd_sdw.xhp
@@ -20,14 +20,14 @@
 
 
   
-Alternating Page Styles on Odd and Even 
Pages
+Alternating Page Styles on Odd and Even Pages
 /text/swriter/guide/even_odd_sdw.xhp
   
 
 
 
 
-
+
   page styles; left and right pages
   blank pages with alternating page styles
   empty page with alternating page styles
@@ -46,10 +46,10 @@
 
   
 
-   Icon
+   Icon
 
 
-  $[officename] can automatically apply alternating page styles 
on even (left) and odd pages (right) in your document. For example, you can use 
page styles to display different headers and footers on even and odd pages. The 
current page style is displayed in the Status Bar at the bottom of 
the workplace.
+  $[officename] can 
automatically apply alternating page styles on even (left) and odd pages 
(right) in your document. For example, you can use page styles to display 
different headers and footers on even and odd pages. The current page style is 
displayed in the Status Bar at the bottom of the 
workplace.
 
   
 
@@ -59,48 +59,48 @@
 
 
   
-Choose 
View - Styles, and then click the Page Styles icon.
+Choose View - Styles, and then click the Page Styles icon.
   
   
-In the list 
of page styles, right-click "Left Page" and choose 
Modify.
+In the list of page styles, 
right-click "Left Page" and choose Modify.
   
   
-Click the 
Organizer tab.
+Click the 
General tab.
   
   
-Select 
"Right Page" in the Next Style box, and then click 
OK.
+Select "Right Page" in the 
Next Style box, and then click OK.
   
   
-In the list 
of page styles, right-click "Right Page" and choose 
Modify.
+In the list of page styles, 
right-click "Right Page" and choose Modify.
   
   
-Select 
"Left Page" in the Next Style box, and then click 
OK.
+Select "Left Page" in the 
Next Style box, and then click OK.
   
   
-  

help.git: source/text

2024-06-20 Thread Olivier Hallot (via logerrit)
 source/text/shared/00/0001.xhp |2 +-
 source/text/shared/00/00040500.xhp |   16 
 source/text/shared/01/05040100.xhp |4 ++--
 3 files changed, 11 insertions(+), 11 deletions(-)

New commits:
commit b0425a000fa79d8152652b031c1be8d3d3b2af56
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 08:56:32 2024 -0300
Commit: Olivier Hallot 
CommitDate: Thu Jun 20 15:44:36 2024 +0200

Update term Organizer -> General in shared/ pages

Change-Id: I455cc5e0f115638fb1c9312db8d8cd50e7b1b0cf
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169272
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/source/text/shared/00/0001.xhp 
b/source/text/shared/00/0001.xhp
index 9688e8bdfa..d370d15da8 100644
--- a/source/text/shared/00/0001.xhp
+++ b/source/text/shared/00/0001.xhp
@@ -252,7 +252,7 @@
 
 
 Reset to Parent
-Values for the current 
tab are set to those found in the corresponding tab of the style specified in 
“Inherit from” in Organizer. In all cases, also when “Inherit from” is “- None 
-”, current tab values specified in “Contains” are removed.
+Values for the current 
tab are set to those found in the corresponding tab of the style specified in 
“Inherit from” in the General tab. In all cases, also when “Inherit from” is “- 
None -”, current tab values specified in “Contains” are removed.
 
 
 This option appears 
only for Paragraph Style, Character Style, and Frame Style.
diff --git a/source/text/shared/00/00040500.xhp 
b/source/text/shared/00/00040500.xhp
index 9e8794e88d..82754a2bfd 100644
--- a/source/text/shared/00/00040500.xhp
+++ b/source/text/shared/00/00040500.xhp
@@ -483,24 +483,24 @@
 Choose Format - Cells - 
Background tab.
 
 
-Choose Format - Page 
Style - Organizer tab.
-Choose Styles - Edit 
Style - Organizer tab.
-Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - Organizer tab.
+Choose Format - Page 
Style - General tab.
+Choose Styles - Edit 
Style - General tab.
+Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - General tab.
 
 
-Choose Format - Page Style - 
Organizer tab.
-Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - Organizer tab.
+Choose Format - Page Style - 
General tab.
+Choose Styles 
- Manage Styles - open context menu of an entry and choose 
New/Edit Style - General tab.
 
 
-Choose Format - Styles - Edit Style - 
Organizer tab.
-Choose Format 
- Styles - Manage Styles - open context menu of an entry and choose 
New/Edit Style - Organizer tab.
+Choose Format - Styles - Edit Style - 
General tab.
+Choose Format 
- Styles - Manage Styles - open context menu of an entry and choose 
New/Edit Style - General tab.
 
 
 Choose Slide - Properties - 
Page tab.
 
 
 Choose View - 
Styles (Command+T)
-(F11) - open 
context menu of an entry and choose New/Edit Style - 
Organizer tab.
+(F11) - open 
context menu of an entry and choose New/Edit Style - 
General tab.
 
 
 
diff --git a/source/text/shared/01/05040100.xhp 
b/source/text/shared/01/05040100.xhp
index ca17e324a2..818eaeda81 100644
--- a/source/text/shared/01/05040100.xhp
+++ b/source/text/shared/01/05040100.xhp
@@ -20,7 +20,7 @@
 
 
   
- Organizer
+ General
  /text/shared/01/05040100.xhp
   

@@ -32,7 +32,7 @@
 
 
 
-Organizer
+General
 Set the options for the selected 
style.
 
   


core.git: 2 commits - dbaccess/qa helpcontent2

2024-06-20 Thread Olivier Hallot (via logerrit)
 dbaccess/qa/unit/dbtest_base.cxx|   25 +---
 dbaccess/qa/unit/embeddeddb_performancetest.cxx |   21 ++--
 helpcontent2|2 -
 3 files changed, 26 insertions(+), 22 deletions(-)

New commits:
commit 022ace59fa76a7ca6aa0e73fa276197ea569d633
Author: Olivier Hallot 
AuthorDate: Thu Jun 20 10:44:36 2024 -0300
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 15:44:36 2024 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to b0425a000fa79d8152652b031c1be8d3d3b2af56
  - Update term Organizer -> General in shared/ pages

Change-Id: I455cc5e0f115638fb1c9312db8d8cd50e7b1b0cf
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/169272
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/helpcontent2 b/helpcontent2
index ba5e40d637b9..b0425a000fa7 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit ba5e40d637b9dac0575f982d48666bb45423c628
+Subproject commit b0425a000fa79d8152652b031c1be8d3d3b2af56
commit fb8f4b57ceaa2462cd966de7afeb0971a655f647
Author: Xisco Fauli 
AuthorDate: Thu Jun 20 14:13:18 2024 +0200
Commit: Xisco Fauli 
CommitDate: Thu Jun 20 15:44:26 2024 +0200

DBTestBase: Add createDBDocument

it can be used later on when porting the java tests
to CppUnittest

Change-Id: I17420fdf490d979392f5aeb90c3b3bfb319d7764
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169274
Reviewed-by: Xisco Fauli 
Tested-by: Jenkins

diff --git a/dbaccess/qa/unit/dbtest_base.cxx b/dbaccess/qa/unit/dbtest_base.cxx
index 5ec6950efe03..63a3951ad7b4 100644
--- a/dbaccess/qa/unit/dbtest_base.cxx
+++ b/dbaccess/qa/unit/dbtest_base.cxx
@@ -11,15 +11,15 @@
 
 #include 
 
-#include 
-
 #include 
-#include 
+#include 
+#include 
 #include 
 #include 
 #include 
 
 using namespace ::com::sun::star;
+using namespace ::com::sun::star::beans;
 using namespace ::com::sun::star::sdb;
 using namespace ::com::sun::star::sdbc;
 using namespace ::com::sun::star::uno;
@@ -35,6 +35,8 @@ public:
 uno::Reference< XConnection >
 getConnectionForDocument(
 uno::Reference< XOfficeDatabaseDocument > const & xDocument);
+
+void createDBDocument(const OUString& rDriverURL);
 };
 
 uno::Reference DBTestBase::getDocumentForUrl(OUString 
const & url) {
@@ -55,4 +57,21 @@ uno::Reference< XConnection > 
DBTestBase::getConnectionForDocument(
 return xConnection;
 }
 
+void DBTestBase::createDBDocument(const OUString& rDriverURL)
+{
+uno::Reference< XOfficeDatabaseDocument > xDocument(
+
m_xSFactory->createInstance(u"com.sun.star.sdb.OfficeDatabaseDocument"_ustr),
+UNO_QUERY_THROW);
+uno::Reference< com::sun::star::frame::XStorable > xStorable(xDocument, 
UNO_QUERY_THROW);
+
+uno::Reference< XDataSource > xDataSource = xDocument->getDataSource();
+uno::Reference< XPropertySet > xPropertySet(xDataSource, UNO_QUERY_THROW);
+xPropertySet->setPropertyValue(u"URL"_ustr, Any(rDriverURL));
+
+xStorable->storeAsURL(maTempFile.GetURL(), uno::Sequence< 
beans::PropertyValue >());
+
+mxComponent = loadFromDesktop(maTempFile.GetURL());
+CPPUNIT_ASSERT(mxComponent);
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/qa/unit/embeddeddb_performancetest.cxx 
b/dbaccess/qa/unit/embeddeddb_performancetest.cxx
index 0698690c44c0..d142580f2655 100644
--- a/dbaccess/qa/unit/embeddeddb_performancetest.cxx
+++ b/dbaccess/qa/unit/embeddeddb_performancetest.cxx
@@ -14,7 +14,6 @@
 #include 
 #include 
 #include 
-#include 
 
 #include 
 #include 
@@ -194,24 +193,10 @@ void EmbeddedDBPerformanceTest::doPerformanceTestOnODB(
 std::u16string_view rDBName,
 const bool bUsePreparedStatement)
 {
-{
-uno::Reference< XOfficeDatabaseDocument > xDocument(
-
m_xSFactory->createInstance(u"com.sun.star.sdb.OfficeDatabaseDocument"_ustr),
-UNO_QUERY_THROW);
-uno::Reference< XStorable > xStorable(xDocument, UNO_QUERY_THROW);
-
-uno::Reference< XDataSource > xDataSource = xDocument->getDataSource();
-uno::Reference< XPropertySet > xPropertySet(xDataSource, 
UNO_QUERY_THROW);
-xPropertySet->setPropertyValue(u"URL"_ustr, Any(rDriverURL));
-
-xStorable->storeAsURL(maTempFile.GetURL(), uno::Sequence< 
beans::PropertyValue >());
-}
-
-uno::Reference< XOfficeDatabaseDocument > xDocument(
-loadFromDesktop(maTempFile.GetURL()), UNO_QUERY_THROW);
+createDBDocument(rDriverURL);
+uno::Reference< XOfficeDatabaseDocument > xDocument(mxComponent, 
UNO_QUERY_THROW);
 
-uno::Reference< XConnection > xConnection =
-getConnectionForDocument(xDocument);
+uno::Reference< XConnection > xConnection = 
getConnectionForDocument(xDocument);
 
 setupTestTable(xConnection);
 


core.git: Branch 'libreoffice-24-8' - download.lst

2024-06-20 Thread Xisco Fauli (via logerrit)
 download.lst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 63310b0eb7ef1c93118b0451366c895634330241
Author: Xisco Fauli 
AuthorDate: Thu Jun 20 12:22:55 2024 +0200
Commit: Xisco Fauli 
CommitDate: Thu Jun 20 15:35:53 2024 +0200

libxslt: uprade to 1.1.41

Downloaded from 
https://download.gnome.org/sources/libxslt/1.1/libxslt-1.1.41.tar.xz

Change-Id: Ib06a013d85cc47a901fbe55a880f3ad6a5edcea8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169265
Reviewed-by: Xisco Fauli 
Tested-by: Jenkins
(cherry picked from commit 4eb9cde4db28616e0b0c9cd6825830ab7d2f3c96)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169147

diff --git a/download.lst b/download.lst
index f2b0c1615a28..fc1a4eb836bb 100644
--- a/download.lst
+++ b/download.lst
@@ -430,8 +430,8 @@ LIBXML_TARBALL := 
libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-LIBXSLT_SHA256SUM := 
194715db023035f65fb566402f2ad2b5eab4c29d541f511305c40b29b1f48d13
-LIBXSLT_VERSION_MICRO := 40
+LIBXSLT_SHA256SUM := 
3ad392af91115b7740f7b50d228cc1c5fc13afc1da7f16cb0213917a37f71bda
+LIBXSLT_VERSION_MICRO := 41
 LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz
 # three static lines
 # so that git cherry-pick


core.git: dbaccess/qa

2024-06-20 Thread Xisco Fauli (via logerrit)
 dbaccess/qa/unit/embeddeddb_performancetest.cxx |7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

New commits:
commit 39714d3e66f92954ed08b817d56947f555054567
Author: Xisco Fauli 
AuthorDate: Thu Jun 20 13:40:44 2024 +0200
Commit: Xisco Fauli 
CommitDate: Thu Jun 20 15:35:02 2024 +0200

CppunitTest_dbaccess_embeddeddb_performancetest: use maTempFile

Change-Id: Ib63008ddaf9aeb0ed02dd5cbc9680eda2cefbfac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169269
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/dbaccess/qa/unit/embeddeddb_performancetest.cxx 
b/dbaccess/qa/unit/embeddeddb_performancetest.cxx
index 857a3c55475c..0698690c44c0 100644
--- a/dbaccess/qa/unit/embeddeddb_performancetest.cxx
+++ b/dbaccess/qa/unit/embeddeddb_performancetest.cxx
@@ -194,9 +194,6 @@ void EmbeddedDBPerformanceTest::doPerformanceTestOnODB(
 std::u16string_view rDBName,
 const bool bUsePreparedStatement)
 {
-::utl::TempFileNamed aFile;
-aFile.EnableKillingFile();
-
 {
 uno::Reference< XOfficeDatabaseDocument > xDocument(
 
m_xSFactory->createInstance(u"com.sun.star.sdb.OfficeDatabaseDocument"_ustr),
@@ -207,11 +204,11 @@ void EmbeddedDBPerformanceTest::doPerformanceTestOnODB(
 uno::Reference< XPropertySet > xPropertySet(xDataSource, 
UNO_QUERY_THROW);
 xPropertySet->setPropertyValue(u"URL"_ustr, Any(rDriverURL));
 
-xStorable->storeAsURL(aFile.GetURL(), uno::Sequence< 
beans::PropertyValue >());
+xStorable->storeAsURL(maTempFile.GetURL(), uno::Sequence< 
beans::PropertyValue >());
 }
 
 uno::Reference< XOfficeDatabaseDocument > xDocument(
-loadFromDesktop(aFile.GetURL()), UNO_QUERY_THROW);
+loadFromDesktop(maTempFile.GetURL()), UNO_QUERY_THROW);
 
 uno::Reference< XConnection > xConnection =
 getConnectionForDocument(xDocument);


core.git: officecfg/registry sc/inc sc/sdi sc/source

2024-06-20 Thread Heiko Tietze (via logerrit)
 officecfg/registry/data/org/openoffice/Office/Accelerators.xcu|6 +++
 officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu |8 
 sc/inc/sc.hrc |1 
 sc/sdi/cellsh.sdi |1 
 sc/sdi/scalc.sdi  |   17 
++
 sc/source/ui/view/cellsh.cxx  |1 
 sc/source/ui/view/cellsh1.cxx |   11 ++
 sc/source/ui/view/tabview3.cxx|1 
 8 files changed, 46 insertions(+)

New commits:
commit ec5e0d0cd7074a912415761f779b00f8b7117fcf
Author: Heiko Tietze 
AuthorDate: Thu Jun 20 12:56:33 2024 +0200
Commit: Heiko Tietze 
CommitDate: Thu Jun 20 15:15:56 2024 +0200

Resolves tdf#64028 - Command to retain source cell on cut

.uno:CopyDelete copies the cell and deletes the content,
assigned to shift+ctrl+X

Misses to block the command while in edit mode, see tdf#161712

Change-Id: I479008b0484ef8ced86b709a0dc2bdbfa6c44cb1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169266
Tested-by: Jenkins
Reviewed-by: Heiko Tietze 

diff --git a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu 
b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu
index d90357018cb0..4a3962141caf 100644
--- a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu
@@ -1525,6 +1525,12 @@ Ctrl+Shift+u aka U_SHIFT_MOD1 under GTK/IBUS is for 
unicode key input
 .uno:JumpToPrevTable
   
 
+
+  
+L10N SHORTCUTS - NO 
TRANSLATE
+.uno:CopyDelete
+  
+
   
   
 
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
index ad4508627230..e968764fd2c5 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu
@@ -2515,6 +2515,14 @@
   1
 
   
+  
+
+  ~Cut but Keep Format
+
+
+  1
+
+  
 
 
   
diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc
index 9ef248660d7e..57c80e62df2d 100644
--- a/sc/inc/sc.hrc
+++ b/sc/inc/sc.hrc
@@ -513,6 +513,7 @@ static_assert(SID_PREVIEW_END < SID_KEYFUNC_START, "calc 
slots ids trampling inf
 
 #define SID_ACCEPT_FORMULA  (SID_KEYFUNC_START + 42)
 #define SID_START_FORMULA   (SID_KEYFUNC_START + 43)
+#define SID_COPYDELETE  (SID_KEYFUNC_START + 44)
 
 #define SID_KEYFUNC_END (SID_KEYFUNC_START + 50)
 
diff --git a/sc/sdi/cellsh.sdi b/sc/sdi/cellsh.sdi
index ebba146f998d..6f27650509d3 100644
--- a/sc/sdi/cellsh.sdi
+++ b/sc/sdi/cellsh.sdi
@@ -171,6 +171,7 @@ interface CellSelection
 SID_FOCUS_INPUTLINE [ ExecMethod = ExecuteMove; StateMethod = 
GetStateCursor; ]
 SID_CUT [ ExecMethod = ExecuteEdit; StateMethod = 
GetBlockState; ]
 SID_COPY[ ExecMethod = ExecuteEdit; StateMethod = 
GetBlockState; ]
+SID_COPYDELETE  [ ExecMethod = ExecuteEdit; StateMethod = 
GetBlockState; ]
 SID_PASTE   [ ExecMethod = ExecuteEdit; StateMethod = 
GetClipState; ]
 SID_PASTE_SPECIAL   [ ExecMethod = ExecuteEdit; StateMethod = 
GetClipState; ]
 SID_PASTE_UNFORMATTED [ ExecMethod = ExecuteEdit; StateMethod = 
GetClipState; ]
diff --git a/sc/sdi/scalc.sdi b/sc/sdi/scalc.sdi
index 3591ca10f199..d532de343600 100644
--- a/sc/sdi/scalc.sdi
+++ b/sc/sdi/scalc.sdi
@@ -6700,3 +6700,20 @@ SfxVoidItem MoveKeepInsertMode FID_MOVE_KEEP_INSERT_MODE
 
 GroupId = SfxGroupId::Application;
 ]
+
+SfxVoidItem CopyDelete SID_COPYDELETE
+()
+[
+AutoUpdate = FALSE,
+FastCall = FALSE,
+ReadOnlyDoc = FALSE,
+Toggle = FALSE,
+Container = FALSE,
+RecordAbsolute = FALSE,
+RecordPerSet;
+
+AccelConfig = TRUE,
+MenuConfig = TRUE,
+ToolBoxConfig = TRUE,
+GroupId = SfxGroupId::Edit;
+]
\ No newline at end of file
diff --git a/sc/source/ui/view/cellsh.cxx b/sc/source/ui/view/cellsh.cxx
index b61a5618..351868f3e95f 100644
--- a/sc/source/ui/view/cellsh.cxx
+++ b/sc/source/ui/view/cellsh.cxx
@@ -233,6 +233,7 @@ void ScCellShell::GetBlockState( SfxItemSet& rSet )
 bDisable = false;
 break;
 case SID_CUT:   // cut
+case SID_COPYDELETE:
 bDisable = !bSimpleArea || 
GetObjectShell()->isContentExtractionLocked();
 break;
 case FID_INS_CELL:  // insert cells, just simple selection
diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx
index 50c5635a3b18..ed879ecb62f9 100644
--- a/sc/source/ui/view/cellsh1.cxx
+++ b/sc

core.git: basic/source include/tools

2024-06-20 Thread Andreas Heinisch (via logerrit)
 basic/source/inc/date.hxx|   10 ++--
 basic/source/runtime/methods.cxx |   93 +++
 include/tools/time.hxx   |7 ++
 3 files changed, 59 insertions(+), 51 deletions(-)

New commits:
commit 8730575016b15da4892c5adc0d26620688d174bc
Author: Andreas Heinisch 
AuthorDate: Wed Jun 12 14:22:07 2024 +0200
Commit: Andreas Heinisch 
CommitDate: Thu Jun 20 14:36:50 2024 +0200

tdf#161469 - Basic: align implementation now with the now function in calc

Align the implementation of the now function in basic with the now function 
in calc to include the also nanoseconds. The precision is limited to 
milliseconds to avoid comparision inaccuracies.

Change-Id: Ia85b653898f5849f67a171749725faab976b2a8a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168706
Reviewed-by: Andreas Heinisch 
Reviewed-by: Mike Kaganski 
Tested-by: Jenkins

diff --git a/basic/source/inc/date.hxx b/basic/source/inc/date.hxx
index 4b6cb115fbbf..5db9df621b9e 100644
--- a/basic/source/inc/date.hxx
+++ b/basic/source/inc/date.hxx
@@ -33,10 +33,11 @@ enum class SbDateCorrection
 };
 
 bool implDateSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, bool 
bUseTwoDigitYear, SbDateCorrection eCorr, double& rdRet );
-double implTimeSerial( sal_Int16 nHour, sal_Int16 nMinute, sal_Int16 nSecond);
-bool implDateTimeSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay,
- sal_Int16 nHour, sal_Int16 nMinute, sal_Int16 nSecond,
- double& rdRet );
+double implTimeSerial(sal_Int16 nHour, sal_Int16 nMinute, sal_Int16 nSecond,
+  sal_Int32 nMilliSecond);
+bool implDateTimeSerial(sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, 
sal_Int16 nHour,
+sal_Int16 nMinute, sal_Int16 nSecond, sal_Int32 
nMilliSecond,
+double& rdRet);
 
 sal_Int16 implGetWeekDay( double aDate, bool bFirstDayParam = false, sal_Int16 
nFirstDay = 0 );
 
@@ -47,6 +48,7 @@ sal_Int16 implGetDateDay( double aDate );
 sal_Int16 implGetHour( double dDate );
 sal_Int16 implGetMinute( double dDate );
 sal_Int16 implGetSecond( double dDate );
+sal_Int32 implGetNanoSecond(double dDate);
 
 css::util::Date SbxDateToUNODate( const SbxValue* );
 void SbxDateFromUNODate( SbxValue*, const css::util::Date& );
diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index 0235db0fc06a..da57ccc98736 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -111,6 +111,12 @@ using namespace com::sun::star::uno;
 
 static sal_Int32 GetDayDiff(const Date& rDate) { return rDate - 
Date(1899'12'30); }
 
+static sal_Int32 nanoSecToMilliSec(sal_Int64 nNanoSeconds)
+{
+// Rounding nanoseconds to milliseconds precision to avoid comparision 
inaccuracies
+return o3tl::convert(nNanoSeconds, 1, tools::Time::nanoPerMilli);
+}
+
 #if HAVE_FEATURE_SCRIPTING
 
 static void FilterWhiteSpace( OUString& rStr )
@@ -1667,14 +1673,15 @@ css::util::Time SbxDateToUNOTime( const SbxValue* const 
pVal )
 aUnoTime.Hours   = implGetHour  ( aDate );
 aUnoTime.Minutes = implGetMinute( aDate );
 aUnoTime.Seconds = implGetSecond( aDate );
-aUnoTime.NanoSeconds = 0;
+aUnoTime.NanoSeconds = implGetNanoSecond( aDate );
 
 return aUnoTime;
 }
 
 void SbxDateFromUNOTime( SbxValue *pVal, const css::util::Time& aUnoTime)
 {
-pVal->PutDate( implTimeSerial(aUnoTime.Hours, aUnoTime.Minutes, 
aUnoTime.Seconds) );
+pVal->PutDate(implTimeSerial(aUnoTime.Hours, aUnoTime.Minutes, 
aUnoTime.Seconds,
+ nanoSecToMilliSec(aUnoTime.NanoSeconds)));
 }
 
 // Function to convert date to UNO time (com.sun.star.util.Time)
@@ -1715,7 +1722,7 @@ css::util::DateTime SbxDateToUNODateTime( const SbxValue* 
const pVal )
 aUnoDT.Hours   = implGetHour  ( aDate );
 aUnoDT.Minutes = implGetMinute( aDate );
 aUnoDT.Seconds = implGetSecond( aDate );
-aUnoDT.NanoSeconds = 0;
+aUnoDT.NanoSeconds = implGetNanoSecond( aDate );
 
 return aUnoDT;
 }
@@ -1723,9 +1730,8 @@ css::util::DateTime SbxDateToUNODateTime( const SbxValue* 
const pVal )
 void SbxDateFromUNODateTime( SbxValue *pVal, const css::util::DateTime& aUnoDT)
 {
 double dDate(0.0);
-if( implDateTimeSerial( aUnoDT.Year, aUnoDT.Month, aUnoDT.Day,
-aUnoDT.Hours, aUnoDT.Minutes, aUnoDT.Seconds,
-dDate ) )
+if (implDateTimeSerial(aUnoDT.Year, aUnoDT.Month, aUnoDT.Day, 
aUnoDT.Hours, aUnoDT.Minutes,
+   aUnoDT.Seconds, 
nanoSecToMilliSec(aUnoDT.NanoSeconds), dDate))
 {
 pVal->PutDate( dDate );
 }
@@ -1905,7 +1911,7 @@ void SbRtl_TimeSerial(StarBASIC *, SbxArray & rPar, bool)
 return StarBASIC::Error( ERRCODE_BASIC_BAD_ARGUMENT );
 }
 
-rPar.Get(0)->PutDate(implTimeSerial(nHour, nMinute, 

core.git: download.lst

2024-06-20 Thread Xisco Fauli (via logerrit)
 download.lst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 4eb9cde4db28616e0b0c9cd6825830ab7d2f3c96
Author: Xisco Fauli 
AuthorDate: Thu Jun 20 12:22:55 2024 +0200
Commit: Xisco Fauli 
CommitDate: Thu Jun 20 14:09:42 2024 +0200

libxslt: uprade to 1.1.41

Downloaded from 
https://download.gnome.org/sources/libxslt/1.1/libxslt-1.1.41.tar.xz

Change-Id: Ib06a013d85cc47a901fbe55a880f3ad6a5edcea8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169265
Reviewed-by: Xisco Fauli 
Tested-by: Jenkins

diff --git a/download.lst b/download.lst
index 2046ac5aeffe..20f11c74f2df 100644
--- a/download.lst
+++ b/download.lst
@@ -430,8 +430,8 @@ LIBXML_TARBALL := 
libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-LIBXSLT_SHA256SUM := 
194715db023035f65fb566402f2ad2b5eab4c29d541f511305c40b29b1f48d13
-LIBXSLT_VERSION_MICRO := 40
+LIBXSLT_SHA256SUM := 
3ad392af91115b7740f7b50d228cc1c5fc13afc1da7f16cb0213917a37f71bda
+LIBXSLT_VERSION_MICRO := 41
 LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz
 # three static lines
 # so that git cherry-pick


core.git: include/svx sd/inc sd/source svx/source

2024-06-20 Thread Tomaž Vajngerl (via logerrit)
 include/svx/annotation/Annotation.hxx  |2 ++
 sd/inc/Annotation.hxx  |3 ++-
 sd/source/core/annotations/Annotation.cxx  |   21 -
 sd/source/core/sdpage2.cxx |   16 
 sd/source/ui/annotations/annotationmanager.cxx |   22 +-
 svx/source/annotation/Annotation.cxx   |3 +++
 svx/source/svdraw/svdpage.cxx  |   21 -
 7 files changed, 60 insertions(+), 28 deletions(-)

New commits:
commit 6289ad39e851c709111b582e4390a097b30e2cae
Author: Tomaž Vajngerl 
AuthorDate: Thu Jun 20 17:10:01 2024 +0900
Commit: Tomaž Vajngerl 
CommitDate: Thu Jun 20 14:06:51 2024 +0200

annot: clone annotations in SdrObjects when the page is duplicated

When the page is duplicated we need to clone all SdrObjects and
with that also all the annotations contained in the SdrObjects.
The annotations must also be added to the page, so that we can
find them quickly.

Previously we only cloned the annotations and relied that the
SdrObjects would be automagically be created, but as the SdrObject
are also cloned this creates a mess with duplicated objects with
annotatins for the wrong page or annotation objects with missing
annotation.

Change-Id: I4bf53e4bd387fad9b0a8e4f43edd57c3d0fd34cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169256
Reviewed-by: Szymon Kłos 
Tested-by: Michael Meeks 
Reviewed-by: Michael Meeks 
(cherry picked from commit c3281e071526f7efa9b7646a993476fc3f6ff8db)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169260
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl 

diff --git a/include/svx/annotation/Annotation.hxx 
b/include/svx/annotation/Annotation.hxx
index 693666bb045e..d7e4842f534c 100644
--- a/include/svx/annotation/Annotation.hxx
+++ b/include/svx/annotation/Annotation.hxx
@@ -176,6 +176,8 @@ public:
 void setCreationInfo(CreationInfo const& rCreationInfo) { maCreationInfo = 
rCreationInfo; }
 
 SdrObject* findAnnotationObject();
+
+virtual rtl::Reference clone(SdrPage* pTargetPage) = 0;
 };
 
 /** Vector of annotations */
diff --git a/sd/inc/Annotation.hxx b/sd/inc/Annotation.hxx
index 8d9f34501e0d..616888357894 100644
--- a/sd/inc/Annotation.hxx
+++ b/sd/inc/Annotation.hxx
@@ -53,7 +53,7 @@ std::unique_ptr 
CreateUndoInsertOrRemoveAnnotation(rtl::Reference
 class SAL_DLLPUBLIC_RTTI Annotation final : public sdr::annotation::Annotation
 {
 public:
-explicit Annotation( const 
css::uno::Reference& context, SdPage* pPage );
+explicit Annotation(const 
css::uno::Reference& context, SdrPage* pPage);
 Annotation(const Annotation&) = delete;
 Annotation& operator=(const Annotation&) = delete;
 
@@ -82,6 +82,7 @@ public:
 virtual void SAL_CALL setDateTime(const css::util::DateTime & the_value) 
override;
 
 void createChangeUndo();
+rtl::Reference clone(SdrPage* pTargetPage) 
override;
 
 private:
 void createChangeUndoImpl(std::unique_lock& g);
diff --git a/sd/source/core/annotations/Annotation.cxx 
b/sd/source/core/annotations/Annotation.cxx
index 4f442dbbaa1c..3036ded07e8c 100644
--- a/sd/source/core/annotations/Annotation.cxx
+++ b/sd/source/core/annotations/Annotation.cxx
@@ -78,7 +78,7 @@ rtl::Reference 
createAnnotationAndAddToPage(SdPage*
 return xAnnotation;
 }
 
-Annotation::Annotation(const uno::Reference& context, 
SdPage* pPage)
+Annotation::Annotation(const uno::Reference& context, 
SdrPage* pPage)
 : sdr::annotation::Annotation(context, pPage)
 {
 }
@@ -243,6 +243,25 @@ void 
Annotation::createChangeUndoImpl(std::unique_lock& g)
 }
 }
 
+rtl::Reference Annotation::clone(SdrPage* 
pTargetPage)
+{
+rtl::Reference aNewAnnotation;
+aNewAnnotation = new 
sd::Annotation(comphelper::getProcessComponentContext(), pTargetPage);
+aNewAnnotation->setPosition(getPosition());
+aNewAnnotation->setSize(getSize());
+aNewAnnotation->setAuthor(getAuthor());
+aNewAnnotation->setInitials(getInitials());
+aNewAnnotation->setDateTime(getDateTime());
+aNewAnnotation->setCreationInfo(getCreationInfo());
+
+uno::Reference xSourceRange (getTextRange(), 
uno::UNO_QUERY);
+uno::Reference xRange 
(aNewAnnotation->getTextRange(), uno::UNO_QUERY);
+if (xSourceRange.is() && xRange.is())
+xRange->copyText(xSourceRange);
+
+return aNewAnnotation;
+}
+
 std::unique_ptr 
CreateUndoInsertOrRemoveAnnotation(rtl::Reference& 
xAnnotation, bool bInsert)
 {
 if (xAnnotation)
diff --git a/sd/source/core/sdpage2.cxx b/sd/source/core/sdpage2.cxx
index 45563bdf0c70..7b0abf63fad7 100644
--- a/sd/source/core/sdpage2.cxx
+++ b/sd/source/core/sdpage2.cxx
@@ -377,22 +377,6 @@ void SdPage::lateInit(const SdPage& rSrcPage)
 // animations
 rSrcPage.cloneAnimations(*this);
 
-// annotations
-for (auto const& rSourceAnnotation : rSrcPage.maAnnotations)
-{
-  

core.git: 2 commits - compilerplugins/clang dbaccess/source editeng/source filter/source include/vcl sc/source sd/source svx/source vcl/source xmlhelp/source

2024-06-20 Thread Noel Grandin (via logerrit)
 compilerplugins/clang/unusedfields.only-used-in-constructor.results |  424 
--
 compilerplugins/clang/unusedfields.py   |2 
 compilerplugins/clang/unusedfields.readonly.results |  204 ++--
 compilerplugins/clang/unusedfields.untouched.results|  288 
+++---
 compilerplugins/clang/unusedfields.writeonly.results|  394 
-
 dbaccess/source/ui/control/opendoccontrols.cxx  |7 
 dbaccess/source/ui/inc/opendoccontrols.hxx  |2 
 editeng/source/editeng/impedit.hxx  |5 
 editeng/source/editeng/impedit2.cxx |   24 
 editeng/source/editeng/impedit3.cxx |6 
 filter/source/xsltdialog/xmlfilterjar.cxx   |6 
 include/vcl/vcllayout.hxx   |2 
 sc/source/filter/excel/xestyle.cxx  |   17 
 sc/source/filter/inc/PivotTableFormat.hxx   |2 
 sc/source/filter/inc/xestyle.hxx|1 
 sc/source/filter/oox/PivotTableFormat.cxx   |1 
 sd/source/ui/inc/NotesPanelView.hxx |5 
 sd/source/ui/view/NotesPanelView.cxx|1 
 svx/source/table/tablehtmlimporter.cxx  |7 
 vcl/source/gdi/sallayout.cxx|2 
 xmlhelp/source/cxxhelp/inc/tvfactory.hxx|3 
 xmlhelp/source/treeview/tvfactory.cxx   |7 
 22 files changed, 661 insertions(+), 749 deletions(-)

New commits:
commit 51dfbb1fce61dfb2e1d4c91350d2299e6dc3e04d
Author: Noel Grandin 
AuthorDate: Wed Jun 19 15:11:11 2024 +0200
Commit: Noel Grandin 
CommitDate: Thu Jun 20 14:03:31 2024 +0200

tdf#161219 Exporting XML filter as package results in empty jar

regression from
commit a04bf69bccfbc266643b418ef57030a42bbb5c05
Author: Noel Grandin 
Date:   Mon Jan 16 10:36:59 2023 +0200
XUnoTunnel->dynamic_cast in ZipPackageEntry

Change-Id: I12915bb093ea050f4290c02cc5a6e1dc2c7b903a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169204
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/filter/source/xsltdialog/xmlfilterjar.cxx 
b/filter/source/xsltdialog/xmlfilterjar.cxx
index de43c3d3247d..677ab69f3de5 100644
--- a/filter/source/xsltdialog/xmlfilterjar.cxx
+++ b/filter/source/xsltdialog/xmlfilterjar.cxx
@@ -25,7 +25,6 @@
 #include 
 #include 
 #include 
-#include 
 #include 
 #include 
 
@@ -105,11 +104,10 @@ static Reference< XInterface > addFolder( Reference< 
XInterface > const & xRootF
 static void addFile_( Reference< XInterface > const & xRootFolder, Reference< 
XSingleServiceFactory > const & xFactory, Reference< XInputStream > const & 
xInput, const OUString& aName )
 {
 Reference< XActiveDataSink > xSink( xFactory->createInstance(), UNO_QUERY 
);
-Reference< XUnoTunnel > xTunnel( xSink, UNO_QUERY );
-if( xSink.is() && xTunnel.is())
+if( xSink.is() )
 {
 Reference< XNameContainer > xNameContainer(xRootFolder, UNO_QUERY );
-xNameContainer->insertByName(encodeZipUri( aName ), Any(xTunnel));
+xNameContainer->insertByName(encodeZipUri( aName ), Any(Reference< 
XInterface >( xSink, UNO_QUERY )));
 xSink->setInputStream( xInput );
 }
 }
commit 86a827da7c71305be81624d25220d125ef00137a
Author: Noel Grandin 
AuthorDate: Thu Jun 20 11:58:23 2024 +0200
Commit: Noel Grandin 
CommitDate: Thu Jun 20 14:03:21 2024 +0200

loplugin:unusedfields

Change-Id: I4bc67811e228b4806db9f9b9bf9fb0de0eb36de2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169263
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git 
a/compilerplugins/clang/unusedfields.only-used-in-constructor.results 
b/compilerplugins/clang/unusedfields.only-used-in-constructor.results
index 4ef9ab5fd47d..baab2f3339c0 100644
--- a/compilerplugins/clang/unusedfields.only-used-in-constructor.results
+++ b/compilerplugins/clang/unusedfields.only-used-in-constructor.results
@@ -1,4 +1,4 @@
-basegfx/source/polygon/b2dpolygontriangulator.cxx:112
+basegfx/source/polygon/b2dpolygontriangulator.cxx:107
 basegfx::(anonymous namespace)::Triangulator maStartEntries EdgeEntries
 basegfx/source/polygon/b2dtrapezoid.cxx:208
 basegfx::trapezoidhelper::(anonymous namespace)::PointBlockAllocator 
maFirstStackBlock B2DPoint[32]
@@ -142,7 +142,7 @@ cppu/source/uno/check.cxx:267
 (anonymous namespace)::Char4 chars Char3
 cui/source/dialogs/colorpicker.cxx:748
 cui::(anonymous namespace)::ColorPickerDialog m_aColorPrevious 
ColorPreviewControl
-cui/source/factory/dlgfact.cxx:1245
+cui/source/factory/dlgfact.cxx:1257
 (anonymous namespace)

core.git: vcl/source

2024-06-20 Thread Tomaž Vajngerl (via logerrit)
 vcl/source/gdi/pdfwriter_impl.cxx |  258 ++
 1 file changed, 151 insertions(+), 107 deletions(-)

New commits:
commit 50f3443d59d457da8dd19e0520f317851f050469
Author: Tomaž Vajngerl 
AuthorDate: Wed Jun 19 15:21:12 2024 +0900
Commit: Tomaž Vajngerl 
CommitDate: Thu Jun 20 13:18:32 2024 +0200

pdf: remove CHECK_RETURN macro from code

Doesn't help with code readability and makes code more complex.

Change-Id: I0c1dc421d5fb173e610ab303d7c4f707dc65a093
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169203
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl 

diff --git a/vcl/source/gdi/pdfwriter_impl.cxx 
b/vcl/source/gdi/pdfwriter_impl.cxx
index 9250204581bc..7fc600c40d0f 100644
--- a/vcl/source/gdi/pdfwriter_impl.cxx
+++ b/vcl/source/gdi/pdfwriter_impl.cxx
@@ -1795,9 +1795,6 @@ bool PDFWriterImpl::updateObject( sal_Int32 n )
 return aError == osl::File::E_None;
 }
 
-#define CHECK_RETURN( x ) if( !(x) ) return 0
-#define CHECK_RETURN2( x ) if( !(x) ) return
-
 sal_Int32 PDFWriterImpl::emitStructParentTree( sal_Int32 nObject )
 {
 if( nObject > 0 )
@@ -1815,8 +1812,10 @@ sal_Int32 PDFWriterImpl::emitStructParentTree( sal_Int32 
nObject )
 + "
" );
 }
 aLine.append( "]>>
endobj

" );
-CHECK_RETURN( updateObject( nObject ) );
-CHECK_RETURN( writeBuffer( aLine ) );
+if (!updateObject(nObject))
+return 0;
+if (!writeBuffer(aLine))
+return 0;
 }
 return nObject;
 }
@@ -1852,8 +1851,8 @@ sal_Int32 PDFWriterImpl::emitStructIDTree(sal_Int32 const 
nObject)
 }
 buf.append("] >>
endobj

");
 
-CHECK_RETURN( updateObject(nObject) );
-CHECK_RETURN( writeBuffer(buf) );
+if (!updateObject(nObject)) return 0;
+if (!writeBuffer(buf)) return 0;
 
 return nObject;
 }
@@ -2132,7 +2131,8 @@ sal_Int32 PDFWriterImpl::emitStructure( 
PDFStructureElement& rEle )
 if( rEle.m_nOwnElement == rEle.m_nParentElement )
 {
 nParentTree = createObject();
-CHECK_RETURN( nParentTree );
+if (!nParentTree)
+return 0;
 aLine.append( "/StructTreeRoot
"
 "/ParentTree "
 + OString::number(nParentTree)
@@ -2279,11 +2279,11 @@ sal_Int32 PDFWriterImpl::emitStructure( 
PDFStructureElement& rEle )
 }
 aLine.append( ">>
endobj

" );
 
-CHECK_RETURN( updateObject( rEle.m_nObject ) );
-CHECK_RETURN( writeBuffer( aLine ) );
+if (!updateObject(rEle.m_nObject)) return 0;
+if (!writeBuffer(aLine)) return 0;
 
-CHECK_RETURN( emitStructParentTree( nParentTree ) );
-CHECK_RETURN( emitStructIDTree(nIDTree) );
+if (!emitStructParentTree(nParentTree)) return 0;
+if (!emitStructIDTree(nIDTree)) return 0;
 
 return rEle.m_nObject;
 }
@@ -2403,7 +2403,8 @@ sal_Int32 PDFWriterImpl::emitBuildinFont(const 
pdf::BuildinFontFace* pFD, sal_In
 
 if( nFontObject <= 0 )
 nFontObject = createObject();
-CHECK_RETURN( updateObject( nFontObject ) );
+if (!updateObject(nFontObject))
+return 0;
 aLine.append(
 OString::number(nFontObject)
 + " 0 obj
"
@@ -2413,7 +2414,8 @@ sal_Int32 PDFWriterImpl::emitBuildinFont(const 
pdf::BuildinFontFace* pFD, sal_In
 if( rBuildinFont.m_eCharSet == RTL_TEXTENCODING_MS_1252 )
  aLine.append( "/Encoding/WinAnsiEncoding
" );
 aLine.append( ">>
endobj

" );
-CHECK_RETURN( writeBuffer( aLine ) );
+if (!writeBuffer(aLine))
+return 0;
 return nFontObject;
 }
 
@@ -2913,8 +2915,8 @@ sal_Int32 PDFWriterImpl::createToUnicodeCMap( sal_uInt8 
const * pEncoding,
 return 0;
 
 sal_Int32 nStream = createObject();
-CHECK_RETURN( updateObject( nStream ) );
-
+if (!updateObject(nStream))
+return 0;
 OStringBuffer aContents( 1024 );
 aContents.append(
  "/CIDInit/ProcSet findresource begin
"
@@ -2988,21 +2990,21 @@ sal_Int32 PDFWriterImpl::createToUnicodeCMap( sal_uInt8 
const * pEncoding,
 else
 aLine.append( aContents.getLength() );
 aLine.append( ">>
stream
" );
-CHECK_RETURN( writeBuffer( aLine ) );
+if (!writeBuffer(aLine)) return 0;
 checkAndEnableStreamEncryption( nStream );
 if (!g_bDebugDisableCompression)
 {
-CHECK_RETURN( writeBufferBytes( aStream.GetData(), nLen ) );
+if(!writeBufferBytes(aStream.GetData(), nLen)) return 0;
 }
 else
 {
-CHECK_RETURN( writeBuffer( aContents ) );
+if (!writeBuffer(aContents)) return 0;
 }
 disableStreamEncryption();
 aLine.setLength( 0 );
 aLine.append( "
endstream
"
   "endobj

" );
-CHECK_RETURN( writeBuffer( aLine ) );
+if (!writeBuffer(aLine)) return 0;
 return nStream;
 }
 
@@ -3023,7 +3025,7 @@ sal_Int32 PDFWriterImpl::emitFontDescriptor( const 
vcl::font::PhysicalFontFace*
 nFontFlags |= (1 << 1);
 
 sal_Int32 nFontDescr

core.git: Branch 'libreoffice-24-8' - editeng/CppunitTest_editeng_editeng.mk editeng/Module_editeng.mk editeng/qa editeng/source

2024-06-20 Thread Miklos Vajna (via logerrit)
 editeng/CppunitTest_editeng_editeng.mk |   69 ++
 editeng/Module_editeng.mk  |1 
 editeng/qa/editeng/editeng.cxx |  101 +
 editeng/source/editeng/impedit.hxx |2 
 editeng/source/editeng/impedit2.cxx|2 
 editeng/source/editeng/impedit4.cxx|   54 -
 6 files changed, 225 insertions(+), 4 deletions(-)

New commits:
commit 70d1bd6ee0eba9d6661cd6280566f77a87f2d068
Author: Miklos Vajna 
AuthorDate: Thu Jun 20 09:53:00 2024 +0200
Commit: Miklos Vajna 
CommitDate: Thu Jun 20 13:04:56 2024 +0200

tdf#161652 editeng, RTF copy: only write used paragraph styles

Copy a single world from the Impress bugdoc to Writer, number of
paragraph styles increase from 126 to 221, while only +0 or +1 are
expected.

It seems the problem is that the editeng doc of the shape refers to all
styles of the masterpage and we write the style table before the
content, so we export all styles to be on the safe side.

Fix the problem by iterating the paragraphs of the selection in the
"copy" (not "export") case, assuming that typically the selection
doesn't refer to all available styles in the document, and the number of
paragraphs in a shape is not a large amount.

An alternative would be to limit the style import on the RTF reading
side, but not producing those not needed styles in the first place looks
superior.

Change-Id: I43e4c542e530ff6422357a28399718e89fdbabe9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169251
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 
(cherry picked from commit afb4ea67463d9f0200dc6216cfd932aec0984c82)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169146

diff --git a/editeng/CppunitTest_editeng_editeng.mk 
b/editeng/CppunitTest_editeng_editeng.mk
new file mode 100644
index ..38cbc9543db6
--- /dev/null
+++ b/editeng/CppunitTest_editeng_editeng.mk
@@ -0,0 +1,69 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+#*
+
+$(eval $(call gb_CppunitTest_CppunitTest,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,editeng_editeng, \
+editeng/qa/editeng/editeng \
+))
+
+$(eval $(call gb_CppunitTest_use_library_objects,editeng_editeng,editeng))
+
+$(eval $(call gb_CppunitTest_use_libraries,editeng_editeng, \
+basegfx \
+comphelper \
+cppu \
+cppuhelper \
+docmodel \
+i18nlangtag \
+i18nutil \
+lng \
+sal \
+salhelper \
+sax \
+sot \
+sfx \
+svl \
+svt \
+test \
+tk \
+tl \
+ucbhelper \
+unotest \
+utl \
+vcl \
+xo \
+))
+
+$(eval $(call gb_CppunitTest_use_externals,editeng_editeng,\
+boost_headers \
+icuuc \
+libxml2 \
+))
+
+$(eval $(call gb_CppunitTest_set_include,editeng_editeng,\
+-I$(SRCDIR)/editeng/inc \
+-I$(SRCDIR)/editeng/source/editeng \
+$$(INCLUDE) \
+))
+
+$(eval $(call gb_CppunitTest_use_sdk_api,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_use_ure,editeng_editeng))
+$(eval $(call gb_CppunitTest_use_vcl,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_use_rdb,editeng_editeng,services))
+
+$(eval $(call gb_CppunitTest_use_configuration,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_use_more_fonts,editeng_editeng))
+
+# vim: set noet sw=4 ts=4:
diff --git a/editeng/Module_editeng.mk b/editeng/Module_editeng.mk
index 6fedbcb6043e..fca6e8426c4e 100644
--- a/editeng/Module_editeng.mk
+++ b/editeng/Module_editeng.mk
@@ -31,6 +31,7 @@ $(eval $(call gb_Module_add_l10n_targets,editeng,\
 
 $(eval $(call gb_Module_add_check_targets,editeng,\
$(if $(and $(filter $(COM),MSC),$(MERGELIBS)),, \
+   CppunitTest_editeng_editeng \
CppunitTest_editeng_core) \
CppunitTest_editeng_borderline \
CppunitTest_editeng_lookuptree \
diff --git a/editeng/qa/editeng/editeng.cxx b/editeng/qa/editeng/editeng.cxx
new file mode 100644
index ..5c1f23e7e389
--- /dev/null
+++ b/editeng/qa/editeng/editeng.cxx
@@ -0,0 +1,101 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include 
+
+#include 
+
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+
+using na

core.git: translations

2024-06-20 Thread Martin Srebotnjak (via logerrit)
 translations |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 635add71c428eac6f4c080307b19c4f2cb63e889
Author: Martin Srebotnjak 
AuthorDate: Thu Jun 20 13:02:13 2024 +0200
Commit: Gerrit Code Review 
CommitDate: Thu Jun 20 13:02:13 2024 +0200

Update git submodules

* Update translations from branch 'master'
  to cf2e53f45d2727aa4c1b587362eb2e5f1a83f498
  - Updated Slovenian translation

Change-Id: Ifd238155fe7ef5bd93520acb24c0c4f7ad659313

diff --git a/translations b/translations
index b6092afde898..cf2e53f45d27 16
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit b6092afde898f454189047221479af58e31049fa
+Subproject commit cf2e53f45d2727aa4c1b587362eb2e5f1a83f498


core.git: Branch 'libreoffice-24-2' - sw/source

2024-06-20 Thread Caolán McNamara (via logerrit)
 sw/source/core/text/guess.cxx |   34 +++---
 sw/source/core/text/guess.hxx |4 +++-
 2 files changed, 18 insertions(+), 20 deletions(-)

New commits:
commit 38c7cf734b6196c590231985580f6205c8e157d2
Author: Caolán McNamara 
AuthorDate: Tue Jun 11 11:29:44 2024 +0100
Commit: Michael Stahl 
CommitDate: Thu Jun 20 13:02:25 2024 +0200

more stale hyphenation data after skipping blanks

m_xHyphWord is stale if m_nBreakStart changes

turn maybeAdjustPositionsForBlockAdjust into a member
to make it easier to discard m_xHyphWord on change
to m_nBreakStart

Change-Id: I6ca37371bf6b8362ebd16a08594afcff3222fa12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168666
Reviewed-by: Mike Kaganski 
Tested-by: Jenkins CollaboraOffice 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168699
Reviewed-by: Michael Stahl 
Tested-by: Jenkins

diff --git a/sw/source/core/text/guess.cxx b/sw/source/core/text/guess.cxx
index c199bbfcfa97..c4f74de7cef7 100644
--- a/sw/source/core/text/guess.cxx
+++ b/sw/source/core/text/guess.cxx
@@ -71,15 +71,14 @@ bool hasBlanksInLine(const SwTextFormatInfo& rInf, 
TextFrameIndex end)
 return false;
 }
 
+}
+
 // Called for the last text run in a line; if it is block-adjusted, or center 
/ right-adjusted
 // with Word compatibility option set, and it has trailing spaces, then the 
function sets the
 // values, and returns 'false' value that SwTextGuess::Guess should return, to 
create a
 // trailing SwHolePortion.
-bool maybeAdjustPositionsForBlockAdjust(TextFrameIndex& rCutPos, 
TextFrameIndex& rBreakPos,
-TextFrameIndex& rBreakStart, 
sal_uInt16& rBreakWidth,
-sal_uInt16& rExtraBlankWidth, 
sal_uInt16& rMaxSizeDiff,
-const SwTextFormatInfo& rInf, const 
SwScriptInfo& rSI,
-sal_uInt16 maxComp)
+bool SwTextGuess::maybeAdjustPositionsForBlockAdjust(sal_uInt16& rMaxSizeDiff, 
const SwTextFormatInfo& rInf,
+ const SwScriptInfo& rSI, 
sal_uInt16 maxComp)
 {
 const auto& adjObj = 
rInf.GetTextFrame()->GetTextNodeForParaProps()->GetSwAttrSet().GetAdjust();
 const SvxAdjust& adjust = adjObj.GetAdjust();
@@ -98,7 +97,7 @@ bool maybeAdjustPositionsForBlockAdjust(TextFrameIndex& 
rCutPos, TextFrameIndex&
 if (rInf.GetTextFrame()->IsRightToLeft())
 return true;
 }
-if (auto ch = rInf.GetChar(rCutPos); !ch) // end of paragraph - last line
+if (auto ch = rInf.GetChar(m_nCutPos); !ch) // end of paragraph - last line
 {
 if (adjust == SvxAdjust::Block)
 {
@@ -123,7 +122,7 @@ bool maybeAdjustPositionsForBlockAdjust(TextFrameIndex& 
rCutPos, TextFrameIndex&
 // tdf#57187: block-adjusted line shorter than full width, terminated by 
manual
 // line break, must not use trailing spaces for adjustment
 TextFrameIndex breakPos;
-TextFrameIndex newCutPos = AdjustCutPos(rCutPos, breakPos, rInf);
+TextFrameIndex newCutPos = AdjustCutPos(m_nCutPos, breakPos, rInf);
 
 if (auto ch = rInf.GetChar(newCutPos); ch && ch != CH_BREAK)
 return true; // next is neither line break nor paragraph end
@@ -135,19 +134,19 @@ bool maybeAdjustPositionsForBlockAdjust(TextFrameIndex& 
rCutPos, TextFrameIndex&
 
 // Some trailing spaces actually found, and in case of block adjustment, 
the text portion
 // itself has spaces to be able to block-adjust, or single word is allowed 
to adjust
-rBreakStart = rCutPos = newCutPos;
-rBreakPos = breakPos;
+m_nBreakStart = m_nCutPos = newCutPos;
+m_nBreakPos = breakPos;
+// throw away old m_xHyphWord because the current break pos is now between 
words
+m_xHyphWord = nullptr;
 
-rInf.GetTextSize(&rSI, rInf.GetIdx(), breakPos - rInf.GetIdx(), maxComp, 
rBreakWidth,
+rInf.GetTextSize(&rSI, rInf.GetIdx(), breakPos - rInf.GetIdx(), maxComp, 
m_nBreakWidth,
  rMaxSizeDiff, rInf.GetCachedVclData().get());
-rInf.GetTextSize(&rSI, breakPos, rBreakStart - breakPos, maxComp, 
rExtraBlankWidth,
+rInf.GetTextSize(&rSI, breakPos, m_nBreakStart - breakPos, maxComp, 
m_nExtraBlankWidth,
  rMaxSizeDiff, rInf.GetCachedVclData().get());
 
 return false; // require SwHolePortion creation
 }
 
-}
-
 // provides information for line break calculation
 // returns true if no line break has to be performed
 // otherwise possible break or hyphenation position is determined
@@ -254,9 +253,7 @@ bool SwTextGuess::Guess( const SwTextPortion& rPor, 
SwTextFormatInfo &rInf,
 // portion fits to line
 m_nCutPos = rInf.GetIdx() + nMaxLen;
 bool bRet = rPor.InFieldGrp()
-|| maybeAdjustPositionsForBlockAdjust(m_nCutPos, 
m_nBreakPos, m_nBreakStart,
-   

translations.git: source/sl

2024-06-20 Thread Martin Srebotnjak (via logerrit)
 source/sl/chart2/messages.po  |4 
 source/sl/cui/messages.po |   56 
 source/sl/formula/messages.po |  862 +-
 source/sl/fpicker/messages.po |   68 
 source/sl/helpcontent2/source/auxiliary.po|   16 
 source/sl/helpcontent2/source/text/sbasic/python.po   |   46 
 source/sl/helpcontent2/source/text/sbasic/shared.po   |4 
 source/sl/helpcontent2/source/text/sbasic/shared/03.po|4 
 source/sl/helpcontent2/source/text/scalc.po   |4 
 source/sl/helpcontent2/source/text/scalc/01.po|  136 +
 source/sl/helpcontent2/source/text/scalc/02.po|4 
 source/sl/helpcontent2/source/text/scalc/04.po|4 
 source/sl/helpcontent2/source/text/scalc/guide.po |   12 
 source/sl/helpcontent2/source/text/schart/01.po   |4 
 source/sl/helpcontent2/source/text/sdraw.po   |4 
 source/sl/helpcontent2/source/text/sdraw/01.po|4 
 source/sl/helpcontent2/source/text/shared.po  |4 
 source/sl/helpcontent2/source/text/shared/00.po   |4 
 source/sl/helpcontent2/source/text/shared/01.po   |   74 
 source/sl/helpcontent2/source/text/shared/02.po   |   14 
 source/sl/helpcontent2/source/text/shared/04.po   |4 
 source/sl/helpcontent2/source/text/shared/guide.po|   52 
 source/sl/helpcontent2/source/text/shared/menu.po |4 
 source/sl/helpcontent2/source/text/shared/optionen.po |4 
 source/sl/helpcontent2/source/text/simpress.po|4 
 source/sl/helpcontent2/source/text/simpress/00.po |4 
 source/sl/helpcontent2/source/text/simpress/01.po |   26 
 source/sl/helpcontent2/source/text/simpress/02.po |4 
 source/sl/helpcontent2/source/text/simpress/guide.po  |4 
 source/sl/helpcontent2/source/text/swriter/01.po  |4 
 source/sl/officecfg/registry/data/org/openoffice/Office/UI.po |   19 
 source/sl/sc/messages.po  |  123 +
 source/sl/scp2/source/ooo.po  |   24 
 source/sl/sd/messages.po  |   10 
 source/sl/setup_native/source/mac.po  |4 
 source/sl/sfx2/messages.po|  131 -
 source/sl/svx/messages.po |  757 
 source/sl/sw/messages.po  |  233 +-
 source/sl/xmlsecurity/messages.po |4 
 39 files changed, 1555 insertions(+), 1188 deletions(-)

New commits:
commit cf2e53f45d2727aa4c1b587362eb2e5f1a83f498
Author: Martin Srebotnjak 
AuthorDate: Thu Jun 20 13:02:04 2024 +0200
Commit: Andras Timar 
CommitDate: Thu Jun 20 13:02:04 2024 +0200

Updated Slovenian translation

Change-Id: Ifd238155fe7ef5bd93520acb24c0c4f7ad659313

diff --git a/source/sl/chart2/messages.po b/source/sl/chart2/messages.po
index 3b1d8c2660d..69b930f93a1 100644
--- a/source/sl/chart2/messages.po
+++ b/source/sl/chart2/messages.po
@@ -3,14 +3,14 @@ msgid ""
 msgstr ""
 "Project-Id-Version: LibreOffice 24.8
"
 "Report-Msgid-Bugs-To: 
https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI
"
-"POT-Creation-Date: 2024-05-16 11:54+0200
"
+"POT-Creation-Date: 2024-06-17 10:36+0200
"
 "PO-Revision-Date: 2024-05-30 10:54+0200
"
 "Last-Translator: Martin Srebotnjak 
"
 "Language-Team: sl.libreoffice.org
"
-"Language: sl
"
 "MIME-Version: 1.0
"
 "Content-Type: text/plain; charset=UTF-8
"
 "Content-Transfer-Encoding: 8bit
"
+"Language: sl
"
 "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || 
n%100==4 ? 2 : 3);
"
 "X-Generator: Virtaal 0.7.1
"
 "X-Accelerator-Marker: ~
"
diff --git a/source/sl/cui/messages.po b/source/sl/cui/messages.po
index e9c1a2ac496..d25f3d29476 100644
--- a/source/sl/cui/messages.po
+++ b/source/sl/cui/messages.po
@@ -3,14 +3,14 @@ msgid ""
 msgstr ""
 "Project-Id-Version: LibreOffice 24.8
"
 "Report-Msgid-Bugs-To: 
https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI
"
-"POT-Creation-Date: 2024-05-30 08:33+0200
"
+"POT-Creation-Date: 2024-06-17 10:36+0200
"
 "PO-Revision-Date: 2024-05-31 16:39+0200
"
 "Last-Translator: Martin Srebotnjak 
"
 "Language-Team: sl.libreoffice.org
"
-"Language: sl
"
 "MIME-Version: 1.0
"
 "Content-Type: text/plain; charset=UTF-8
"
 "Content-Transfer-Encoding: 8bit
"
+"Language: sl
"
 "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || 
n%100==4 ? 2 : 3);
"
 "X-Generator: Virtaal 0.7.1
"
 "X-Accelerator-Marker: ~
"
@@ -11248,132 +11248,132 @@ msgctxt "numberingoptionspage|extended_tip|bi

core.git: chart2/source editeng/source framework/inc framework/source include/linguistic include/sfx2 include/svtools sc/inc sc/source sd/source sw/inc sw/source vcl/inc vcl/unx

2024-06-20 Thread Noel Grandin (via logerrit)
 chart2/source/controller/chartapiwrapper/TitleWrapper.hxx   |2 
 editeng/source/editeng/impedit.hxx  |5 
 framework/inc/helper/wakeupthread.hxx   |3 
 framework/source/helper/wakeupthread.cxx|   17 --
 include/linguistic/lngprophelp.hxx  |1 
 include/sfx2/dinfdlg.hxx|1 
 include/svtools/recorditemwindow.hxx|1 
 sc/inc/markarr.hxx  |1 
 sc/source/core/data/markarr.cxx |   76 
 sd/source/ui/dlg/NavigatorChildWindow.cxx   |5 
 sd/source/ui/inc/navigatr.hxx   |1 
 sd/source/ui/inc/sdtreelb.hxx   |5 
 sd/source/ui/inc/smarttag.hxx   |2 
 sw/inc/PostItMgr.hxx|1 
 sw/inc/modcfg.hxx   |4 
 sw/source/core/inc/drawfont.hxx |5 
 sw/source/filter/ww8/ww8scan.hxx|1 
 sw/source/ui/dialog/macassgn.cxx|   28 
 sw/source/uibase/docvw/PostItMgr.cxx|9 -
 sw/source/uibase/inc/macassgn.hxx   |2 
 sw/source/uibase/inc/wrtsh.hxx  |2 
 sw/source/writerfilter/dmapper/DomainMapperTableManager.cxx |8 -
 sw/source/writerfilter/dmapper/DomainMapperTableManager.hxx |1 
 sw/source/writerfilter/dmapper/PropertyMap.hxx  |5 
 sw/source/writerfilter/dmapper/TablePositionHandler.hxx |   12 -
 vcl/inc/graphic/MemoryManaged.hxx   |2 
 vcl/inc/unx/gtk/gtkdata.hxx |4 
 vcl/unx/gtk3/a11y/atkutil.cxx   |   11 -
 28 files changed, 215 deletions(-)

New commits:
commit 4aa2cc878dae3b34b16ccacd9358fda5e6d6a197
Author: Noel Grandin 
AuthorDate: Thu Jun 20 10:46:59 2024 +0200
Commit: Noel Grandin 
CommitDate: Thu Jun 20 12:21:54 2024 +0200

loplugin:unusedmethods

Change-Id: Ia216da9bd7764f2d21aaee761a02eafda88d892e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169257
Reviewed-by: Noel Grandin 
Tested-by: Jenkins

diff --git a/chart2/source/controller/chartapiwrapper/TitleWrapper.hxx 
b/chart2/source/controller/chartapiwrapper/TitleWrapper.hxx
index aecf5f304231..91a48258174d 100644
--- a/chart2/source/controller/chartapiwrapper/TitleWrapper.hxx
+++ b/chart2/source/controller/chartapiwrapper/TitleWrapper.hxx
@@ -95,8 +95,6 @@ private:
 virtual const css::uno::Sequence< css::beans::Property >& 
getPropertySequence() override;
 virtual std::vector< std::unique_ptr > 
createWrappedProperties() override;
 
-css::uno::Reference< css::beans::XPropertySet > 
getFirstCharacterPropertySet();
-
 css::uno::Reference< css::chart2::XTitle > getTitleObject();
 
 std::shared_ptr< Chart2ModelContact >   m_spChart2ModelContact;
diff --git a/editeng/source/editeng/impedit.hxx 
b/editeng/source/editeng/impedit.hxx
index 9f465f4d9d5d..d5f465de5f6d 100644
--- a/editeng/source/editeng/impedit.hxx
+++ b/editeng/source/editeng/impedit.hxx
@@ -1270,11 +1270,6 @@ public:
 
 void setScalingParameters(ScalingParameters const& rScalingParameters);
 
-void resetScalingParameters()
-{
-setScalingParameters(ScalingParameters());
-}
-
 ScalingParameters getScalingParameters()
 {
 return maScalingParameters;
diff --git a/framework/inc/helper/wakeupthread.hxx 
b/framework/inc/helper/wakeupthread.hxx
index b25a933dc8c8..962f4b724fa2 100644
--- a/framework/inc/helper/wakeupthread.hxx
+++ b/framework/inc/helper/wakeupthread.hxx
@@ -39,9 +39,6 @@ class WakeUpThread final
 public:
 WakeUpThread(css::uno::Reference const& updatable);
 void stop();
-
-static void joinThread();
-static void startThread();
 };
 }
 
diff --git a/framework/source/helper/wakeupthread.cxx 
b/framework/source/helper/wakeupthread.cxx
index 63d52a82da76..9a9fc37f7442 100644
--- a/framework/source/helper/wakeupthread.cxx
+++ b/framework/source/helper/wakeupthread.cxx
@@ -88,13 +88,6 @@ public:
 }
 }
 
-static void startThread()
-{
-std::unique_lock g(getMutex());
-if (!updatables.empty() && !wakeupThread)
-wakeupThread = new SharedWakeUpThread();
-}
-
 void stopWithLock(std::unique_lock& g)
 {
 terminate = true;
@@ -142,12 +135,6 @@ public:
 if (updatables.empty())
 disposeThreadWithLock(g);
 }
-
-static void joinThread()
-{
-std::unique_lock g(getMutex());
-disposeThreadWithLock(g);
-}
 };
 
 rtl::Reference SharedWakeUpThread::wakeupThread;
@@ -156,8 +143,6 @@ std::vector> 
SharedWakeUpThread::
 
 namespace framework
 {
-/* static */ void

core.git: Branch 'distro/collabora/co-24.04' - sw/qa sw/source

2024-06-20 Thread Miklos Vajna (via logerrit)
 sw/qa/core/layout/data/shape-left-padding-off-page.docx |binary
 sw/qa/core/layout/fly.cxx   |   30 
 sw/source/core/layout/fly.cxx   |   22 +++
 3 files changed, 51 insertions(+), 1 deletion(-)

New commits:
commit 8e4b0615ac7a66857287de37c4c692de046d7a05
Author: Miklos Vajna 
AuthorDate: Wed Jun 19 10:05:57 2024 +0200
Commit: Mike Kaganski 
CommitDate: Thu Jun 20 11:32:58 2024 +0200

tdf#161635 sw DoNotCaptureDrawObjsOnPage: fix handling of left padding

Open the bugdoc, the shape has an 5cm left padding for its text, but
only 4cm of that is visible in Writer.

Checking the shape, part of that is outside the page frame, so the first
1cm of the left padding is not visible, visually resulting in a 4cm left
padding in Writer, but not in Word.

Fix the problem by extending SwFlyFrame::MakePrtArea(), so in case the
shape is partially outside the page frame, then we make sure to increase
the left padding enough that the nominal (5cm) left padding is inside
the page frame.

With this, the text on the title page of the document is visually
centered also in Writer, even if not using an explicit paragraph
alignment.

(cherry picked from commit 61692b82ae4ff62662509b5979a7aabc7d380678)

Change-Id: I5dcbcf407ed7f12f0bc13820fa39621a76e23fe7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169254
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Mike Kaganski 

diff --git a/sw/qa/core/layout/data/shape-left-padding-off-page.docx 
b/sw/qa/core/layout/data/shape-left-padding-off-page.docx
new file mode 100644
index ..92e143616016
Binary files /dev/null and 
b/sw/qa/core/layout/data/shape-left-padding-off-page.docx differ
diff --git a/sw/qa/core/layout/fly.cxx b/sw/qa/core/layout/fly.cxx
index 81df20af3b35..50426a08d796 100644
--- a/sw/qa/core/layout/fly.cxx
+++ b/sw/qa/core/layout/fly.cxx
@@ -17,6 +17,8 @@
 #include 
 #include 
 #include 
+#include 
+#include 
 
 namespace
 {
@@ -111,6 +113,34 @@ CPPUNIT_TEST_FIXTURE(Test, testFlyRelWithRounding)
 // i.e. 5714.88 was truncated, not rounded.
 CPPUNIT_ASSERT_EQUAL(static_cast(5715), nFlyWidth);
 }
+
+CPPUNIT_TEST_FIXTURE(Test, testShapeLeftPaddingOffPage)
+{
+// Given a document with a shape that is 1cm off the page:
+createSwDoc("shape-left-padding-off-page.docx");
+
+// When laying out that document:
+SwDoc* pDoc = getSwDoc();
+SwRootFrame* pLayout = pDoc->getIDocumentLayoutAccess().GetCurrentLayout();
+
+// Then make sure that the 2.5cm page margin + 2.5cm para margin and the 
5cm shape left padding
+// line up (with 1px tolerance):
+auto pPage = pLayout->GetLower()->DynCastPageFrame();
+auto pBody = static_cast(pPage->GetLower());
+auto pTextFrame = pBody->GetLower()->DynCastTextFrame();
+SwTwips nBodyLeft = pTextFrame->getFrameArea().Left() + 
pTextFrame->getFramePrintArea().Left();
+CPPUNIT_ASSERT(pPage->GetSortedObjs());
+SwSortedObjs& rPageObjs = *pPage->GetSortedObjs();
+CPPUNIT_ASSERT_EQUAL(static_cast(2), rPageObjs.size());
+auto pFly = rPageObjs[1]->DynCastFlyFrame()->DynCastFlyAtContentFrame();
+CPPUNIT_ASSERT(pFly);
+SwTwips nFlyLeft = pFly->getFrameArea().Left() + 
pFly->getFramePrintArea().Left();
+// Without the accompanying fix in place, this test would have failed with:
+// - Expected greater or equal than: 3119
+// - Actual  : 2574
+// i.e. the shape text had ~4cm left padding (visually) instead of 5cm.
+CPPUNIT_ASSERT_GREATEREQUAL(nBodyLeft - MINFLY, nFlyLeft);
+}
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/layout/fly.cxx b/sw/source/core/layout/fly.cxx
index fd95ce192cf7..fda64b849a9b 100644
--- a/sw/source/core/layout/fly.cxx
+++ b/sw/source/core/layout/fly.cxx
@@ -1970,7 +1970,27 @@ void SwFlyFrame::MakePrtArea( const SwBorderAttrs 
&rAttrs )
 
 // consider vertical layout
 SwRectFnSet aRectFnSet(this);
-aRectFnSet.SetXMargins( *this, rAttrs.CalcLeftLine(),
+SwTwips nLeftLine = rAttrs.CalcLeftLine();
+
+// The fly frame may be partially outside the page, check for this 
case.
+SwPageFrame* pPageFrame = FindPageFrame();
+SwFrameFormat* pFormat = GetFormat();
+if (pPageFrame && pFormat)
+{
+const IDocumentSettingAccess& rIDSA = 
pFormat->getIDocumentSettingAccess();
+bool bDoNotCaptureDrawObjsOnPage = 
rIDSA.get(DocumentSettingId::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE);
+bool bLRTB = pFormat->GetFrameDir().GetValue() == 
SvxFrameDirection::Horizontal_LR_TB;
+SwTwips nFlyLeft = getFrameArea().Left();
+SwTwips nPageLeft = pPageFrame->getFrameArea().Left();
+if (bDoNotCaptureDrawObjsOnPage && bLRTB && nFlyLeft < nPageLeft)
+{
+// It is outside: only start the le

core.git: Branch 'distro/collabora/co-24.04' - include/svx sd/inc sd/source svx/source

2024-06-20 Thread Tomaž Vajngerl (via logerrit)
 include/svx/annotation/Annotation.hxx  |2 ++
 sd/inc/Annotation.hxx  |4 +++-
 sd/source/core/annotations/Annotation.cxx  |   21 -
 sd/source/core/sdpage2.cxx |   16 
 sd/source/ui/annotations/annotationmanager.cxx |   22 +-
 svx/source/annotation/Annotation.cxx   |3 +++
 svx/source/svdraw/svdpage.cxx  |   21 -
 7 files changed, 61 insertions(+), 28 deletions(-)

New commits:
commit c3281e071526f7efa9b7646a993476fc3f6ff8db
Author: Tomaž Vajngerl 
AuthorDate: Thu Jun 20 17:10:01 2024 +0900
Commit: Michael Meeks 
CommitDate: Thu Jun 20 11:17:56 2024 +0200

annot: clone annotations in SdrObjects when the page is duplicated

When the page is duplicated we need to clone all SdrObjects and
with that also all the annotations contained in the SdrObjects.
The annotations must also be added to the page, so that we can
find them quickly.

Previously we only cloned the annotations and relied that the
SdrObjects would be automagically be created, but as the SdrObject
are also cloned this creates a mess with duplicated objects with
annotatins for the wrong page or annotation objects with missing
annotation.

Change-Id: I4bf53e4bd387fad9b0a8e4f43edd57c3d0fd34cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169256
Reviewed-by: Szymon Kłos 
Tested-by: Michael Meeks 
Reviewed-by: Michael Meeks 

diff --git a/include/svx/annotation/Annotation.hxx 
b/include/svx/annotation/Annotation.hxx
index 21e6b76261ad..76ccef3af30e 100644
--- a/include/svx/annotation/Annotation.hxx
+++ b/include/svx/annotation/Annotation.hxx
@@ -180,6 +180,8 @@ public:
 void setCreationInfo(CreationInfo const& rCreationInfo) { maCreationInfo = 
rCreationInfo; }
 
 SdrObject* findAnnotationObject();
+
+virtual rtl::Reference clone(SdrPage* pTargetPage) = 0;
 };
 
 /** Vector of annotations */
diff --git a/sd/inc/Annotation.hxx b/sd/inc/Annotation.hxx
index d774ae0c63c2..d9a6929c76f0 100644
--- a/sd/inc/Annotation.hxx
+++ b/sd/inc/Annotation.hxx
@@ -60,7 +60,7 @@ struct SD_DLLPUBLIC CustomAnnotationMarker
 class SD_DLLPUBLIC Annotation final : public sdr::annotation::Annotation
 {
 public:
-explicit Annotation( const 
css::uno::Reference& context, SdPage* pPage );
+explicit Annotation(const 
css::uno::Reference& context, SdrPage* pPage);
 Annotation(const Annotation&) = delete;
 Annotation& operator=(const Annotation&) = delete;
 
@@ -87,6 +87,8 @@ public:
 virtual void SAL_CALL setDateTime(const css::util::DateTime & the_value) 
override;
 
 void createChangeUndo();
+
+rtl::Reference clone(SdrPage* pTargetPage) 
override;
 };
 
 }
diff --git a/sd/source/core/annotations/Annotation.cxx 
b/sd/source/core/annotations/Annotation.cxx
index 2906e641e86d..ed93d35cb2bf 100644
--- a/sd/source/core/annotations/Annotation.cxx
+++ b/sd/source/core/annotations/Annotation.cxx
@@ -78,7 +78,7 @@ rtl::Reference 
createAnnotationAndAddToPage(SdPage*
 return xAnnotation;
 }
 
-Annotation::Annotation(const uno::Reference& context, 
SdPage* pPage)
+Annotation::Annotation(const uno::Reference& context, 
SdrPage* pPage)
 : sdr::annotation::Annotation(context, pPage)
 {
 }
@@ -230,6 +230,25 @@ void Annotation::createChangeUndo()
 }
 }
 
+rtl::Reference Annotation::clone(SdrPage* 
pTargetPage)
+{
+rtl::Reference aNewAnnotation;
+aNewAnnotation = new 
sd::Annotation(comphelper::getProcessComponentContext(), pTargetPage);
+aNewAnnotation->setPosition(getPosition());
+aNewAnnotation->setSize(getSize());
+aNewAnnotation->setAuthor(getAuthor());
+aNewAnnotation->setInitials(getInitials());
+aNewAnnotation->setDateTime(getDateTime());
+aNewAnnotation->setCreationInfo(getCreationInfo());
+
+uno::Reference xSourceRange (getTextRange(), 
uno::UNO_QUERY);
+uno::Reference xRange 
(aNewAnnotation->getTextRange(), uno::UNO_QUERY);
+if (xSourceRange.is() && xRange.is())
+xRange->copyText(xSourceRange);
+
+return aNewAnnotation;
+}
+
 std::unique_ptr 
CreateUndoInsertOrRemoveAnnotation(rtl::Reference& 
xAnnotation, bool bInsert)
 {
 if (xAnnotation)
diff --git a/sd/source/core/sdpage2.cxx b/sd/source/core/sdpage2.cxx
index da415e8e5a8e..efdcdae56e91 100644
--- a/sd/source/core/sdpage2.cxx
+++ b/sd/source/core/sdpage2.cxx
@@ -378,22 +378,6 @@ void SdPage::lateInit(const SdPage& rSrcPage)
 // animations
 rSrcPage.cloneAnimations(*this);
 
-// annotations
-for (auto const& rSourceAnnotation : rSrcPage.maAnnotations)
-{
-rtl::Reference aNewAnnotation = 
createAnnotation();
-aNewAnnotation->setPosition(rSourceAnnotation->getPosition());
-aNewAnnotation->setSize(rSourceAnnotation->getSize());
-aNewAnnotation->setAuthor(rSourceAnnotation->getAuthor());
-aNewAnnotation->setInitials(r

core.git: Branch 'libreoffice-24-2' - sw/qa sw/source

2024-06-20 Thread Caolán McNamara (via logerrit)
 sw/qa/extras/layout/data/crashHyphen.fodt |   31 ++
 sw/qa/extras/layout/layout3.cxx   |6 +
 sw/source/core/text/guess.cxx |1 
 3 files changed, 38 insertions(+)

New commits:
commit c2b2731e7a3fa034f7d0f1b5348d589cabf0f376
Author: Caolán McNamara 
AuthorDate: Fri Jun 7 20:14:15 2024 +0100
Commit: Michael Stahl 
CommitDate: Thu Jun 20 11:17:14 2024 +0200

stale hyphenation data after skipping blanks

what I see is that after skipping the blanks that the m_xHyphWord
remains describing the word at the original m_nBreakStart, but we have
changed that m_nBreakStart and in the example I have the m_nBreakStart
is at the next word, so the contents of m_xHyphWord bear no relationship
to the current break position.

Change-Id: I07c91495f0cd7ef6d78c0f0d5cef70070ebb6ff2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168561
Reviewed-by: Caolán McNamara 
Tested-by: Jenkins
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168643
Reviewed-by: Michael Stahl 

diff --git a/sw/qa/extras/layout/data/crashHyphen.fodt 
b/sw/qa/extras/layout/data/crashHyphen.fodt
new file mode 100644
index ..6cdd2ccc45e6
--- /dev/null
+++ b/sw/qa/extras/layout/data/crashHyphen.fodt
@@ -0,0 +1,31 @@
+
+
+http://openoffice.org/2004/office"; 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
 office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
+ 
+  
+   true
+  
+ 
+ 
+  
+ 
+ 
+  
+   
+   
+  
+ 
+ 
+  
+   
+  
+ 
+ 
+  
+ 
+ 
+  
+   He heard quiet steps behind; 
+  
+ 
+
diff --git a/sw/qa/extras/layout/layout3.cxx b/sw/qa/extras/layout/layout3.cxx
index 8c55a4ad772e..2d7bceb42818 100644
--- a/sw/qa/extras/layout/layout3.cxx
+++ b/sw/qa/extras/layout/layout3.cxx
@@ -2612,6 +2612,12 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf161508)
 assertXPath(pExportDump, "//page[2]/body/tab"_ostr, 1);
 }
 
+CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestCrashHyphenation)
+{
+//just care it doesn't crash/assert
+createSwDoc("crashHyphen.fodt");
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/text/guess.cxx b/sw/source/core/text/guess.cxx
index c3a94187a7ea..c199bbfcfa97 100644
--- a/sw/source/core/text/guess.cxx
+++ b/sw/source/core/text/guess.cxx
@@ -443,6 +443,7 @@ bool SwTextGuess::Guess( const SwTextPortion& rPor, 
SwTextFormatInfo &rInf,
 {
 m_nCutPos = m_nBreakStart = AdjustCutPos(m_nCutPos, m_nBreakPos, rInf);
 nPorLen = m_nBreakPos - rInf.GetIdx();
+m_xHyphWord = nullptr;
 }
 else
 {


core.git: include/sfx2 sw/qa sw/source sw/uiconfig

2024-06-20 Thread Balazs Varga (via logerrit)
 include/sfx2/AccessibilityIssue.hxx  |1 
 sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx |   26 +-
 sw/source/core/access/AccessibilityCheck.cxx |6 +-
 sw/source/uibase/sidebar/A11yCheckIssuesPanel.cxx|   35 ++
 sw/source/uibase/sidebar/A11yCheckIssuesPanel.hxx|   15 +++---
 sw/uiconfig/swriter/ui/a11ycheckissuespanel.ui   |   36 +--
 6 files changed, 83 insertions(+), 36 deletions(-)

New commits:
commit e74a5bea04483dc96ef6d4b34edd8735ec73bcd8
Author: Balazs Varga 
AuthorDate: Tue Jun 18 16:15:06 2024 +0200
Commit: Balazs Varga 
CommitDate: Thu Jun 20 10:59:18 2024 +0200

tdf#159906 - A11Y: Add new direct character formatting group level

for Formatted warnings and keep them not expanded (default) to avoid
to many visible warning message on the sidebar.

Change-Id: Ic251909d793198c3c4ce5e132b763c15ac1c9a9e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169110
Tested-by: Jenkins
Reviewed-by: Balazs Varga 
Reviewed-by: Heiko Tietze 

diff --git a/include/sfx2/AccessibilityIssue.hxx 
b/include/sfx2/AccessibilityIssue.hxx
index 92bef3d7d6a2..d6dd7eb3f4bf 100644
--- a/include/sfx2/AccessibilityIssue.hxx
+++ b/include/sfx2/AccessibilityIssue.hxx
@@ -33,6 +33,7 @@ enum class AccessibilityIssueID
 NO_ALT_SHAPE,
 TABLE_MERGE_SPLIT,
 TEXT_FORMATTING,
+DIRECT_FORMATTING,
 TABLE_FORMATTING,
 HYPERLINK_IS_TEXT,
 HYPERLINK_SHORT,
diff --git a/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx 
b/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx
index 8c3845332310..d3355bcfdd43 100644
--- a/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx
+++ b/sw/qa/core/accessibilitycheck/AccessibilityCheckTest.cxx
@@ -69,7 +69,7 @@ CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, 
testCheckParagraphIssues)
 aCheck.check();
 auto& aIssues = aCheck.getIssueCollection().getIssues();
 CPPUNIT_ASSERT_EQUAL(size_t(1), aIssues.size());
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[0]->m_eIssueID);
+CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DIRECT_FORMATTING, 
aIssues[0]->m_eIssueID);
 }
 
 CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, testCheckBackgroundImage)
@@ -143,7 +143,7 @@ CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, 
testCheckHighlightedText)
 aCheck.check();
 auto& aIssues = aCheck.getIssueCollection().getIssues();
 CPPUNIT_ASSERT_EQUAL(size_t(1), aIssues.size());
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[0]->m_eIssueID);
+CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DIRECT_FORMATTING, 
aIssues[0]->m_eIssueID);
 }
 
 CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, testNumberingCheck)
@@ -315,8 +315,8 @@ CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, 
testOnlineNodeSplitAppend)
  
pDoc->getOnlineAccessibilityCheck()->getNumberOfAccessibilityIssues());
 auto aIssues = scanAccessibilityIssuesOnNodes(pDoc);
 CPPUNIT_ASSERT_EQUAL(size_t(2), aIssues.size());
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[0]->m_eIssueID);
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[1]->m_eIssueID);
+CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DIRECT_FORMATTING, 
aIssues[0]->m_eIssueID);
+CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DIRECT_FORMATTING, 
aIssues[1]->m_eIssueID);
 checkIssuePosition(aIssues[0], __LINE__, 0, 32, SwNodeOffset(9));
 checkIssuePosition(aIssues[1], __LINE__, 33, 136, SwNodeOffset(9));
 
@@ -334,8 +334,8 @@ CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, 
testOnlineNodeSplitAppend)
 
 aIssues = scanAccessibilityIssuesOnNodes(pDoc);
 CPPUNIT_ASSERT_EQUAL(size_t(2), aIssues.size());
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[0]->m_eIssueID);
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[1]->m_eIssueID);
+CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DIRECT_FORMATTING, 
aIssues[0]->m_eIssueID);
+CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::DIRECT_FORMATTING, 
aIssues[1]->m_eIssueID);
 checkIssuePosition(aIssues[0], __LINE__, 0, 32, SwNodeOffset(9));
 checkIssuePosition(aIssues[1], __LINE__, 0, 103, SwNodeOffset(10));
 
@@ -354,9 +354,9 @@ CPPUNIT_TEST_FIXTURE(AccessibilityCheckTest, 
testOnlineNodeSplitAppend)
  
pDoc->getOnlineAccessibilityCheck()->getNumberOfAccessibilityIssues());
 aIssues = scanAccessibilityIssuesOnNodes(pDoc);
 CPPUNIT_ASSERT_EQUAL(size_t(3), aIssues.size());
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[0]->m_eIssueID);
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[1]->m_eIssueID);
-CPPUNIT_ASSERT_EQUAL(sfx::AccessibilityIssueID::TEXT_FORMATTING, 
aIssues[2]->m_eIssueID);
+CPPUNIT_ASSERT_E

core.git: sfx2/source

2024-06-20 Thread Szymon Kłos (via logerrit)
 sfx2/source/view/lokhelper.cxx |4 
 1 file changed, 4 insertions(+)

New commits:
commit 494161a9c8a9acca4d200d06c44ef6db794c0bea
Author: Szymon Kłos 
AuthorDate: Tue Apr 16 17:59:25 2024 +0200
Commit: Szymon Kłos 
CommitDate: Thu Jun 20 10:57:18 2024 +0200

cool#9309 lok: sync language in comphelper::LibreOfficeKit on view creation

If new view is created using createViewWithOptions API call
we pass language of that view. We do a setup of that language
in SfxLokHelper::setViewLanguage but it was only set inside
ViewShell.

Unfortunately just after we create the view we call setView which
later checks if comphelper::LibreOfficeKit::getLanguageTag()
has matching value with ViewShell field.
It was showing warning in the logs:
warn:lok:31748:31654:sfx2/source/view/lokhelper.cxx:206: LANGUAGE mismatch 
at setView! ... old (wrong) lang:de new lang:fr

Let's check if the view we try to modify is the current one and
in that case synchronize value we can get using global
comphelper::LibreOfficeKit function.

Signed-off-by: Szymon Kłos 
Change-Id: Icddfda003522dda661066c4d1c43ca1dec9e5c55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169107
(cherry picked from commit 800d8580ec8d99f5c610727a9d53ab143019c014)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169144
Tested-by: Jenkins

diff --git a/sfx2/source/view/lokhelper.cxx b/sfx2/source/view/lokhelper.cxx
index 549f43906908..131561504e1b 100644
--- a/sfx2/source/view/lokhelper.cxx
+++ b/sfx2/source/view/lokhelper.cxx
@@ -338,6 +338,10 @@ void SfxLokHelper::setViewLanguage(int nId, const 
OUString& rBcp47LanguageTag)
 if (pViewShell->GetViewShellId() == ViewShellId(nId))
 {
 pViewShell->SetLOKLanguageTag(rBcp47LanguageTag);
+// sync also global getter if we are the current view
+bool bIsCurrShell = (pViewShell == SfxViewShell::Current());
+if (bIsCurrShell)
+
comphelper::LibreOfficeKit::setLanguageTag(LanguageTag(rBcp47LanguageTag));
 return;
 }
 }


core.git: editeng/CppunitTest_editeng_editeng.mk editeng/Module_editeng.mk editeng/qa editeng/source

2024-06-20 Thread Miklos Vajna (via logerrit)
 editeng/CppunitTest_editeng_editeng.mk |   69 ++
 editeng/Module_editeng.mk  |1 
 editeng/qa/editeng/editeng.cxx |  101 +
 editeng/source/editeng/impedit.hxx |2 
 editeng/source/editeng/impedit2.cxx|2 
 editeng/source/editeng/impedit4.cxx|   54 -
 6 files changed, 225 insertions(+), 4 deletions(-)

New commits:
commit afb4ea67463d9f0200dc6216cfd932aec0984c82
Author: Miklos Vajna 
AuthorDate: Thu Jun 20 09:53:00 2024 +0200
Commit: Miklos Vajna 
CommitDate: Thu Jun 20 10:56:44 2024 +0200

tdf#161652 editeng, RTF copy: only write used paragraph styles

Copy a single world from the Impress bugdoc to Writer, number of
paragraph styles increase from 126 to 221, while only +0 or +1 are
expected.

It seems the problem is that the editeng doc of the shape refers to all
styles of the masterpage and we write the style table before the
content, so we export all styles to be on the safe side.

Fix the problem by iterating the paragraphs of the selection in the
"copy" (not "export") case, assuming that typically the selection
doesn't refer to all available styles in the document, and the number of
paragraphs in a shape is not a large amount.

An alternative would be to limit the style import on the RTF reading
side, but not producing those not needed styles in the first place looks
superior.

Change-Id: I43e4c542e530ff6422357a28399718e89fdbabe9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169251
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 

diff --git a/editeng/CppunitTest_editeng_editeng.mk 
b/editeng/CppunitTest_editeng_editeng.mk
new file mode 100644
index ..38cbc9543db6
--- /dev/null
+++ b/editeng/CppunitTest_editeng_editeng.mk
@@ -0,0 +1,69 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+#*
+
+$(eval $(call gb_CppunitTest_CppunitTest,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,editeng_editeng, \
+editeng/qa/editeng/editeng \
+))
+
+$(eval $(call gb_CppunitTest_use_library_objects,editeng_editeng,editeng))
+
+$(eval $(call gb_CppunitTest_use_libraries,editeng_editeng, \
+basegfx \
+comphelper \
+cppu \
+cppuhelper \
+docmodel \
+i18nlangtag \
+i18nutil \
+lng \
+sal \
+salhelper \
+sax \
+sot \
+sfx \
+svl \
+svt \
+test \
+tk \
+tl \
+ucbhelper \
+unotest \
+utl \
+vcl \
+xo \
+))
+
+$(eval $(call gb_CppunitTest_use_externals,editeng_editeng,\
+boost_headers \
+icuuc \
+libxml2 \
+))
+
+$(eval $(call gb_CppunitTest_set_include,editeng_editeng,\
+-I$(SRCDIR)/editeng/inc \
+-I$(SRCDIR)/editeng/source/editeng \
+$$(INCLUDE) \
+))
+
+$(eval $(call gb_CppunitTest_use_sdk_api,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_use_ure,editeng_editeng))
+$(eval $(call gb_CppunitTest_use_vcl,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_use_rdb,editeng_editeng,services))
+
+$(eval $(call gb_CppunitTest_use_configuration,editeng_editeng))
+
+$(eval $(call gb_CppunitTest_use_more_fonts,editeng_editeng))
+
+# vim: set noet sw=4 ts=4:
diff --git a/editeng/Module_editeng.mk b/editeng/Module_editeng.mk
index 6fedbcb6043e..fca6e8426c4e 100644
--- a/editeng/Module_editeng.mk
+++ b/editeng/Module_editeng.mk
@@ -31,6 +31,7 @@ $(eval $(call gb_Module_add_l10n_targets,editeng,\
 
 $(eval $(call gb_Module_add_check_targets,editeng,\
$(if $(and $(filter $(COM),MSC),$(MERGELIBS)),, \
+   CppunitTest_editeng_editeng \
CppunitTest_editeng_core) \
CppunitTest_editeng_borderline \
CppunitTest_editeng_lookuptree \
diff --git a/editeng/qa/editeng/editeng.cxx b/editeng/qa/editeng/editeng.cxx
new file mode 100644
index ..5c1f23e7e389
--- /dev/null
+++ b/editeng/qa/editeng/editeng.cxx
@@ -0,0 +1,101 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include 
+
+#include 
+
+#include 
+#include 
+#include 
+#include 
+
+#include 
+#include 
+
+using namespace com::sun::star;
+
+namespace
+{
+/// Covers editeng/source/editeng/ fixes.
+class Test : public test::BootstrapFixture
+{
+public

core.git: Branch 'libreoffice-24-8' - sw/source

2024-06-20 Thread Michael Stahl (via logerrit)
 sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx |4 +---
 sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx |4 ++--
 2 files changed, 3 insertions(+), 5 deletions(-)

New commits:
commit e6dfa85f02209fe93365192886f87ce6d4765f39
Author: Michael Stahl 
AuthorDate: Wed Jun 19 11:54:13 2024 +0200
Commit: Michael Stahl 
CommitDate: Thu Jun 20 10:50:38 2024 +0200

tdf#161631 writerfilter: move another member to SubstreamContext

The problem is that the bugdoc contains a table in the footer, which
causes m_bDummyParaAddedForTableInSection to be set, which erroneously
causes the last paragraph in the body to be removed.

(regression from commit 86ad08f9d25110e91e92a0badf6de75e785b3644)

Change-Id: I148785c54c37dc25f7d239b5898aec9fb5455f40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169191
Reviewed-by: Michael Stahl 
Tested-by: Jenkins
(cherry picked from commit ef77086255821d61838a7e26fee9baadaca0b9e0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169137

diff --git a/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx 
b/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx
index c50cf4212567..47ef07610ca7 100644
--- a/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx
+++ b/sw/source/writerfilter/dmapper/DomainMapper_Impl.cxx
@@ -373,7 +373,6 @@ DomainMapper_Impl::DomainMapper_Impl(
 m_bIsParaMarkerChange( false ),
 m_bIsParaMarkerMove( false ),
 m_bRedlineImageInPreviousRun( false ),
-m_bDummyParaAddedForTableInSection( false ),
 m_bIsLastSectionGroup( false ),
 m_bUsingEnhancedFields( false ),
 m_nAnnotationId( -1 ),
@@ -938,10 +937,9 @@ void DomainMapper_Impl::SetIsFirstParagraphInShape(bool 
bIsFirst)
 
 void DomainMapper_Impl::SetIsDummyParaAddedForTableInSection( bool bIsAdded )
 {
-m_bDummyParaAddedForTableInSection = bIsAdded;
+m_StreamStateStack.top().bDummyParaAddedForTableInSection = bIsAdded;
 }
 
-
 void DomainMapper_Impl::SetIsTextFrameInserted( bool bIsInserted )
 {
 m_StreamStateStack.top().bTextFrameInserted = bIsInserted;
diff --git a/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx 
b/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx
index c76d1f6dd5ba..1697ee9e849d 100644
--- a/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx
+++ b/sw/source/writerfilter/dmapper/DomainMapper_Impl.hxx
@@ -266,6 +266,7 @@ struct SubstreamContext
 bool bTextFrameInserted = false;
 bool bIsFirstRun = false;
 bool bIsOutsideAParagraph = true;
+bool bDummyParaAddedForTableInSection = false; // tdf#161631
 std::map deferredCharacterProperties;
 };
 
@@ -658,7 +659,6 @@ private:
 // text ZWSPs to keep the change tracking of the image in Writer.)
 boolm_bRedlineImageInPreviousRun;
 
-boolm_bDummyParaAddedForTableInSection;
 boolm_bIsLastSectionGroup;
 boolm_bUsingEnhancedFields;
 
@@ -770,7 +770,7 @@ public:
 void SetIsFirstParagraphInShape(bool bIsFirst);
 bool GetIsFirstParagraphInShape() const { return 
m_StreamStateStack.top().bIsFirstParaInShape; }
 void SetIsDummyParaAddedForTableInSection( bool bIsAdded );
-bool GetIsDummyParaAddedForTableInSection() const { return 
m_bDummyParaAddedForTableInSection;}
+bool GetIsDummyParaAddedForTableInSection() const { return 
m_StreamStateStack.top().bDummyParaAddedForTableInSection; }
 
 /// Track if a textframe has been inserted into this section
 void SetIsTextFrameInserted( bool bIsInserted );


core.git: Branch 'libreoffice-24-2' - writerfilter/source

2024-06-20 Thread Michael Stahl (via logerrit)
 writerfilter/source/dmapper/DomainMapper_Impl.cxx |4 +---
 writerfilter/source/dmapper/DomainMapper_Impl.hxx |4 ++--
 2 files changed, 3 insertions(+), 5 deletions(-)

New commits:
commit cd67e6bbc398d248553b4a163cf76f1655615b32
Author: Michael Stahl 
AuthorDate: Wed Jun 19 11:54:13 2024 +0200
Commit: Michael Stahl 
CommitDate: Thu Jun 20 10:46:18 2024 +0200

tdf#161631 writerfilter: move another member to SubstreamContext

The problem is that the bugdoc contains a table in the footer, which
causes m_bDummyParaAddedForTableInSection to be set, which erroneously
causes the last paragraph in the body to be removed.

(regression from commit 86ad08f9d25110e91e92a0badf6de75e785b3644)

Change-Id: I148785c54c37dc25f7d239b5898aec9fb5455f40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169191
Reviewed-by: Michael Stahl 
Tested-by: Jenkins
(cherry picked from commit ef77086255821d61838a7e26fee9baadaca0b9e0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169209

diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx 
b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 3276e430972e..869e90a4c287 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -370,7 +370,6 @@ DomainMapper_Impl::DomainMapper_Impl(
 m_bIsParaMarkerChange( false ),
 m_bIsParaMarkerMove( false ),
 m_bRedlineImageInPreviousRun( false ),
-m_bDummyParaAddedForTableInSection( false ),
 m_bTextFrameInserted(false),
 m_bIsLastSectionGroup( false ),
 m_bUsingEnhancedFields( false ),
@@ -962,10 +961,9 @@ void DomainMapper_Impl::SetIsFirstParagraphInShape(bool 
bIsFirst)
 
 void DomainMapper_Impl::SetIsDummyParaAddedForTableInSection( bool bIsAdded )
 {
-m_bDummyParaAddedForTableInSection = bIsAdded;
+m_StreamStateStack.top().bDummyParaAddedForTableInSection = bIsAdded;
 }
 
-
 void DomainMapper_Impl::SetIsTextFrameInserted( bool bIsInserted )
 {
 m_bTextFrameInserted  = bIsInserted;
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.hxx 
b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
index 8916193bcab9..8dc28cfc31ca 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.hxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
@@ -214,6 +214,7 @@ struct SubstreamContext
 bool bParaWithInlineObject = false;
 /// This is a continuation of already finished paragraph - e.g., first in 
an index section
 bool bRemoveThisParagraph = false;
+bool bDummyParaAddedForTableInSection = false; // tdf#161631
 };
 
 /// Information about a paragraph to be finished after a field end.
@@ -630,7 +631,6 @@ private:
 boolm_bRedlineImageInPreviousRun;
 
 boolm_bIsFirstParaInShape = false;
-boolm_bDummyParaAddedForTableInSection;
 boolm_bTextFrameInserted;
 boolm_bIsLastSectionGroup;
 boolm_bUsingEnhancedFields;
@@ -755,7 +755,7 @@ public:
 void SetIsFirstParagraphInShape(bool bIsFirst);
 bool GetIsFirstParagraphInShape() const { return m_bIsFirstParaInShape; }
 void SetIsDummyParaAddedForTableInSection( bool bIsAdded );
-bool GetIsDummyParaAddedForTableInSection() const { return 
m_bDummyParaAddedForTableInSection;}
+bool GetIsDummyParaAddedForTableInSection() const { return 
m_StreamStateStack.top().bDummyParaAddedForTableInSection; }
 
 /// Track if a textframe has been inserted into this section
 void SetIsTextFrameInserted( bool bIsInserted );


core.git: sw/source

2024-06-20 Thread Samuel Mehrbrodt (via logerrit)
 sw/source/uibase/shells/txtnum.cxx |2 ++
 1 file changed, 2 insertions(+)

New commits:
commit 41d26f14fffdb701f6e7ef459a11577725cd0d27
Author: Samuel Mehrbrodt 
AuthorDate: Thu Jun 20 08:25:46 2024 +0200
Commit: Samuel Mehrbrodt 
CommitDate: Thu Jun 20 09:42:31 2024 +0200

tdf#161653 Fix selecting from numbering dropdown

Change-Id: I5ba2133395619ec96b32940a6ceddf0c32615a03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169252
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt 

diff --git a/sw/source/uibase/shells/txtnum.cxx 
b/sw/source/uibase/shells/txtnum.cxx
index 86aa9a6b224e..0941c702ff55 100644
--- a/sw/source/uibase/shells/txtnum.cxx
+++ b/sw/source/uibase/shells/txtnum.cxx
@@ -261,6 +261,8 @@ void SwTextShell::ExecSetNumber(SfxRequest const &rReq)
 case FN_SVX_SET_OUTLINE:
 {
 const SfxUInt16Item* pIndexItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_INDEX );
+if (!pIndexItem) // tdf#161653
+pIndexItem = rReq.GetArg(nSlot);
 const SfxStringItem* pCharItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_CHAR );
 const SfxStringItem* pFontItem = rReq.GetArgs()->GetItem( 
SID_ATTR_BULLET_FONT );
 


core.git: Branch 'libreoffice-24-8' - 3 commits - include/sfx2 sfx2/source vcl/source

2024-06-20 Thread Michael Weghorn (via logerrit)
 include/sfx2/sidebar/TabBar.hxx   |5 ++---
 sfx2/source/sidebar/SidebarController.cxx |5 +
 sfx2/source/sidebar/TabBar.cxx|   19 ++-
 vcl/source/window/dockwin.cxx |2 ++
 4 files changed, 19 insertions(+), 12 deletions(-)

New commits:
commit f556e99ce3d6a73ac13559ba3eeefe2d59bc6231
Author: Michael Weghorn 
AuthorDate: Wed Jun 19 13:08:34 2024 +0200
Commit: Michael Weghorn 
CommitDate: Thu Jun 20 09:27:31 2024 +0200

tdf#159835 sfx2: Keep sidebar menu up to date

No longer update the menu for the menu button
in the sidebar in the handler that gets called
when the button gets clicked, but continually
keep the menu up to date instead.

This ensures that the menu is up-to-date when
it gets shown. Updating the menu in the button handler
is too late since

commit f075fa01cb4f74185f13eb0a8d7f84cf1f47af49
Author: Michael Weghorn 
Date:   Tue Aug 22 10:26:32 2023 +0200

tdf#141101 tdf#101886 a11y: Restore previous focus on col/line 
popup close

, as the handler is now no more called before the menu
gets shown.

Do the update in method `TabBar::UpdateMenus` instead
and call that one whenever items change or the
sidebar gets docked/undocked, as menu entries
are shown for the items and for (un)docking.

This makes the menu show all entries again
when opened the first time after starting Writer,
which was no longer the case after the
above-mentioned commmit.

Change-Id: I9a7e341e88d2de5f34e8f85ebada3ff2ebf6b47d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169196
Tested-by: Jenkins
Reviewed-by: Michael Weghorn 
(cherry picked from commit daed96f0818b1baae5de8b74b866009d7d89f853)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169142

diff --git a/include/sfx2/sidebar/TabBar.hxx b/include/sfx2/sidebar/TabBar.hxx
index 7591aeff7bf6..8778c9bd2e21 100644
--- a/include/sfx2/sidebar/TabBar.hxx
+++ b/include/sfx2/sidebar/TabBar.hxx
@@ -73,6 +73,8 @@ public:
 /// Enables/Disables the menu button. Used by LoKit.
 void EnableMenuButton(const bool bEnable);
 
+void UpdateMenus();
+
 virtual FactoryFunction GetUITestFactory() const override;
 private:
 css::uno::Reference mxFrame;
@@ -111,8 +113,6 @@ private:
 css::uno::Reference GetItemImage(const 
DeckDescriptor& rDeskDescriptor) const;
 void UpdateButtonIcons();
 
-DECL_LINK(OnToolboxClicked, weld::Toggleable&, void);
-
 SidebarController& mrParentSidebarController;
 };
 
diff --git a/sfx2/source/sidebar/SidebarController.cxx 
b/sfx2/source/sidebar/SidebarController.cxx
index 2ebfebe6ab81..bdca4a89055c 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -1075,6 +1075,11 @@ IMPL_LINK(SidebarController, WindowEventHandler, 
VclWindowEvent&, rEvent, void)
 maContextChangeUpdate.RequestCall();
 break;
 
+case VclEventId::WindowToggleFloating:
+// make sure the appropriate "Dock" or "Undock" menu entry is 
shown
+mpTabBar->UpdateMenus();
+break;
+
 case VclEventId::ObjectDying:
 dispose();
 break;
diff --git a/sfx2/source/sidebar/TabBar.cxx b/sfx2/source/sidebar/TabBar.cxx
index af086c2610b5..76669adc5798 100644
--- a/sfx2/source/sidebar/TabBar.cxx
+++ b/sfx2/source/sidebar/TabBar.cxx
@@ -73,6 +73,8 @@ TabBar::TabBar(vcl::Window* pParentWindow,
 mxSubMenu = mxAuxBuilder->weld_menu(u"submenu"_ustr);
 aPopupMenuSignalConnectFunction(*mxMainMenu, *mxSubMenu);
 
+UpdateMenus();
+
 gDefaultWidth = m_xContainer->get_preferred_size().Width();
 
 // we have this widget just so we can measure best width for static 
TabBar::GetDefaultWidth
@@ -80,8 +82,6 @@ TabBar::TabBar(vcl::Window* pParentWindow,
 
 SetBackground(Wallpaper(Theme::GetColor(Theme::Color_TabBarBackground)));
 
-mxMenuButton->connect_toggled(LINK(this, TabBar, OnToolboxClicked));
-
 #if OSL_DEBUG_LEVEL >= 2
 SetText(OUString("TabBar"));
 #endif
@@ -147,6 +147,7 @@ void TabBar::SetDecks(const 
ResourceManager::DeckContextDescriptorContainer& rDe
 }
 
 UpdateButtonIcons();
+UpdateMenus();
 }
 
 void TabBar::UpdateButtonIcons()
@@ -164,18 +165,21 @@ void TabBar::HighlightDeck(std::u16string_view rsDeckId)
 {
 for (auto const& item : maItems)
 item->mxButton->set_item_active(u"toggle"_ustr, item->msDeckId == 
rsDeckId);
+UpdateMenus();
 }
 
 void TabBar::RemoveDeckHighlight()
 {
 for (auto const& item : maItems)
 item->mxButton->set_item_active(u"toggle"_ustr, false);
+UpdateMenus();
 }
 
 void TabBar::DataChanged(const DataChangedEvent& rDataChangedEvent)
 {
 SetBackground(Theme::GetColor(Theme::Color_TabBarBackground));
 UpdateButtonIcons();
+UpdateMenus();
 

core.git: sw/qa sw/source

2024-06-20 Thread Samuel Mehrbrodt (via logerrit)
 sw/qa/extras/rtfexport/data/text-change-tracking.rtf |   17 ++
 sw/qa/extras/rtfexport/rtfexport8.cxx|   23 +++
 sw/source/filter/ww8/rtfattributeoutput.cxx  |   19 ++-
 sw/source/filter/ww8/rtfattributeoutput.hxx  |3 --
 sw/source/filter/ww8/rtfexport.cxx   |   14 ++-
 sw/source/filter/ww8/rtfexport.hxx   |   10 
 6 files changed, 76 insertions(+), 10 deletions(-)

New commits:
commit 63b46c2136d95960bab30a15e27bc94e6eefe6e6
Author: Samuel Mehrbrodt 
AuthorDate: Mon Jun 17 11:51:41 2024 +0200
Commit: Samuel Mehrbrodt 
CommitDate: Thu Jun 20 09:22:30 2024 +0200

rtf: Don't export changes author/date when in privacy mode

Change-Id: Id8f8dea4563df3cfb0ea9009783886bdabf91b11
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168996
Reviewed-by: Samuel Mehrbrodt 
Tested-by: Jenkins

diff --git a/sw/qa/extras/rtfexport/data/text-change-tracking.rtf 
b/sw/qa/extras/rtfexport/data/text-change-tracking.rtf
new file mode 100644
index ..c6f72ceeade5
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/text-change-tracking.rtf
@@ -0,0 +1,17 @@
+{ tf1nsi\deff3deflang1025
+{onttbl{0romanprq2charset0 Liberat;}{1romanprq2charset2 Symbol;}{2
swissprq2charset0 Arial;}{3romanprq2charset0 Liberation Serif{\*alt 
Times New Roman};}{4swissprq2charset0 Liberation Sans{\*alt Arial};}{5
nilprq2charset0 Noto Sans CJK SC;}{6nilprq2charset0 Noto Sans 
Devanagari;}{7swissprq0charset0 Noto Sans Devanagari;}}
+{+{\stylesheet{\s0\snext0 tlchf6fs24lang1081 
\ltrch\lang1031\langfe2052\hichf3\loch\widctlpar\hyphpar0spalpha\ltrpar+{\*+{\s16\sbasedon0\snext17
 tlchf6fs28 \ltrch\hichf4\loch\sb240\sa120\keepn4s28\dbchf5 Heading;}
+{\s17\sbasedon0\snext17\loch\sl276\slmult1\sb0\sa140 Body Text;}
+{\s18\sbasedon17\snext18 tlchf7 \ltrch List;}
+{\s19\sbasedon0\snext19 tlchf7fs24i \ltrch\loch\sb120\sa120
olines24\i caption;}
+{\s20\sbasedon0\snext20 tlchf7 \ltrch\loch
oline Index;}
+}{\* evtbl {Unknown;}{Max Mustermann;}}
+{\*\generator LibreOfficeDev/25.2.0.0.alpha0$Linux_X86_64 
LibreOffice_project/c558004906bfaef6d1983e09473e4c236de730d3}{\info{+\hyphauto1
iewscale130 evisionsormshade
obrkwrptbl\paperh16838\paperw11906\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sftnnar\saftnnrlc\sectunlocked1\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134
tnbjtnstart1tnrstconttnnaretftnrstcontftnstart1ftnnrlc
+{\*tnsep+Test}{ evised evauth1 evdttm667323072 \loch
+Deleted}
+\par }
\ No newline at end of file
diff --git a/sw/qa/extras/rtfexport/rtfexport8.cxx 
b/sw/qa/extras/rtfexport/rtfexport8.cxx
index 1ed6eee0ded4..3f013605d625 100644
--- a/sw/qa/extras/rtfexport/rtfexport8.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport8.cxx
@@ -482,6 +482,29 @@ CPPUNIT_TEST_FIXTURE(Test, testNotesAuthorDate)
 CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), aRtfContent.indexOf("\atndate", 0));
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testChangesAuthor)
+{
+createSwDoc("text-change-tracking.rtf");
+
+auto pBatch(comphelper::ConfigurationChanges::create());
+// Remove all personal info
+
officecfg::Office::Common::Security::Scripting::RemovePersonalInfoOnSaving::set(true,
 pBatch);
+pBatch->commit();
+saveAndReload(mpFilter);
+
+SvStream* pStream = maTempFile.GetStream(StreamMode::READ);
+CPPUNIT_ASSERT(pStream);
+OString aRtfContent(read_uInt8s_ToOString(*pStream, pStream->TellEnd()));
+
+// Make sure user name was anonymized
+CPPUNIT_ASSERT_EQUAL(sal_Int32(-1),
+ aRtfContent.indexOf("\revtbl {Unknown;}{Max 
Mustermann;}", 0));
+CPPUNIT_ASSERT(aRtfContent.indexOf("\revtbl {Author1;}{Author2;}", 0) >= 
0);
+
+// Make sure no date is set
+CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), aRtfContent.indexOf("\revdttmdel", 0));
+}
+
 CPPUNIT_TEST_FIXTURE(Test, testTdf158982)
 {
 auto verify = [this]() {
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx 
b/sw/source/filter/ww8/rtfattributeoutput.cxx
index 22a76de4a109..07063fb4d5c5 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -626,13 +626,19 @@ void RtfAttributeOutput::Redline(const SwRedlineData* 
pRedline)
 if (!pRedline)
 return;
 
+bool bRemoveCommentAuthorDates
+= 
SvtSecurityOptions::IsOptionSet(SvtSecurityOptions::EOption::DocWarnRemovePersonalInfo)
+  && !SvtSecurityOptions::IsOptionSet(
+ SvtSecurityOptions::EOption::DocWarnKeepNoteAuthorDateInfo);
+
 if (pRedline->GetType() == RedlineType::Insert)
 {
 m_aRun->append(OOO_STRING_SVTOOLS_RTF_REVISED);
 m_aRun->append(OOO_STRING_SVTOOLS_RTF_REVAUTH);
 m_aRun->append(static_cast(
 
m_rExport.GetRedline(SW_MOD()->GetRedlineAuthor(pRedline->GetAuthor();
-m_aRun->append(OOO_STRING_SVTOOLS_R

core.git: sw/CppunitTest_sw_rtfexport8.mk sw/qa sw/source

2024-06-20 Thread Samuel Mehrbrodt (via logerrit)
 sw/CppunitTest_sw_rtfexport8.mk   |4 
 sw/qa/extras/rtfexport/data/text-with-comment.rtf |  232 ++
 sw/qa/extras/rtfexport/rtfexport8.cxx |   27 ++
 sw/source/filter/ww8/rtfattributeoutput.cxx   |   27 +-
 sw/source/filter/ww8/rtfattributeoutput.hxx   |4 
 5 files changed, 288 insertions(+), 6 deletions(-)

New commits:
commit 16c7a6f77e59c475bbb580ef1fd85428907a00f2
Author: Samuel Mehrbrodt 
AuthorDate: Mon Jun 17 08:46:14 2024 +0200
Commit: Samuel Mehrbrodt 
CommitDate: Thu Jun 20 09:22:11 2024 +0200

rtf: Don't export notes author/date when in privacy mode

Change-Id: I6dd318fcae9470bb8fc911a8b4d7ff7c7d8f9636
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168984
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt 

diff --git a/sw/CppunitTest_sw_rtfexport8.mk b/sw/CppunitTest_sw_rtfexport8.mk
index 94e535c0fbe2..2fabe631acda 100644
--- a/sw/CppunitTest_sw_rtfexport8.mk
+++ b/sw/CppunitTest_sw_rtfexport8.mk
@@ -15,4 +15,8 @@ ifneq ($(filter MORE_FONTS,$(BUILD_TYPE)),)
 $(eval $(call gb_CppunitTest_set_non_application_font_use,sw_rtfexport8,abort))
 endif
 
+$(eval $(call gb_CppunitTest_use_custom_headers,sw_rtfexport8,\
+officecfg/registry \
+))
+
 # vim: set noet sw=4 ts=4:
diff --git a/sw/qa/extras/rtfexport/data/text-with-comment.rtf 
b/sw/qa/extras/rtfexport/data/text-with-comment.rtf
new file mode 100644
index ..f05c3f3ca28f
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/text-with-comment.rtf
@@ -0,0 +1,232 @@
+{ 
tf1deflang1025nsinsicpg1252\uc1deff43\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi31507\deflang1031\deflangfe1031
  hemelang1031hemelangfe0 hemelangcs0{onttbl{0bidi romancharset0
prq2{\*\panose 02020603050405020304}Times New Roman;}{1bidi swisscharset0
prq2{\*\panose 020b0604020202020204}Arial;}
+{24bidi romancharset1prq2{\*\panose 0400}Mangal{\*alt 
Courier New};}{34bidi nilcharset0prq2{\*\panose 
}Cambria Math;}{40bidi romancharset0prq2 Liberation 
Serif{\*alt Times New Roman};}
+{41bidi swisscharset0prq2 Liberation Sans{\*alt Arial};}{42bidi swiss
charset128prq2 Noto Sans CJK SC;}{43bidi swisscharset0prq2 Noto Sans;}{
1525bidi swisscharset128prq2 @Noto Sans CJK SC;}
+{lomajor31500bidi romancharset0prq2{\*\panose 02020603050405020304}Times 
New Roman;}{dbmajor31501bidi romancharset0prq2{\*\panose 
02020603050405020304}Times New Roman;}{himajor31502bidi swisscharset0prq2 
Calibri Light;}
+{bimajor31503bidi romancharset0prq2{\*\panose 02020603050405020304}Times 
New Roman;}{lominor31504bidi romancharset0prq2{\*\panose 
02020603050405020304}Times New Roman;}
+{dbminor31505bidi romancharset0prq2{\*\panose 02020603050405020304}Times 
New Roman;}{himinor31506bidi swisscharset0prq2 Calibri{\*alt Arial};}
+{biminor31507bidi romancharset0prq2{\*\panose 02020603050405020304}Times 
New Roman;}{1542bidi romancharset238prq2 Times New Roman CE;}{1543bidi 
romancharset204prq2 Times New Roman Cyr;}
+{1545bidi romancharset161prq2 Times New Roman Greek;}{1546bidi roman
charset162prq2 Times New Roman Tur;}{1547bidi romancharset177prq2 Times 
New Roman (Hebrew);}
+{1548bidi romancharset178prq2 Times New Roman (Arabic);}{1549bidi 
romancharset186prq2 Times New Roman Baltic;}{1550bidi romancharset163
prq2 Times New Roman (Vietnamese);}{1552bidi swisscharset238prq2 Arial CE;}
+{1553bidi swisscharset204prq2 Arial Cyr;}{1555bidi swisscharset161
prq2 Arial Greek;}{1556bidi swisscharset162prq2 Arial Tur;}{1557bidi 
swisscharset177prq2 Arial (Hebrew);}
+{1558bidi swisscharset178prq2 Arial (Arabic);}{1559bidi swiss
charset186prq2 Arial Baltic;}{1560bidi swisscharset163prq2 Arial 
(Vietnamese);}{1885bidi nilcharset161prq2 Cambria Math Greek;}
+{1942bidi romancharset238prq2 Liberation Serif CE{\*alt Times New 
Roman};}{1943bidi romancharset204prq2 Liberation Serif Cyr{\*alt Times 
New Roman};}
+{1945bidi romancharset161prq2 Liberation Serif Greek{\*alt Times New 
Roman};}{1946bidi romancharset162prq2 Liberation Serif Tur{\*alt Times 
New Roman};}
+{1947bidi romancharset177prq2 Liberation Serif (Hebrew){\*alt Times New 
Roman};}{1949bidi romancharset186prq2 Liberation Serif Baltic{\*alt Times 
New Roman};}
+{1950bidi romancharset163prq2 Liberation Serif (Vietnamese){\*alt Times 
New Roman};}{1952bidi swisscharset238prq2 Liberation Sans CE{\*alt 
Arial};}{1953bidi swisscharset204prq2 Liberation Sans Cyr{\*alt Arial};}
+{1955bidi swisscharset161prq2 Liberation Sans Greek{\*alt Arial};}{1956
bidi swisscharset162prq2 Liberation Sans Tur{\*alt Arial};}{1957bidi 
swisscharset177prq2 Liberation Sans (Hebrew){\*alt Arial};}
+{1959bidi swisscharset186prq2 Liberation Sans Baltic{\*alt Arial};}{
1

core.git: vcl/source

2024-06-20 Thread Heiko Tietze (via logerrit)
 vcl/source/outdev/textline.cxx |8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit baf95a7e8e7312891aed73adb26de74e5bc9ad62
Author: Heiko Tietze 
AuthorDate: Wed Jun 19 12:14:05 2024 +0200
Commit: Heiko Tietze 
CommitDate: Thu Jun 20 09:11:46 2024 +0200

Resolves tdf#153223 - Suppress variable line height when skia is off

Change-Id: I9194c25bf2fc104574bd27e6b8683b63111e6ad8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169192
Tested-by: Jenkins
Reviewed-by: Heiko Tietze 

diff --git a/vcl/source/outdev/textline.cxx b/vcl/source/outdev/textline.cxx
index 3155cb1a1681..fa9f481c201c 100644
--- a/vcl/source/outdev/textline.cxx
+++ b/vcl/source/outdev/textline.cxx
@@ -28,6 +28,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 #include 
@@ -1036,7 +1037,12 @@ void OutputDevice::DrawWaveLine(const Point& rStartPos, 
const Point& rEndPos, to
 
 // #109280# make sure the waveline does not exceed the descent to avoid 
paint problems
 LogicalFontInstance* pFontInstance = mpFontInstance.get();
-if (nWaveHeight > pFontInstance->mxFontMetric->GetWavelineUnderlineSize())
+if (nWaveHeight > pFontInstance->mxFontMetric->GetWavelineUnderlineSize()
+// tdf#153223 polyline with lineheight >0 not drawn when skia is off
+#ifdef MACOSX
+|| !SkiaHelper::isVCLSkiaEnabled()
+#endif
+   )
 {
 nWaveHeight = pFontInstance->mxFontMetric->GetWavelineUnderlineSize();
 // tdf#124848 hairline


core.git: cui/source include/svx sc/source sc/uiconfig solenv/sanitizers svx/source

2024-06-20 Thread Kira Tubo (via logerrit)
 cui/source/tabpages/border.cxx  |4 ++--
 include/svx/strings.hrc |   22 +++---
 sc/source/ui/sidebar/CellBorderStyleControl.cxx |   20 
 sc/uiconfig/scalc/ui/floatingborderstyle.ui |   16 
 solenv/sanitizers/ui/modules/scalc.suppr|   16 
 svx/source/tbxctrls/tbcontrl.cxx|8 
 6 files changed, 57 insertions(+), 29 deletions(-)

New commits:
commit 14231e45ce5c8f2615fc5a448479960dfe1ed22b
Author: Kira Tubo 
AuthorDate: Sun Jun 16 23:22:11 2024 -0700
Commit: Heiko Tietze 
CommitDate: Thu Jun 20 09:11:16 2024 +0200

tdf#146468: Match border tooltips in toolbar/sidebar

Update the border tooltips within Calc's toolbar and sidebar so that they
have matching descriptions.

Also update tooltips in Writer toolbar so that descriptions match across
both apps.

Change-Id: Ib7c682ed5035fe61d991209c4f2cf7f0a1a08a5e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169052
Tested-by: Jenkins
Reviewed-by: Heiko Tietze 
Reviewed-by: Stéphane Guillou 

diff --git a/cui/source/tabpages/border.cxx b/cui/source/tabpages/border.cxx
index fe07cc5d8221..330f8f77aa17 100644
--- a/cui/source/tabpages/border.cxx
+++ b/cui/source/tabpages/border.cxx
@@ -1377,8 +1377,8 @@ TranslateId SvxBorderTabPage::GetPresetStringId( 
sal_uInt16 nValueSetIdx ) const
 {
 RID_SVXSTR_TABLE_PRESET_NONE,
 RID_SVXSTR_PARA_PRESET_ALL,
-RID_SVXSTR_PARA_PRESET_LEFTRIGHT,
-RID_SVXSTR_PARA_PRESET_TOPBOTTOM,
+RID_SVXSTR_PARA_PRESET_ONLYLEFTRIGHT,
+RID_SVXSTR_PARA_PRESET_ONLYTOPBOTTOM,
 RID_SVXSTR_PARA_PRESET_ONLYLEFT,
 RID_SVXSTR_PARA_PRESET_DIAGONAL,
 
diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc
index 2b46e77b6b66..cf3c12e12a4e 100644
--- a/include/svx/strings.hrc
+++ b/include/svx/strings.hrc
@@ -1811,7 +1811,8 @@
 
 // strings related to borders
 #define RID_SVXSTR_TABLE_PRESET_NONE
NC_("RID_SVXSTR_TABLE_PRESET_NONE", "No Borders")
-#define RID_SVXSTR_TABLE_PRESET_ONLYOUTER   
NC_("RID_SVXSTR_TABLE_PRESET_ONLYOUTER", "Outer Border Only")
+#define RID_SVXSTR_TABLE_PRESET_OUTER   
NC_("RID_SVXSTR_TABLE_PRESET_ONLYOUTER", "Outer Border") // Sidebar/toolbar
+#define RID_SVXSTR_TABLE_PRESET_ONLYOUTER   
NC_("RID_SVXSTR_TABLE_PRESET_ONLYOUTER", "Outer Border Only") // Format dialog
 #define RID_SVXSTR_TABLE_PRESET_OUTERHORI   
NC_("RID_SVXSTR_TABLE_PRESET_OUTERHORI", "Outer Border and Horizontal Lines")
 #define RID_SVXSTR_TABLE_PRESET_OUTERALL
NC_("RID_SVXSTR_TABLE_PRESET_OUTERALL", "Outer Border and All Inner Lines")
 #define RID_SVXSTR_TABLE_PRESET_OUTERVERI   
NC_("RID_SVXSTR_TABLE_PRESET_OUTERVERI", "Outer Border and Vertical Lines")
@@ -1821,15 +1822,22 @@
 #define RID_SVXSTR_PARA_PRESET_DIAGONALUP   
NC_("RID_SVXSTR_PARA_PRESET_DIAGONALUP", "Diagonal Up Border")
 #define RID_SVXSTR_PARA_PRESET_CRISSCROSS   
NC_("RID_SVXSTR_PARA_PRESET_CRISSCROSS", "Criss-Cross Border")
 #define RID_SVXSTR_PARA_PRESET_ALL  
NC_("RID_SVXSTR_PARA_PRESET_ALL", "All Four Borders")
-#define RID_SVXSTR_PARA_PRESET_LEFTRIGHT
NC_("RID_SVXSTR_PARA_PRESET_LEFTRIGHT", "Left and Right Borders Only")
-#define RID_SVXSTR_PARA_PRESET_TOPBOTTOM
NC_("RID_SVXSTR_PARA_PRESET_TOPBOTTOM", "Top and Bottom Borders Only")
+#define RID_SVXSTR_PARA_PRESET_LEFTRIGHT
NC_("RID_SVXSTR_PARA_PRESET_LEFTRIGHT", "Left and Right Borders")
+#define RID_SVXSTR_PARA_PRESET_ONLYLEFTRIGHT
NC_("RID_SVXSTR_PARA_PRESET_ONLYLEFTRIGHT", "Left and Right Borders Only")
+#define RID_SVXSTR_PARA_PRESET_TOPBOTTOM
NC_("RID_SVXSTR_PARA_PRESET_TOPBOTTOM", "Top and Bottom Borders")
+#define RID_SVXSTR_PARA_PRESET_ONLYTOPBOTTOM
NC_("RID_SVXSTR_PARA_PRESET_ONLYTOPBOTTOM", "Top and Bottom Borders Only")
 #define RID_SVXSTR_PARA_PRESET_TOPBOTTOMHORI
NC_("RID_SVXSTR_PARA_PRESET_TOPBOTTOMHORI", "Top and Bottom Borders, and All 
Horizontal Lines")
-#define RID_SVXSTR_PARA_PRESET_ONLYLEFT 
NC_("RID_SVXSTR_PARA_PRESET_ONLYLEFT", "Left Border Only")
-#define RID_SVXSTR_PARA_PRESET_ONLYRIGHT
NC_("RID_SVXSTR_PARA_PRESET_ONLYRIGHT", "Right Border Only")
-#define RID_SVXSTR_PARA_PRESET_ONLYTOP  
NC_("RID_SVXSTR_PARA_PRESET_ONLYTOP", "Top Border Only")
-#define RID_SVXSTR_PARA_PRESET_ONLYTBOTTOM  
NC_("RID_SVXSTR_PARA_PRESET_ONLYTBOTTOM", "Bottom Border Only")
+#define RID_SVXSTR_PARA_PRESET_ONLYLEFT 
NC_("RID_SVXSTR_PARA_PRESET_ONLYLEFT", "Left Border")
+#define RID_SVXSTR_PARA_PRESET_ONLYRIGHT
NC_("RID_SVXSTR_PARA_PRESET_ONLYRIGHT", "Right Border")
+#define RID_SVXSTR_PARA_PRESET_ONLYTOP  
NC_("RID_SVXSTR_PARA_PRESET_ONLYTOP", "Top Border")
+#define RID_SVXSTR_PARA_PRESET_ONLYBOTTOM   

core.git: Branch 'distro/collabora/co-24.04' - sfx2/source

2024-06-20 Thread Szymon Kłos (via logerrit)
 sfx2/source/view/lokhelper.cxx |4 
 1 file changed, 4 insertions(+)

New commits:
commit 800d8580ec8d99f5c610727a9d53ab143019c014
Author: Szymon Kłos 
AuthorDate: Tue Apr 16 17:59:25 2024 +0200
Commit: Miklos Vajna 
CommitDate: Thu Jun 20 09:09:49 2024 +0200

cool#9309 lok: sync language in comphelper::LibreOfficeKit on view creation

If new view is created using createViewWithOptions API call
we pass language of that view. We do a setup of that language
in SfxLokHelper::setViewLanguage but it was only set inside
ViewShell.

Unfortunately just after we create the view we call setView which
later checks if comphelper::LibreOfficeKit::getLanguageTag()
has matching value with ViewShell field.
It was showing warning in the logs:
warn:lok:31748:31654:sfx2/source/view/lokhelper.cxx:206: LANGUAGE mismatch 
at setView! ... old (wrong) lang:de new lang:fr

Let's check if the view we try to modify is the current one and
in that case synchronize value we can get using global
comphelper::LibreOfficeKit function.

Signed-off-by: Szymon Kłos 
Change-Id: Icddfda003522dda661066c4d1c43ca1dec9e5c55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169107
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Miklos Vajna 

diff --git a/sfx2/source/view/lokhelper.cxx b/sfx2/source/view/lokhelper.cxx
index 99f39fbf4e8b..66f8be5f2800 100644
--- a/sfx2/source/view/lokhelper.cxx
+++ b/sfx2/source/view/lokhelper.cxx
@@ -336,6 +336,10 @@ void SfxLokHelper::setViewLanguage(int nId, const 
OUString& rBcp47LanguageTag)
 if (pViewShell->GetViewShellId() == ViewShellId(nId))
 {
 pViewShell->SetLOKLanguageTag(rBcp47LanguageTag);
+// sync also global getter if we are the current view
+bool bIsCurrShell = (pViewShell == SfxViewShell::Current());
+if (bIsCurrShell)
+
comphelper::LibreOfficeKit::setLanguageTag(LanguageTag(rBcp47LanguageTag));
 return;
 }
 }