core.git: sd/source

2024-03-04 Thread Caolán McNamara (via logerrit)
 sd/source/ui/animations/CustomAnimationList.cxx |8 
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit c398fead74ee63c51d54fdb06f04438b2c3233e0
Author: Caolán McNamara 
AuthorDate: Sun Mar 3 21:00:23 2024 +
Commit: Caolán McNamara 
CommitDate: Mon Mar 4 09:37:21 2024 +0100

Resolves: tdf#159854 Trigger text is black on dark grey in Animation sidebar

in dark mode

Change-Id: I2cbf9b7d14a501c309a02dd3080511f527f9e1d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164315
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/sd/source/ui/animations/CustomAnimationList.cxx 
b/sd/source/ui/animations/CustomAnimationList.cxx
index 39b3d488d2ad..bb08f33c4411 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -310,12 +310,10 @@ void 
CustomAnimationListEntryItem::PaintTrigger(vcl::RenderContext& rRenderConte
 
 ::tools::Rectangle aOutRect(rRect);
 
-// fill the background
-Color 
aColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogColor());
-
 rRenderContext.Push();
-rRenderContext.SetFillColor(aColor);
+
rRenderContext.SetFillColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogColor());
 rRenderContext.SetLineColor();
+// fill the background with the dialog bg color
 rRenderContext.DrawRect(aOutRect);
 
 // Erase the four corner pixels to make the rectangle appear rounded.
@@ -335,6 +333,8 @@ void 
CustomAnimationListEntryItem::PaintTrigger(vcl::RenderContext& rRenderConte
 aOutRect.AdjustTop( nVertBorder );
 aOutRect.AdjustBottom( -nVertBorder );
 
+// Draw the text with the dialog text color
+
rRenderContext.SetTextColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogTextColor());
 rRenderContext.DrawText(aOutRect, 
rRenderContext.GetEllipsisString(msDescription, aOutRect.GetWidth()));
 rRenderContext.Pop();
 }


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

2024-03-04 Thread Xisco Fauli (via logerrit)
 svgio/inc/svgstyleattributes.hxx  |   12 
 svgio/inc/svgtoken.hxx|1 
 svgio/qa/cppunit/SvgImportTest.cxx|   17 +++
 svgio/qa/cppunit/data/tdf159968.svg   |   37 +
 svgio/source/svgreader/svgstyleattributes.cxx |   38 +-
 svgio/source/svgreader/svgtoken.cxx   |1 
 6 files changed, 105 insertions(+), 1 deletion(-)

New commits:
commit 6eb331934f27993db83a2175d22bdd554a775ad8
Author: Xisco Fauli 
AuthorDate: Fri Mar 1 16:42:27 2024 +0100
Commit: Caolán McNamara 
CommitDate: Mon Mar 4 09:38:39 2024 +0100

tdf#159968: Support overflow:visible in marker element

Change-Id: I4ea648cf94a4bb321a78843a9898769a69c5630d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164224
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
(cherry picked from commit eaf9befee8073916f6b22dd600e54073504154b7)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164198
Reviewed-by: Caolán McNamara 

diff --git a/svgio/inc/svgstyleattributes.hxx b/svgio/inc/svgstyleattributes.hxx
index 4516773e83a6..bf921f8b1bb0 100644
--- a/svgio/inc/svgstyleattributes.hxx
+++ b/svgio/inc/svgstyleattributes.hxx
@@ -170,6 +170,13 @@ namespace svgio::svgreader
 Central
 };
 
+enum class Overflow
+{
+notset,
+hidden,
+visible
+};
+
 enum class Visibility
 {
 notset,
@@ -207,6 +214,7 @@ namespace svgio::svgreader
 TextAnchor  maTextAnchor;
 SvgPaintmaColor;
 SvgNumber   maOpacity;
+OverflowmaOverflow;
 Visibility  maVisibility;
 OUString   maTitle;
 OUString   maDesc;
@@ -410,6 +418,10 @@ namespace svgio::svgreader
 SvgNumber getOpacity() const;
 void setOpacity(const SvgNumber& rOpacity) { maOpacity = rOpacity; 
}
 
+/// Overflow
+Overflow getOverflow() const;
+void setOverflow(const Overflow aOverflow) { maOverflow = 
aOverflow; }
+
 /// Visibility
 Visibility getVisibility() const;
 void setVisibility(const Visibility aVisibility) { maVisibility = 
aVisibility; }
diff --git a/svgio/inc/svgtoken.hxx b/svgio/inc/svgtoken.hxx
index 3927a27d1db5..26a5d8f5f423 100644
--- a/svgio/inc/svgtoken.hxx
+++ b/svgio/inc/svgtoken.hxx
@@ -112,6 +112,7 @@ namespace svgio::svgreader
 Visibility,
 Title,
 Desc,
+Overflow,
 
 // AspectRatio and params
 PreserveAspectRatio,
diff --git a/svgio/qa/cppunit/SvgImportTest.cxx 
b/svgio/qa/cppunit/SvgImportTest.cxx
index 0ba32d8cb9f3..326e8f38ffb6 100644
--- a/svgio/qa/cppunit/SvgImportTest.cxx
+++ b/svgio/qa/cppunit/SvgImportTest.cxx
@@ -1950,6 +1950,23 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf156271)
 assertXPath(pDocument, 
"/primitive2D/transform/mask/textsimpleportion[4]"_ostr, "dx1"_ostr, "23");
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testTdf159968)
+{
+Primitive2DSequence aSequence = 
parseSvg(u"/svgio/qa/cppunit/data/tdf159968.svg");
+CPPUNIT_ASSERT_EQUAL(1, static_cast(aSequence.getLength()));
+
+drawinglayer::Primitive2dXmlDump dumper;
+xmlDocUniquePtr pDocument = 
dumper.dumpAndParse(Primitive2DContainer(aSequence));
+
+CPPUNIT_ASSERT (pDocument);
+
+// Check no mask is applied to the marker
+assertXPath(pDocument,
+
"/primitive2D/transform/transform/transform/transform/polypolygoncolor"_ostr, 
"color"_ostr, "#00");
+assertXPath(pDocument,
+
"/primitive2D/transform/transform/transform/transform/polypolygoncolor/polypolygon/polygon/point"_ostr,
 5);
+}
+
 CPPUNIT_TEST_FIXTURE(Test, testTdf149880)
 {
 Primitive2DSequence aSequence = 
parseSvg(u"/svgio/qa/cppunit/data/tdf149880.svg");
diff --git a/svgio/qa/cppunit/data/tdf159968.svg 
b/svgio/qa/cppunit/data/tdf159968.svg
new file mode 100644
index ..8c13f0864901
--- /dev/null
+++ b/svgio/qa/cppunit/data/tdf159968.svg
@@ -0,0 +1,37 @@
+
+
+http://www.w3.org/2000/svg;
+   xmlns:svg="http://www.w3.org/2000/svg;>
+  
+
+  
+
+  
+  
+
+  
+
diff --git a/svgio/source/svgreader/svgstyleattributes.cxx 
b/svgio/source/svgreader/svgstyleattributes.cxx
index 731df59aeebf..19070989bb55 100644
--- a/svgio/source/svgreader/svgstyleattributes.cxx
+++ b/svgio/source/svgreader/svgstyleattributes.cxx
@@ -850,7 +850,8 @@ namespace svgio::svgreader
 const basegfx::B2DRange aTargetRange(0.0, 0.0, 
fTargetWidth, fTargetHeight);
 const SvgAspectRatio& rRatio = 
rMarker.getSvgAspectRatio();
 
-if(rRatio.isSet())
+
+if(rRatio.isSet() && Overflow::visible != 

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

2024-03-04 Thread Miklos Vajna (via logerrit)
 sw/qa/extras/rtfexport/data/listWithLgl.rtf |   23 +
 sw/qa/extras/rtfexport/rtfexport3.cxx   |   26 
 sw/source/filter/ww8/rtfattributeoutput.cxx |7 +-
 writerfilter/source/rtftok/rtfcontrolwords.cxx  |2 -
 writerfilter/source/rtftok/rtfdispatchvalue.cxx |3 ++
 5 files changed, 59 insertions(+), 2 deletions(-)

New commits:
commit ebfd17e47c1bdfd25090fe73495e4e729ac19564
Author: Miklos Vajna 
AuthorDate: Wed Feb 28 08:34:02 2024 +0100
Commit: Caolán McNamara 
CommitDate: Mon Mar 4 09:40:00 2024 +0100

Related: tdf#150408 RTF filter: handle legal numbering

The bugdoc's 2nd para started with 'Sect I.01', while Word rendered this
as 'Sect 1.01'.

The reason for this difference is that there is an "is legal" boolean
property on the numbering that we ignored from RTF during import/export.

Fix the problem by extending RTFDocumentImpl::dispatchTableSprmValue()
for the numbering table import + RtfAttributeOutput::NumberingLevel()
for the export.

The import default for this value was also wrong, given that the default
is to enable it when the control word is present.

(cherry picked from commit e8487bedb20a429565b4a0e4bd2d6806cc603b7f)

Conflicts:
sw/qa/extras/rtfexport/rtfexport3.cxx

Change-Id: I4dcd23768000ba29d4df314b475b412bb371545e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164327
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Caolán McNamara 

diff --git a/sw/qa/extras/rtfexport/data/listWithLgl.rtf 
b/sw/qa/extras/rtfexport/data/listWithLgl.rtf
new file mode 100644
index ..4355049eb3dc
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/listWithLgl.rtf
@@ -0,0 +1,23 @@
+{ tf1
+{\*\listtable
+{\list\listtemplateid197063698
+{\listlevel\levelnfc1\levelnfcn1\leveljc0\leveljcn0\levelfollow2\levelstartat1\levelspace0\levelindent0
+{\leveltext\'04CH \'00;}
+{\levelnumbers\'04;}
+ tlchcs1 f0 \ltrchcs0 \s15i0\li0\lin0 }
+{\listlevel\levelnfc22\levelnfcn22\leveljc0\leveljcn0\levelfollow0\levelstartat1\levellegal\levelspace0\levelindent0
+{\leveltext\'08Sect \'00.\'01;}
+{\levelnumbers
+\'06\'08;}
+ tlchcs1 f0 \ltrchcs0 \s16i720\li0\jclisttab   x2160\lin0 }
+\listid1297755732}
+}
+{\*\listoverridetable
+{\listoverride\listid1297755732\listoverridecount0\ls1}
+}
+\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440
+\pard\plain\ls1\par
+\pard\plaini720   x2160\ls1\ilvl1 Foo\par
+\pard\plain\ls1\par
+\pard\plaini720   x2160\ls1\ilvl1 Bar\par
+}
diff --git a/sw/qa/extras/rtfexport/rtfexport3.cxx 
b/sw/qa/extras/rtfexport/rtfexport3.cxx
index fd25e7e5758d..d7ab8fc1995e 100644
--- a/sw/qa/extras/rtfexport/rtfexport3.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport3.cxx
@@ -716,6 +716,32 @@ DECLARE_RTFEXPORT_TEST(testTdf158409, "tdf158409.rtf")
 CPPUNIT_ASSERT_EQUAL(8.0, getProperty(xRun, "CharHeight"));
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testLegalNumbering)
+{
+auto verify = [this]() {
+// Second level's numbering should use Arabic numbers for first level 
reference
+auto xPara = getParagraph(1);
+CPPUNIT_ASSERT_EQUAL(OUString("CH I"), getProperty(xPara, 
"ListLabelString"));
+xPara = getParagraph(2);
+// Without the accompanying fix in place, this test would have failed 
with:
+// - Expected: Sect 1.01
+// - Actual  : Sect I.01
+// i.e. \levellegal was ignored on import/export.
+CPPUNIT_ASSERT_EQUAL(OUString("Sect 1.01"),
+ getProperty(xPara, "ListLabelString"));
+xPara = getParagraph(3);
+CPPUNIT_ASSERT_EQUAL(OUString("CH II"), getProperty(xPara, 
"ListLabelString"));
+xPara = getParagraph(4);
+CPPUNIT_ASSERT_EQUAL(OUString("Sect 2.01"),
+ getProperty(xPara, "ListLabelString"));
+};
+
+createSwDoc("listWithLgl.rtf");
+verify();
+saveAndReload(mpFilter);
+verify();
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx 
b/sw/source/filter/ww8/rtfattributeoutput.cxx
index de7140f091bc..26203291d6e5 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -1625,7 +1625,7 @@ void RtfAttributeOutput::NumberingLevel(sal_uInt8 nLevel, 
sal_uInt16 nStart,
 const wwFont* pFont, const SfxItemSet* 
pOutSet,
 sal_Int16 nIndentAt, sal_Int16 
nFirstLineIndex,
 sal_Int16 /*nListTabPos*/, const 
OUString& rNumberingString,
-const SvxBrushItem* pBrush, bool 
/*isLegal*/)
+const SvxBrushItem* pBrush, bool 
isLegal)
 {
 m_rExport.Strm().WriteOString(SAL_NEWLINE_STRING);
 if 

core.git: vcl/qa vcl/source

2024-03-04 Thread Noel Grandin (via logerrit)
 vcl/qa/cppunit/pdfexport/data/tdf159817.fodt |  607 +++
 vcl/qa/cppunit/pdfexport/pdfexport2.cxx  |   56 ++
 vcl/source/control/button.cxx|6 
 vcl/source/control/combobox.cxx  |9 
 vcl/source/window/tabpage.cxx|5 
 5 files changed, 675 insertions(+), 8 deletions(-)

New commits:
commit b03f1dfb15a67641bc516a1c6b5632857451a18d
Author: Noel Grandin 
AuthorDate: Sun Mar 3 17:11:39 2024 +0200
Commit: Noel Grandin 
CommitDate: Mon Mar 4 09:27:07 2024 +0100

tdf#159817 tdf#159802 Form controls coordinates wrong when export to pdf

This reverts the following commits:
d408fe5cd45c9594feecec727ab2f73c66e361d0 "unnecessary LogicToPixel in 
CheckBox::Draw"
7441aaa4c5b2215e369c62e22af098184e8ce807 "unnecessary LogicToPixel in 
RadioButton::Draw"
a2dacae0c8acfad8a5e5a16c766ee740ec202c5e "unnecessary LogicToPixel in 
ComboBox::Draw"
f73e8c895e24fda10931ecf344a1a0dd8bcdf92c "unnecessary LogicToPixel in 
TabPage::Draw"

I am fairly sure this code that I am restoring is dodgy,
and I am just papering over some other bug somewhere, but
I can't seem to see where that is.

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

diff --git a/vcl/qa/cppunit/pdfexport/data/tdf159817.fodt 
b/vcl/qa/cppunit/pdfexport/data/tdf159817.fodt
new file mode 100644
index ..6aa986bdc6ad
--- /dev/null
+++ b/vcl/qa/cppunit/pdfexport/data/tdf159817.fodt
@@ -0,0 +1,607 @@
+
+
+http://www.w3.org/TR/css3-text/; 
xmlns:grddl="http://www.w3.org/2003/g/data-view#; 
xmlns:xhtml="http://www.w3.org/1999/xhtml; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema; 
xmlns:xforms="http://www.w3.org/2002/xforms; 
xmlns:dom="http://www.w3.org/2001/xml-events; 
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" 
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 
xmlns:math="http://www.w3.org/1998/Math/MathML; 
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" 
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
 xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" 
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" 
xmlns:officeooo="http://openoffice.org/2009/office; 
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" 
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:formx="u
 rn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" 
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 
xmlns:rpt="http://openoffice.org/2005/report; 
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" 
xmlns:tableooo="http://openoffice.org/2009/table; 
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" 
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:dc="http://purl.org/dc/elements/1.1/; 
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
 xmlns:oooc="http://openoffice.org/2004/calc; 
xmlns:xlink="http://www.w3.org/1999/xlink; 
xmlns:drawooo="http://openoffice.org/2010/draw; 
xmlns:ooow="http://openoffice.org/2004/writer; 
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:ooo="http:/
 /openoffice.org/2004/office" 
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
+ LibreOfficeDev/24.8.0.0.alpha0$MacOSX_AARCH64 
LibreOffice_project/d8978a8c4ffabd6b36a691fd3e2df685638082342003-10-02T15:57:292024-03-03T15:16:09.338790904880P124DT12H36M25S2024-02-21T10:01:49.80100Fichiers
 PDF
+ 
+  
+   0
+   0
+   20717
+   10631
+   false
+   false
+   
+
+ view2
+ 11534
+ 5101
+ 0
+ 0
+ 20715
+ 10629
+ 0
+ 1
+ false
+ 140
+ false
+ false
+ false
+ true
+ false
+ false
+
+   
+  
+  
+   0
+   true
+   false
+   false
+   false
+   true
+   false
+   true
+   false
+   
+   true
+   false
+   false
+   false
+   false
+   true
+   false
+   false
+   0
+   false
+   false
+   false
+   false
+   false
+   true
+   false
+   false
+   false
+   false
+   false
+   true
+   false
+   449756
+   true
+   true
+   true
+   false
+   false
+   false
+   false
+   false
+   false
+   false
+   true
+   true
+   false
+   false
+   true
+   false
+   20255833
+   false
+   false
+   false
+   false
+   false
+   false
+   true
+   false
+   false
+   false
+   false
+   true
+   false
+   
+   true
+   false
+   false
+   false
+   true
+   false
+   false
+   true
+   false

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

2024-03-04 Thread Caolán McNamara (via logerrit)
 sw/source/core/edit/edsect.cxx |8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

New commits:
commit c586333a1824b23b5cbde9416f5858ced0acd7a7
Author: Caolán McNamara 
AuthorDate: Sun Mar 3 13:58:31 2024 +
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 09:46:53 2024 +0100

cid#1592908 Dereference null return value

and

cid#1592910 Dereference null return value

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

diff --git a/sw/source/core/edit/edsect.cxx b/sw/source/core/edit/edsect.cxx
index 04ed95fa42cb..daaa7296e81e 100644
--- a/sw/source/core/edit/edsect.cxx
+++ b/sw/source/core/edit/edsect.cxx
@@ -333,9 +333,10 @@ static const SwNode* lcl_SpecialInsertNode(const 
SwPosition* pCurrentPos)
 pInnermostNode = pTableNode;
 }
 }
-bool bIsProtected = pInnermostNode->IsProtect();
 if(pInnermostNode != nullptr)
 {
+bool bIsProtected = pInnermostNode->IsProtect();
+
 //special case - ToxSection
 // - in this case the inner section could be tox header
 //   section but the new node should be before the content section
@@ -346,7 +347,10 @@ static const SwNode* lcl_SpecialInsertNode(const 
SwPosition* pCurrentPos)
  SectionType::ToxContent == pSection->GetType()))
 {
 if (SectionType::ToxHeader == pSection->GetType())
-pInnermostNode = 
pSection->GetParent()->GetFormat()->GetSectionNode();
+{
+if (const SwSection* pSectionParent = pSection->GetParent())
+pInnermostNode = 
pSectionParent->GetFormat()->GetSectionNode();
+}
 bIsProtected = static_cast(pInnermostNode)->IsInProtectSect();
 }
 


core.git: vcl/README.GDIMetaFile.md

2024-03-04 Thread Andrea Gelmini (via logerrit)
 vcl/README.GDIMetaFile.md |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 0c3c894ddc7bd728bc9ecb6cf470be168041acba
Author: Andrea Gelmini 
AuthorDate: Mon Mar 4 00:57:16 2024 +0100
Commit: Taichi Haradaguchi <20001...@ymail.ne.jp>
CommitDate: Mon Mar 4 10:37:13 2024 +0100

Fix typo

Change-Id: Id70b30aa0b9c204a8f74a7977a03822691d4cb45
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164321
Tested-by: Jenkins
Reviewed-by: Taichi Haradaguchi <20001...@ymail.ne.jp>

diff --git a/vcl/README.GDIMetaFile.md b/vcl/README.GDIMetaFile.md
index 386a91e2adff..170ebd3f1502 100644
--- a/vcl/README.GDIMetaFile.md
+++ b/vcl/README.GDIMetaFile.md
@@ -31,7 +31,7 @@ store the file, use `Write()`.
 ### CONSTRUCTORS AND DESTRUCTORS
 
 - `GDIMetaFile`
-- `GDIMetaFile( cosnt GDIMetaFile& rMtf )` - copy constructor
+- `GDIMetaFile( const GDIMetaFile& rMtf )` - copy constructor
 - `~GDIMetaFile`
 
 ### OPERATORS


core.git: configure.ac

2024-03-04 Thread Andrea Gelmini (via logerrit)
 configure.ac |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 3b044878a411e50775e2fbdb5f2715b6f62ec038
Author: Andrea Gelmini 
AuthorDate: Tue Feb 27 15:53:08 2024 +0100
Commit: Taichi Haradaguchi <20001...@ymail.ne.jp>
CommitDate: Mon Mar 4 10:38:14 2024 +0100

Fix typo

Change-Id: I27c2ecec6355fd81f06c66c016050f1b168179b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164044
Tested-by: Jenkins
Reviewed-by: Taichi Haradaguchi <20001...@ymail.ne.jp>

diff --git a/configure.ac b/configure.ac
index b218120773d1..6d56df8625f1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1512,7 +1512,7 @@ libo_FUZZ_ARG_ENABLE(pdfimport,
 
 libo_FUZZ_ARG_ENABLE(pdfium,
 AS_HELP_STRING([--disable-pdfium],
-[Disable building PDFium. Results in unsecure PDF signature 
verification.])
+[Disable building PDFium. Results in insecure PDF signature 
verification.])
 )
 
 libo_FUZZ_ARG_ENABLE(skia,


core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - helpcompiler/source

2024-03-04 Thread Michael Stahl (via logerrit)
 helpcompiler/source/HelpCompiler.cxx |8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 233077b2fc9ba0924de42c94da2e01b323ee09f4
Author: Michael Stahl 
AuthorDate: Tue Feb 27 11:01:29 2024 +0100
Commit: Michael Stahl 
CommitDate: Mon Mar 4 11:06:01 2024 +0100

helpcompiler: suppress deprecation warning

Commit 77cb90532d14d5035990d078977fce7b407c4fad removed these 2 lines
but i don't want to check if the "I can find no difference in our output
help dir with these removed" is true also in this older branch so
suppress the warning instead.

Change-Id: I35865e3accd018462ef4d65c8c11fb914f53ac38

diff --git a/helpcompiler/source/HelpCompiler.cxx 
b/helpcompiler/source/HelpCompiler.cxx
index cdfb0fbc37cf..9cd0425c2e05 100644
--- a/helpcompiler/source/HelpCompiler.cxx
+++ b/helpcompiler/source/HelpCompiler.cxx
@@ -137,9 +137,15 @@ xmlDocPtr HelpCompiler::getSourceDocument(const fs::path 
)
 if (!cur)
 {
 static std::string fsroot('\'' + src.toUTF8() + '\'');
-
+#if defined(_MSC_VER)
+#pragma warning(push)
+#pragma warning(disable:4996)
+#endif
 xmlSubstituteEntitiesDefault(1);
 xmlLoadExtDtdDefaultValue = 1;
+#if defined(_MSC_VER)
+#pragma warning(pop)
+#endif
 cur = xsltParseStylesheetFile(reinterpret_cast(resEmbStylesheet.native_file_string().c_str()));
 
 int nbparams = 0;


core.git: sw/inc sw/source

2024-03-04 Thread Michael Stahl (via logerrit)
 sw/inc/undobj.hxx   |2 +-
 sw/source/core/doc/DocumentContentOperationsManager.cxx |2 +-
 sw/source/core/txtnode/ndtxt.cxx|2 +-
 sw/source/core/undo/untblk.cxx  |   15 ---
 4 files changed, 11 insertions(+), 10 deletions(-)

New commits:
commit cf4df3e51b609613134e3146f526d8e6b07946c3
Author: Michael Stahl 
AuthorDate: Fri Mar 1 14:30:42 2024 +0100
Commit: Michael Stahl 
CommitDate: Mon Mar 4 11:23:44 2024 +0100

sw: for Undo, add FLY_AT_PAGE in GetFlysAnchoredAt()

SwUndoInserts::IsCreateUndoForNewFly() now returns true for these, so
they get Undo objects on Paste, which is of course wrong.

(regression from commit 359e5af31c330a137fed6ba3140b77cd759c28bb)

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

diff --git a/sw/inc/undobj.hxx b/sw/inc/undobj.hxx
index 03ad720aabe7..7fb61309ec29 100644
--- a/sw/inc/undobj.hxx
+++ b/sw/inc/undobj.hxx
@@ -244,7 +244,7 @@ class SwUndoInsLayFormat;
 namespace sw {
 
 std::optional>
-GetFlysAnchoredAt(SwDoc & rDoc, SwNodeOffset nSttNode);
+GetFlysAnchoredAt(SwDoc & rDoc, SwNodeOffset nSttNode, bool isAtPageIncluded);
 
 }
 
diff --git a/sw/source/core/doc/DocumentContentOperationsManager.cxx 
b/sw/source/core/doc/DocumentContentOperationsManager.cxx
index e799555b9dd7..1c3df58bd6cd 100644
--- a/sw/source/core/doc/DocumentContentOperationsManager.cxx
+++ b/sw/source/core/doc/DocumentContentOperationsManager.cxx
@@ -5066,7 +5066,7 @@ bool 
DocumentContentOperationsManager::CopyImplImpl(SwPaM& rPam, SwPosition& rPo
 }
 else
 {
-pFlys = sw::GetFlysAnchoredAt(rDoc, rPos.GetNodeIndex());
+pFlys = sw::GetFlysAnchoredAt(rDoc, rPos.GetNodeIndex(), false);
 pFlysAtInsPos = pFlys ? &*pFlys : nullptr;
 }
 
diff --git a/sw/source/core/txtnode/ndtxt.cxx b/sw/source/core/txtnode/ndtxt.cxx
index dc2625d33c54..bbb725e5c13c 100644
--- a/sw/source/core/txtnode/ndtxt.cxx
+++ b/sw/source/core/txtnode/ndtxt.cxx
@@ -462,7 +462,7 @@ SwTextNode *SwTextNode::SplitContentNode(const SwPosition & 
rPos,
 }
 
 bool bSplitFly = false;
-std::optional> oFlys = 
sw::GetFlysAnchoredAt(GetDoc(), GetIndex());
+std::optional> oFlys = 
sw::GetFlysAnchoredAt(GetDoc(), GetIndex(), false);
 if (oFlys.has_value())
 {
 // See if one of the flys is a split fly. If so, we need to keep
diff --git a/sw/source/core/undo/untblk.cxx b/sw/source/core/undo/untblk.cxx
index 158167809712..328d901ca482 100644
--- a/sw/source/core/undo/untblk.cxx
+++ b/sw/source/core/undo/untblk.cxx
@@ -38,7 +38,7 @@
 namespace sw {
 
 std::optional>
-GetFlysAnchoredAt(SwDoc & rDoc, SwNodeOffset const nSttNode)
+GetFlysAnchoredAt(SwDoc & rDoc, SwNodeOffset const nSttNode, bool const 
isAtPageIncluded)
 {
 std::optional> pFrameFormats;
 const size_t nArrLen = rDoc.GetSpzFrameFormats()->size();
@@ -47,10 +47,11 @@ GetFlysAnchoredAt(SwDoc & rDoc, SwNodeOffset const nSttNode)
 SwFrameFormat *const pFormat = (*rDoc.GetSpzFrameFormats())[n];
 SwFormatAnchor const*const pAnchor = >GetAnchor();
 SwNode const*const pAnchorNode = pAnchor->GetAnchorNode();
-if (pAnchorNode
- && nSttNode == pAnchorNode->GetIndex()
- && ((pAnchor->GetAnchorId() == RndStdIds::FLY_AT_PARA)
- || (pAnchor->GetAnchorId() == RndStdIds::FLY_AT_CHAR)))
+if ((pAnchorNode
+&& nSttNode == pAnchorNode->GetIndex()
+&& ((pAnchor->GetAnchorId() == RndStdIds::FLY_AT_PARA)
+|| (pAnchor->GetAnchorId() == RndStdIds::FLY_AT_CHAR)))
+|| (isAtPageIncluded && pAnchor->GetAnchorId() == 
RndStdIds::FLY_AT_PAGE))
 {
 if (!pFrameFormats)
 pFrameFormats.emplace();
@@ -89,7 +90,7 @@ SwUndoInserts::SwUndoInserts( SwUndoId nUndoId, const SwPaM& 
rPam )
 // These flys will be saved in pFrameFormats array (only flys which 
exist BEFORE insertion!)
 // Then in SwUndoInserts::SetInsertRange the flys saved in 
pFrameFormats will NOT create Undos.
 // m_FlyUndos will only be filled with newly inserted flys.
-m_pFrameFormats = sw::GetFlysAnchoredAt(rDoc, m_nSttNode);
+m_pFrameFormats = sw::GetFlysAnchoredAt(rDoc, m_nSttNode, true);
 }
 // consider Redline
 if( rDoc.getIDocumentRedlineAccess().IsRedlineOn() )
@@ -392,7 +393,7 @@ void SwUndoInserts::RedoImpl(::sw::UndoRedoContext & 
rContext)
 if( ( m_nSttNode != m_nEndNode || m_nSttContent != m_nEndContent ) && 
m_oUndoNodeIndex)
 {
 auto const pFlysAtInsPos(sw::GetFlysAnchoredAt(rDoc,
-rPam.GetPoint()->GetNodeIndex()));
+rPam.GetPoint()->GetNodeIndex(), false));
 
 ::std::optional oMvBkwrd = MovePtBackward(rPam);
 


core.git: Branch 'distro/collabora/co-23.05' - chart2/source

2024-03-04 Thread Marco Cecchetti (via logerrit)
 chart2/source/controller/main/ChartController_Properties.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 7ac72f44b0a101c19ee8991babb74a073a0d1aa1
Author: Marco Cecchetti 
AuthorDate: Fri Mar 1 11:54:58 2024 +0100
Commit: Tomaž Vajngerl 
CommitDate: Mon Mar 4 11:48:34 2024 +0100

clang complains about not used lambda capture

`this` is not used in lambda implementation

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

diff --git a/chart2/source/controller/main/ChartController_Properties.cxx 
b/chart2/source/controller/main/ChartController_Properties.cxx
index 821049f981c0..dd683660d60d 100644
--- a/chart2/source/controller/main/ChartController_Properties.cxx
+++ b/chart2/source/controller/main/ChartController_Properties.cxx
@@ -789,7 +789,7 @@ void 
ChartController::executeDlg_ObjectProperties_withUndoGuard(
 }
 
 //open the dialog
-aDlgPtr->runAsync(aDlgPtr, [this, aDlgPtr, xChartDoc, pItemConverter, 
bSuccessOnUnchanged, aUndoGuard] (int nResult)
+aDlgPtr->runAsync(aDlgPtr, [aDlgPtr, xChartDoc, pItemConverter, 
bSuccessOnUnchanged, aUndoGuard] (int nResult)
 {
 if (nResult == RET_OK || (bSuccessOnUnchanged && 
aDlgPtr->DialogWasClosedWithOK())) {
 const SfxItemSet* pOutItemSet = aDlgPtr->GetOutputItemSet();


core.git: docmodel/source include/docmodel include/svx svx/source

2024-03-04 Thread Noel Grandin (via logerrit)
 docmodel/source/color/ComplexColorJSON.cxx |   19 ---
 include/docmodel/color/ComplexColorJSON.hxx|8 ++--
 include/svx/PaletteManager.hxx |3 ++-
 include/svx/theme/ThemeColorPaletteManager.hxx |7 +--
 svx/source/tbxctrls/PaletteManager.cxx |   20 
 svx/source/theme/ThemeColorChangerCommon.cxx   |8 +++-
 svx/source/theme/ThemeColorPaletteManager.cxx  |   21 -
 7 files changed, 40 insertions(+), 46 deletions(-)

New commits:
commit 04c73e27491feaf21e0a2c9288aee5a9f9850386
Author: Noel Grandin 
AuthorDate: Fri Mar 1 22:11:14 2024 +0200
Commit: Tomaž Vajngerl 
CommitDate: Mon Mar 4 11:50:45 2024 +0100

cool#8327 use tools::JsonWriter for theme colors

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

diff --git a/docmodel/source/color/ComplexColorJSON.cxx 
b/docmodel/source/color/ComplexColorJSON.cxx
index 7c09a1e8221d..a2a683acfb89 100644
--- a/docmodel/source/color/ComplexColorJSON.cxx
+++ b/docmodel/source/color/ComplexColorJSON.cxx
@@ -13,6 +13,7 @@
 #include 
 #include 
 #include 
+#include 
 
 namespace model::color
 {
@@ -59,11 +60,11 @@ bool convertFromJSON(OString const& rJsonString, 
model::ComplexColor& rComplexCo
 return true;
 }
 
-void convertToJSONTree(boost::property_tree::ptree& rTree, model::ComplexColor 
const& rComplexColor)
+void convertToJSONTree(tools::JsonWriter& rTree, model::ComplexColor const& 
rComplexColor)
 {
 rTree.put("ThemeIndex", sal_Int16(rComplexColor.getThemeColorType()));
+auto aTransformationsList = rTree.startArray("Transformations");
 
-boost::property_tree::ptree aTransformationsList;
 for (auto const& rTransformation : rComplexColor.getTransformations())
 {
 std::string aType;
@@ -86,22 +87,18 @@ void convertToJSONTree(boost::property_tree::ptree& rTree, 
model::ComplexColor c
 }
 if (!aType.empty())
 {
-boost::property_tree::ptree aChild;
-aChild.put("Type", aType);
-aChild.put("Value", rTransformation.mnValue);
-aTransformationsList.push_back(std::make_pair("", aChild));
+auto aChild = rTree.startStruct();
+rTree.put("Type", aType);
+rTree.put("Value", rTransformation.mnValue);
 }
 }
-rTree.add_child("Transformations", aTransformationsList);
 }
 
 OString convertToJSON(model::ComplexColor const& rComplexColor)
 {
-boost::property_tree::ptree aTree;
+tools::JsonWriter aTree;
 convertToJSONTree(aTree, rComplexColor);
-std::stringstream aStream;
-boost::property_tree::write_json(aStream, aTree);
-return OString(aStream.str());
+return aTree.finishAndGetAsOString();
 }
 
 } // end model::theme
diff --git a/include/docmodel/color/ComplexColorJSON.hxx 
b/include/docmodel/color/ComplexColorJSON.hxx
index 0f95bb2288c3..b35d938f007c 100644
--- a/include/docmodel/color/ComplexColorJSON.hxx
+++ b/include/docmodel/color/ComplexColorJSON.hxx
@@ -12,12 +12,16 @@
 
 #include 
 #include 
-#include 
+
+namespace tools
+{
+class JsonWriter;
+}
 
 namespace model::color
 {
 DOCMODEL_DLLPUBLIC OString convertToJSON(model::ComplexColor const& 
rComplexColor);
-DOCMODEL_DLLPUBLIC void convertToJSONTree(boost::property_tree::ptree& rTree,
+DOCMODEL_DLLPUBLIC void convertToJSONTree(tools::JsonWriter& rTree,
   model::ComplexColor const& 
rComplexColor);
 DOCMODEL_DLLPUBLIC bool convertFromJSON(OString const& rJsonString,
 model::ComplexColor& rComplexColor);
diff --git a/include/svx/PaletteManager.hxx b/include/svx/PaletteManager.hxx
index 90fa00de59fe..5882a7c465b7 100644
--- a/include/svx/PaletteManager.hxx
+++ b/include/svx/PaletteManager.hxx
@@ -33,6 +33,7 @@ namespace com::sun::star::uno { class XComponentContext; }
 namespace svx { class ToolboxButtonColorUpdaterBase; }
 namespace weld { class Window; }
 namespace model { class ColorSet; }
+namespace tools { class JsonWriter; }
 
 class SVXCORE_DLLPUBLIC PaletteManager : public 
std::enable_shared_from_this
 {
@@ -89,7 +90,7 @@ public:
 static void DispatchColorCommand(const OUString& aCommand, const 
NamedColor& rColor);
 
 /// Appends node for Document Colors into the ptree
-static void generateJSON(boost::property_tree::ptree& aTree, const 
std::set& rColors);
+static void generateJSON(tools::JsonWriter& aTree, const std::set& 
rColors);
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/svx/theme/ThemeColorPaletteManager.hxx 
b/include/svx/theme/ThemeColorPaletteManager.hxx
index 64cbf8e3fa91..a2d45c19f492 100644
--- a/include/svx/theme/ThemeColorPaletteManager.hxx
+++ b/include/svx/theme/ThemeColorPaletteManager.hxx
@@ -15,12 +15,15 @@
 #include 
 #include 
 #include 

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

2024-03-04 Thread Noel Grandin (via logerrit)
 docmodel/source/color/ComplexColorJSON.cxx |   19 ---
 include/docmodel/color/ComplexColorJSON.hxx|8 ++--
 include/svx/PaletteManager.hxx |3 ++-
 include/svx/theme/ThemeColorPaletteManager.hxx |7 +--
 svx/source/tbxctrls/PaletteManager.cxx |   20 
 svx/source/theme/ThemeColorChangerCommon.cxx   |8 +++-
 svx/source/theme/ThemeColorPaletteManager.cxx  |   21 -
 7 files changed, 40 insertions(+), 46 deletions(-)

New commits:
commit 0f03f7807541fc6eadb2e3642e37c5d63dae36ad
Author: Noel Grandin 
AuthorDate: Fri Mar 1 22:11:14 2024 +0200
Commit: Tomaž Vajngerl 
CommitDate: Mon Mar 4 11:51:58 2024 +0100

cool#8327 use tools::JsonWriter for theme colors

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

diff --git a/docmodel/source/color/ComplexColorJSON.cxx 
b/docmodel/source/color/ComplexColorJSON.cxx
index 7c09a1e8221d..a2a683acfb89 100644
--- a/docmodel/source/color/ComplexColorJSON.cxx
+++ b/docmodel/source/color/ComplexColorJSON.cxx
@@ -13,6 +13,7 @@
 #include 
 #include 
 #include 
+#include 
 
 namespace model::color
 {
@@ -59,11 +60,11 @@ bool convertFromJSON(OString const& rJsonString, 
model::ComplexColor& rComplexCo
 return true;
 }
 
-void convertToJSONTree(boost::property_tree::ptree& rTree, model::ComplexColor 
const& rComplexColor)
+void convertToJSONTree(tools::JsonWriter& rTree, model::ComplexColor const& 
rComplexColor)
 {
 rTree.put("ThemeIndex", sal_Int16(rComplexColor.getThemeColorType()));
+auto aTransformationsList = rTree.startArray("Transformations");
 
-boost::property_tree::ptree aTransformationsList;
 for (auto const& rTransformation : rComplexColor.getTransformations())
 {
 std::string aType;
@@ -86,22 +87,18 @@ void convertToJSONTree(boost::property_tree::ptree& rTree, 
model::ComplexColor c
 }
 if (!aType.empty())
 {
-boost::property_tree::ptree aChild;
-aChild.put("Type", aType);
-aChild.put("Value", rTransformation.mnValue);
-aTransformationsList.push_back(std::make_pair("", aChild));
+auto aChild = rTree.startStruct();
+rTree.put("Type", aType);
+rTree.put("Value", rTransformation.mnValue);
 }
 }
-rTree.add_child("Transformations", aTransformationsList);
 }
 
 OString convertToJSON(model::ComplexColor const& rComplexColor)
 {
-boost::property_tree::ptree aTree;
+tools::JsonWriter aTree;
 convertToJSONTree(aTree, rComplexColor);
-std::stringstream aStream;
-boost::property_tree::write_json(aStream, aTree);
-return OString(aStream.str());
+return aTree.finishAndGetAsOString();
 }
 
 } // end model::theme
diff --git a/include/docmodel/color/ComplexColorJSON.hxx 
b/include/docmodel/color/ComplexColorJSON.hxx
index 0f95bb2288c3..b35d938f007c 100644
--- a/include/docmodel/color/ComplexColorJSON.hxx
+++ b/include/docmodel/color/ComplexColorJSON.hxx
@@ -12,12 +12,16 @@
 
 #include 
 #include 
-#include 
+
+namespace tools
+{
+class JsonWriter;
+}
 
 namespace model::color
 {
 DOCMODEL_DLLPUBLIC OString convertToJSON(model::ComplexColor const& 
rComplexColor);
-DOCMODEL_DLLPUBLIC void convertToJSONTree(boost::property_tree::ptree& rTree,
+DOCMODEL_DLLPUBLIC void convertToJSONTree(tools::JsonWriter& rTree,
   model::ComplexColor const& 
rComplexColor);
 DOCMODEL_DLLPUBLIC bool convertFromJSON(OString const& rJsonString,
 model::ComplexColor& rComplexColor);
diff --git a/include/svx/PaletteManager.hxx b/include/svx/PaletteManager.hxx
index 90fa00de59fe..5882a7c465b7 100644
--- a/include/svx/PaletteManager.hxx
+++ b/include/svx/PaletteManager.hxx
@@ -33,6 +33,7 @@ namespace com::sun::star::uno { class XComponentContext; }
 namespace svx { class ToolboxButtonColorUpdaterBase; }
 namespace weld { class Window; }
 namespace model { class ColorSet; }
+namespace tools { class JsonWriter; }
 
 class SVXCORE_DLLPUBLIC PaletteManager : public 
std::enable_shared_from_this
 {
@@ -89,7 +90,7 @@ public:
 static void DispatchColorCommand(const OUString& aCommand, const 
NamedColor& rColor);
 
 /// Appends node for Document Colors into the ptree
-static void generateJSON(boost::property_tree::ptree& aTree, const 
std::set& rColors);
+static void generateJSON(tools::JsonWriter& aTree, const std::set& 
rColors);
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/svx/theme/ThemeColorPaletteManager.hxx 
b/include/svx/theme/ThemeColorPaletteManager.hxx
index 8531021bbc84..09469dee9477 100644
--- a/include/svx/theme/ThemeColorPaletteManager.hxx
+++ b/include/svx/theme/ThemeColorPaletteManager.hxx
@@ -14,12 +14,15 @@
 #include 
 

core.git: sw/source

2024-03-04 Thread Caolán McNamara (via logerrit)
 sw/source/core/layout/colfrm.cxx |7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

New commits:
commit e9e2b79e6ba9c275cf451861184de4e53f9b6776
Author: Caolán McNamara 
AuthorDate: Sun Mar 3 14:05:39 2024 +
Commit: Caolán McNamara 
CommitDate: Mon Mar 4 12:08:46 2024 +0100

cid#1545317 this didn't help in the end to silence Use after free

so just ditch it, crashtesting didn't find anything anyhow.

Change-Id: I1175b78b93e06174357bd11b10f0a8859a8a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164302
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/sw/source/core/layout/colfrm.cxx b/sw/source/core/layout/colfrm.cxx
index 3d8e1d12c9f7..872bdc44aef1 100644
--- a/sw/source/core/layout/colfrm.cxx
+++ b/sw/source/core/layout/colfrm.cxx
@@ -81,7 +81,7 @@ void SwColumnFrame::dumpAsXml(xmlTextWriterPtr writer) const
 (void)xmlTextWriterEndElement(writer);
 }
 
-static void lcl_RemoveColumns(SwLayoutFrame *pCont, sal_uInt16 nCnt, const 
SwFrame *pSave)
+static void lcl_RemoveColumns( SwLayoutFrame *pCont, sal_uInt16 nCnt )
 {
 OSL_ENSURE( pCont && pCont->Lower() && pCont->Lower()->IsColumnFrame(),
 "no columns to remove." );
@@ -98,7 +98,6 @@ static void lcl_RemoveColumns(SwLayoutFrame *pCont, 
sal_uInt16 nCnt, const SwFra
 {
 SwColumnFrame *pTmp = static_cast(pColumn->GetPrev());
 pColumn->Cut();
-assert(pColumn != pSave && "we will deref pSave later, so shouldn't be 
deleted here"); (void)pSave;
 SwFrame::DestroyFrame(pColumn); //format is going to be destroyed in 
the DTor if needed.
 pColumn = pTmp;
 }
@@ -248,7 +247,7 @@ void SwLayoutFrame::ChgColumns( const SwFormatCol , 
const SwFormatCol 
 //If columns exist, they get deleted if a column count of 0 or 1 is 
requested.
 if ( nNewNum == 1 && !bAtEnd )
 {
-::lcl_RemoveColumns( this, nOldNum, pSave );
+::lcl_RemoveColumns( this, nOldNum );
 if ( IsBodyFrame() )
 SetFrameFormat( pDoc->GetDfltFrameFormat() );
 else
@@ -268,7 +267,7 @@ void SwLayoutFrame::ChgColumns( const SwFormatCol , 
const SwFormatCol 
 }
 if ( nOldNum > nNewNum )
 {
-::lcl_RemoveColumns( this, nOldNum - nNewNum, pSave );
+::lcl_RemoveColumns( this, nOldNum - nNewNum );
 bAdjustAttributes = true;
 }
 else if( nOldNum < nNewNum )


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

2024-03-04 Thread Noel Grandin (via logerrit)
 vcl/qa/cppunit/pdfexport/data/tdf159817.fodt |  607 +++
 vcl/qa/cppunit/pdfexport/pdfexport2.cxx  |   56 ++
 vcl/source/control/button.cxx|6 
 vcl/source/control/combobox.cxx  |9 
 vcl/source/window/tabpage.cxx|5 
 5 files changed, 675 insertions(+), 8 deletions(-)

New commits:
commit 10346f5ff6f0ab6e3b2deb709e4f3e9cc49bf80c
Author: Noel Grandin 
AuthorDate: Sun Mar 3 17:11:39 2024 +0200
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 12:17:40 2024 +0100

tdf#159817 tdf#159802 Form controls coordinates wrong when export to pdf

This reverts the following commits:
d408fe5cd45c9594feecec727ab2f73c66e361d0 "unnecessary LogicToPixel in 
CheckBox::Draw"
7441aaa4c5b2215e369c62e22af098184e8ce807 "unnecessary LogicToPixel in 
RadioButton::Draw"
a2dacae0c8acfad8a5e5a16c766ee740ec202c5e "unnecessary LogicToPixel in 
ComboBox::Draw"
f73e8c895e24fda10931ecf344a1a0dd8bcdf92c "unnecessary LogicToPixel in 
TabPage::Draw"

I am fairly sure this code that I am restoring is dodgy,
and I am just papering over some other bug somewhere, but
I can't seem to see where that is.

Change-Id: I0f9088e43b0e3af74fd5ff9d297008ee23a3facb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164313
Tested-by: Jenkins
Reviewed-by: Noel Grandin 
Signed-off-by: Xisco Fauli 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164328

diff --git a/vcl/qa/cppunit/pdfexport/data/tdf159817.fodt 
b/vcl/qa/cppunit/pdfexport/data/tdf159817.fodt
new file mode 100644
index ..6aa986bdc6ad
--- /dev/null
+++ b/vcl/qa/cppunit/pdfexport/data/tdf159817.fodt
@@ -0,0 +1,607 @@
+
+
+http://www.w3.org/TR/css3-text/; 
xmlns:grddl="http://www.w3.org/2003/g/data-view#; 
xmlns:xhtml="http://www.w3.org/1999/xhtml; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema; 
xmlns:xforms="http://www.w3.org/2002/xforms; 
xmlns:dom="http://www.w3.org/2001/xml-events; 
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" 
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 
xmlns:math="http://www.w3.org/1998/Math/MathML; 
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" 
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
 xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" 
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" 
xmlns:officeooo="http://openoffice.org/2009/office; 
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" 
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:formx="u
 rn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" 
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 
xmlns:rpt="http://openoffice.org/2005/report; 
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" 
xmlns:tableooo="http://openoffice.org/2009/table; 
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" 
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:dc="http://purl.org/dc/elements/1.1/; 
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
 xmlns:oooc="http://openoffice.org/2004/calc; 
xmlns:xlink="http://www.w3.org/1999/xlink; 
xmlns:drawooo="http://openoffice.org/2010/draw; 
xmlns:ooow="http://openoffice.org/2004/writer; 
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:ooo="http:/
 /openoffice.org/2004/office" 
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
+ LibreOfficeDev/24.8.0.0.alpha0$MacOSX_AARCH64 
LibreOffice_project/d8978a8c4ffabd6b36a691fd3e2df685638082342003-10-02T15:57:292024-03-03T15:16:09.338790904880P124DT12H36M25S2024-02-21T10:01:49.80100Fichiers
 PDF
+ 
+  
+   0
+   0
+   20717
+   10631
+   false
+   false
+   
+
+ view2
+ 11534
+ 5101
+ 0
+ 0
+ 20715
+ 10629
+ 0
+ 1
+ false
+ 140
+ false
+ false
+ false
+ true
+ false
+ false
+
+   
+  
+  
+   0
+   true
+   false
+   false
+   false
+   true
+   false
+   true
+   false
+   
+   true
+   false
+   false
+   false
+   false
+   true
+   false
+   false
+   0
+   false
+   false
+   false
+   false
+   false
+   true
+   false
+   false
+   false
+   false
+   false
+   true
+   false
+   449756
+   true
+   true
+   true
+   false
+   false
+   false
+   false
+   false
+   false
+   false
+   true
+   true
+   false
+   false
+   true
+   false
+   20255833
+   false
+   false
+   false
+   false
+   false
+   false
+   true
+   false
+   false
+   false
+   false
+   true
+   

core.git: Branch 'distro/collabora/co-23.05' - svx/source

2024-03-04 Thread Henry Castro (via logerrit)
 svx/source/tbxctrls/tbcontrl.cxx |   13 +
 1 file changed, 9 insertions(+), 4 deletions(-)

New commits:
commit f77857a5166e9dc730ab7bcec0b059f9c2e97a78
Author: Henry Castro 
AuthorDate: Wed Feb 28 15:59:40 2024 -0400
Commit: Henry Castro 
CommitDate: Mon Mar 4 13:13:05 2024 +0100

svx: fix default locale language string

1) Open a spreadsheet
2) Format a cell with a currency. Example USD $ English (USA)
3) Open the sidebar if it's not opened already
4) Click in the currency dropdown
5) Observe: there is $ (Default)

Expected result: USD $ English (USA) Default

Signed-off-by: Henry Castro 
Change-Id: Idf7f4174557e59cb6f5ffd65c25572322a5794ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164109
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Caolán McNamara 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164350

diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index c359ab24088f..a034b466762f 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -4147,12 +4147,19 @@ void 
SvxCurrencyToolBoxControl::GetCurrencySymbols(std::vector& rList,
 {
 rCurrencyList.clear();
 
+static const OUStringLiteral aTwoSpace(u"  ");
 const NfCurrencyTable& rCurrencyTable = 
SvNumberFormatter::GetTheCurrencyTable();
 sal_uInt16 nCount = rCurrencyTable.size();
 
 sal_uInt16 nStart = 1;
 
-OUString aString( ApplyLreOrRleEmbedding( rCurrencyTable[0].GetSymbol() ) 
+ " " );
+LanguageTag eLangTag = Application::GetSettings().GetLanguageTag();
+OUString 
aString(ApplyLreOrRleEmbedding(rCurrencyTable[0].GetBankSymbol()));
+aString += aTwoSpace;
+aString += ApplyLreOrRleEmbedding(rCurrencyTable[0].GetSymbol());
+aString += aTwoSpace;
+aString += 
ApplyLreOrRleEmbedding(SvtLanguageTable::GetLanguageString(eLangTag.getLanguageType()));
+aString += aTwoSpace;
 aString += 
ApplyLreOrRleEmbedding(SvtLanguageTable::GetLanguageString(rCurrencyTable[0].GetLanguage()));
 
 rList.push_back( aString );
@@ -4166,9 +4173,7 @@ void 
SvxCurrencyToolBoxControl::GetCurrencySymbols(std::vector& rList,
 }
 
 CollatorWrapper aCollator( ::comphelper::getProcessComponentContext() );
-aCollator.loadDefaultCollator( 
Application::GetSettings().GetLanguageTag().getLocale(), 0 );
-
-static const OUStringLiteral aTwoSpace(u"  ");
+aCollator.loadDefaultCollator(eLangTag.getLocale(), 0);
 
 for( sal_uInt16 i = 1; i < nCount; ++i )
 {


core.git: drawinglayer/inc drawinglayer/source

2024-03-04 Thread Patrick Luby (via logerrit)
 drawinglayer/inc/texture/texture3d.hxx|2 +-
 drawinglayer/source/texture/texture3d.cxx |   12 ++--
 2 files changed, 7 insertions(+), 7 deletions(-)

New commits:
commit 86c3105fdb6b67fcc65e76077785b745871151b6
Author: Patrick Luby 
AuthorDate: Sun Mar 3 19:34:09 2024 -0500
Commit: Patrick Luby 
CommitDate: Mon Mar 4 13:27:46 2024 +0100

tdf#159515 rename impGetTransparence() to impGetAlpha()

Commit 81994cb2b8b32453a92bcb011830fcb884f22ff3 makes
impGetTransparence() return alpha instead of transparence. So,
rename the function and skip reverting the result to obtain the
alpha value.

Change-Id: Ied3bf8ae4a0de2ae36074dba9f78ccc93480b15a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164322
Reviewed-by: Noel Grandin 
Reviewed-by: Patrick Luby 
Tested-by: Patrick Luby 

diff --git a/drawinglayer/inc/texture/texture3d.hxx 
b/drawinglayer/inc/texture/texture3d.hxx
index 07f4b181b2ad..1ec4df70734c 100644
--- a/drawinglayer/inc/texture/texture3d.hxx
+++ b/drawinglayer/inc/texture/texture3d.hxx
@@ -66,7 +66,7 @@ namespace drawinglayer::texture
 
 // helpers
 bool impIsValid(const basegfx::B2DPoint& rUV, sal_Int32& rX, 
sal_Int32& rY) const;
-sal_uInt8 impGetTransparence(sal_Int32 rX, sal_Int32 rY) const;
+sal_uInt8 impGetAlpha(sal_Int32 rX, sal_Int32 rY) const;
 
 public:
 GeoTexSvxBitmapEx(
diff --git a/drawinglayer/source/texture/texture3d.cxx 
b/drawinglayer/source/texture/texture3d.cxx
index 3ee751cbbda4..4cbcab9d1c5d 100644
--- a/drawinglayer/source/texture/texture3d.cxx
+++ b/drawinglayer/source/texture/texture3d.cxx
@@ -103,7 +103,7 @@ namespace drawinglayer::texture
 {
 }
 
-sal_uInt8 GeoTexSvxBitmapEx::impGetTransparence(sal_Int32 rX, 
sal_Int32 rY) const
+sal_uInt8 GeoTexSvxBitmapEx::impGetAlpha(sal_Int32 rX, sal_Int32 rY) 
const
 {
 if(mbIsAlpha)
 {
@@ -148,10 +148,10 @@ namespace drawinglayer::texture
 
 if(mbIsAlpha)
 {
-// when we have a transparence, make use of it
-const sal_uInt8 aLuminance(impGetTransparence(nX, nY));
+// when we have alpha, make use of it
+const sal_uInt8 aAlpha(impGetAlpha(nX, nY));
 
-rfOpacity = (static_cast(0xff - aLuminance) * (1.0 
/ 255.0));
+rfOpacity = (static_cast(aAlpha) * (1.0 / 255.0));
 }
 else
 {
@@ -173,8 +173,8 @@ namespace drawinglayer::texture
 if(mbIsAlpha)
 {
 // this texture has an alpha part, use it
-const sal_uInt8 aLuminance(impGetTransparence(nX, nY));
-const double fNewOpacity(static_cast(0xff - 
aLuminance) * (1.0 / 255.0));
+const sal_uInt8 aAlpha(impGetAlpha(nX, nY));
+const double fNewOpacity(static_cast(aAlpha) * 
(1.0 / 255.0));
 
 rfOpacity = 1.0 - ((1.0 - fNewOpacity) * (1.0 - 
rfOpacity));
 }


core.git: sw/qa sw/source

2024-03-04 Thread Mike Kaganski (via logerrit)
 sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt |   14 
 sw/qa/extras/htmlexport/htmlexport.cxx   |   21 
 sw/source/filter/html/css1atr.cxx|6 
 sw/source/filter/html/htmlatr.cxx|  409 ---
 4 files changed, 223 insertions(+), 227 deletions(-)

New commits:
commit 6d797c83d9fb891b783de39646b42d34a895c81e
Author: Mike Kaganski 
AuthorDate: Mon Mar 4 12:20:13 2024 +0600
Commit: Mike Kaganski 
CommitDate: Mon Mar 4 13:26:06 2024 +0100

tdf160017: make sure to emit the closing tags in correct order

This reimplements how the starts and ends of attributes are stored in
HTMLEndPosLst. Instead of a plain list, now it is a sorted map, with
positions as keys, and a vector of HTMLStartEndPos* as values.

In commit b94b1fe936ddc4a9b86fbeb9c9c6ab0fca52f0bc (CharBrd 9.1: HTML
filters, 2013-09-08), the character borders attributes started to be
set in a special order, in front of the position's other attributes,
to allow merging them. But that created a problem of knowing in which
order to close respective tags.

The change here sorts the closing tags for the current node only when
writing them. At this point, it is possible to consider the opening
positions correctly.

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

diff --git a/sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt 
b/sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt
new file mode 100644
index ..bda2ec63133c
--- /dev/null
+++ b/sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt
@@ -0,0 +1,14 @@
+
+
+
+ 
+  
+   
+  
+ 
+ 
+  
+   foo
+  
+ 
+
\ No newline at end of file
diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx 
b/sw/qa/extras/htmlexport/htmlexport.cxx
index fcb60925488c..45eb06130d3e 100644
--- a/sw/qa/extras/htmlexport/htmlexport.cxx
+++ b/sw/qa/extras/htmlexport/htmlexport.cxx
@@ -3017,6 +3017,27 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, 
testReqIF_NoBrClearForImageWrap)
 0);
 }
 
+CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_Tdf160017_spanClosingOrder)
+{
+// Given a document with a paragraph having explicit font color and 
character border properties:
+createSwDoc("char_border_and_font_color.fodt");
+// When exporting to reqif:
+ExportToReqif();
+// Without the fix, this would fail, because there was an extra closing 

+WrapReqifFromTempFile();
+}
+
+CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testHTML_Tdf160017_spanClosingOrder)
+{
+// Given a document with a paragraph having explicit font color and 
character border properties:
+createSwDoc("char_border_and_font_color.fodt");
+// When exporting to HTML:
+ExportToHTML();
+// Parse it as XML (strict!)
+// Without the fix, this would fail, because span and font elements closed 
in wrong order
+CPPUNIT_ASSERT(parseXml(maTempFile));
+}
+
 } // end of anonymous namespace
 CPPUNIT_PLUGIN_IMPLEMENT();
 
diff --git a/sw/source/filter/html/css1atr.cxx 
b/sw/source/filter/html/css1atr.cxx
index a07b0c9ce8d9..48badab293dd 100644
--- a/sw/source/filter/html/css1atr.cxx
+++ b/sw/source/filter/html/css1atr.cxx
@@ -3301,14 +3301,16 @@ SwHTMLWriter& OutCSS1_SvxBox( SwHTMLWriter& rWrt, const 
SfxPoolItem& rHt )
 
 if( rHt.Which() == RES_CHRATR_BOX )
 {
+constexpr std::string_view inline_block("inline-block");
 if( rWrt.m_bTagOn )
 {
 // Inline-block to make the line height changing correspond to the 
character border
-rWrt.OutCSS1_PropertyAscii(sCSS1_P_display, "inline-block");
+rWrt.OutCSS1_PropertyAscii(sCSS1_P_display, inline_block);
 }
 else
 {
-HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), 
Concat2View(rWrt.GetNamespace() + OOO_STRING_SVTOOLS_HTML_span), false );
+if (!IgnorePropertyForReqIF(rWrt.mbReqIF, sCSS1_P_display, 
inline_block))
+HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), 
Concat2View(rWrt.GetNamespace() + OOO_STRING_SVTOOLS_HTML_span), false );
 return rWrt;
 }
 }
diff --git a/sw/source/filter/html/htmlatr.cxx 
b/sw/source/filter/html/htmlatr.cxx
index 9f67d1ee0304..c880082018f1 100644
--- a/sw/source/filter/html/htmlatr.cxx
+++ b/sw/source/filter/html/htmlatr.cxx
@@ -1058,7 +1058,7 @@ public:
 
 HTMLStartEndPos( const SfxPoolItem& rItem, sal_Int32 nStt, sal_Int32 nE );
 
-const SfxPoolItem* GetItem() const { return m_pItem.get(); }
+const SfxPoolItem& GetItem() const { return *m_pItem; }
 
 void SetStart(sal_Int32 nStt) { m_nStart = nStt; }
 sal_Int32 GetStart() const { return m_nStart; }
@@ -1075,7 +1075,7 @@ HTMLStartEndPos::HTMLStartEndPos(const SfxPoolItem& 
rItem, sal_Int32 nStt, sal_I
 , 

core.git: officecfg/registry

2024-03-04 Thread Xisco Fauli (via logerrit)
 officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit d6f80ddb3f05a3b55239866e6e4d470f6903aaae
Author: Xisco Fauli 
AuthorDate: Mon Mar 4 12:14:27 2024 +0100
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 14:20:03 2024 +0100

tdf#159808: fix -> fixed

Change-Id: Ib4a1460b6d92a6e140748294d752967dd8cfa89d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164351
Reviewed-by: Stéphane Guillou 
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git 
a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
index 5612705b04f1..0747863958fc 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
@@ -1084,7 +1084,7 @@
   
   
 
-  ~Date (fix)
+  ~Date (fixed)
 
 
   1
@@ -1108,7 +1108,7 @@
   
   
 
-  ~Time (fix)
+  ~Time (fixed)
 
 
   1


core.git: sc/qa sc/source

2024-03-04 Thread Regina Henschel (via logerrit)
 sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods |binary
 sc/qa/unit/scshapetest.cxx |   24 +
 sc/source/core/data/drwlayer.cxx   |2 -
 3 files changed, 25 insertions(+), 1 deletion(-)

New commits:
commit 199523b553957936dc31b8c3556ef2e47c6bc3a1
Author: Regina Henschel 
AuthorDate: Sun Mar 3 17:19:49 2024 +0100
Commit: Regina Henschel 
CommitDate: Mon Mar 4 14:30:21 2024 +0100

tdf#160003 use correct sheet in clipboard for test

..whether a page anchored object is contained in the to be copied area.

Change-Id: I816e342770332e6d751b57a38e5ebabe33feb16a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164307
Tested-by: Jenkins
Reviewed-by: Regina Henschel 

diff --git a/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods 
b/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods
new file mode 100644
index ..565eb1bf6a26
Binary files /dev/null and 
b/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods differ
diff --git a/sc/qa/unit/scshapetest.cxx b/sc/qa/unit/scshapetest.cxx
index b5083544f114..5e4827005388 100644
--- a/sc/qa/unit/scshapetest.cxx
+++ b/sc/qa/unit/scshapetest.cxx
@@ -1207,6 +1207,30 @@ CPPUNIT_TEST_FIXTURE(ScShapeTest, 
testTdf154821_shape_in_group)
 CPPUNIT_ASSERT_RECTANGLE_EQUAL_WITH_TOLERANCE(aRectOrig, aRectReload, 1);
 }
 
+CPPUNIT_TEST_FIXTURE(ScShapeTest, testTdf160003_copy_page_anchored)
+{
+// Load a document, which has a chart anchored to page on sheet2. 
Copy to other document
+// had lost the chart object.
+createScDoc("ods/tdf160003_page_anchored_object.ods");
+
+// copy range with chart
+goToCell("$Sheet2.$A$1:$L$24");
+dispatchCommand(mxComponent, ".uno:Copy", {});
+
+// close document and create new one
+createScDoc();
+
+// paste clipboard
+goToCell("$Sheet1.$A$1");
+dispatchCommand(mxComponent, ".uno:Paste", {});
+
+// Make sure the chart object exists.
+ScDocument* pDoc = getScDoc();
+ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer();
+const SdrPage* pPage = pDrawLayer->GetPage(0);
+CPPUNIT_ASSERT_EQUAL(size_t(1), pPage->GetObjCount());
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/core/data/drwlayer.cxx b/sc/source/core/data/drwlayer.cxx
index ed4f4ff4076c..4fac946caf1d 100644
--- a/sc/source/core/data/drwlayer.cxx
+++ b/sc/source/core/data/drwlayer.cxx
@@ -1996,7 +1996,7 @@ void ScDrawLayer::CopyFromClip(ScDrawLayer* pClipModel, 
SCTAB nSourceTab,
 }
 else // Object is anchored to page.
 {
-aSrcObjStart = pClipDoc->GetRange(nClipTab, 
pOldObject->GetCurrentBoundRect()).aStart;
+aSrcObjStart = pClipDoc->GetRange(nSourceTab, 
pOldObject->GetCurrentBoundRect()).aStart;
 }
 if (!rSourceRange.Contains(aSrcObjStart))
 continue;


core.git: sc/source

2024-03-04 Thread Andrea Gelmini (via logerrit)
 sc/source/core/data/column.cxx |4 
 1 file changed, 4 deletions(-)

New commits:
commit f43f6c4292bd20b18d29abbd7763e098b100e95c
Author: Andrea Gelmini 
AuthorDate: Sun Dec 31 10:33:12 2023 +0100
Commit: Kevin Suo 
CommitDate: Mon Mar 4 14:33:39 2024 +0100

Remove break after return

Change-Id: Id8e933ba8b7b0836613b3b722f3eda081b77f1f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161463
Tested-by: Jenkins
Reviewed-by: Kevin Suo 

diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx
index 34524e444dc3..dea1adde51f3 100644
--- a/sc/source/core/data/column.cxx
+++ b/sc/source/core/data/column.cxx
@@ -605,19 +605,15 @@ ScRefCellValue ScColumn::GetCellValue( const 
sc::CellStoreType::const_iterator&
 case sc::element_type_numeric:
 // Numeric cell
 return ScRefCellValue(sc::numeric_block::at(*itPos->data, 
nOffset));
-break;
 case sc::element_type_string:
 // String cell
 return ScRefCellValue(::string_block::at(*itPos->data, 
nOffset));
-break;
 case sc::element_type_edittext:
 // Edit cell
 return ScRefCellValue(sc::edittext_block::at(*itPos->data, 
nOffset));
-break;
 case sc::element_type_formula:
 // Formula cell
 return ScRefCellValue(sc::formula_block::at(*itPos->data, 
nOffset));
-break;
 default:
 return ScRefCellValue(); // empty cell
 }


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

2024-03-04 Thread Caolán McNamara (via logerrit)
 sc/inc/docoptio.hxx  |4 -
 sc/inc/funcuno.hxx   |1 
 sc/inc/optuno.hxx|9 +---
 sc/inc/scmod.hxx |4 -
 sc/qa/unit/tiledrendering/tiledrendering.cxx |   30 --
 sc/source/core/data/docpool.cxx  |3 -
 sc/source/core/tool/docoptio.cxx |1 
 sc/source/ui/app/inputhdl.cxx|2 
 sc/source/ui/app/scmod.cxx   |   45 +++--
 sc/source/ui/docshell/docsh3.cxx |4 -
 sc/source/ui/docshell/docsh4.cxx |4 -
 sc/source/ui/inc/tabview.hxx |1 
 sc/source/ui/unoobj/docuno.cxx   |   57 ++-
 sc/source/ui/unoobj/funcuno.cxx  |   42 ++-
 sc/source/ui/unoobj/optuno.cxx   |   28 -
 sc/source/ui/view/gridwin4.cxx   |   18 +++-
 sc/source/ui/view/tabview.cxx|   29 ++---
 sc/source/ui/view/tabvwsh4.cxx   |2 
 sc/source/ui/view/viewdata.cxx   |3 -
 sc/source/ui/view/viewfun2.cxx   |6 +-
 20 files changed, 170 insertions(+), 123 deletions(-)

New commits:
commit 483fedd15bb801815c6ab62de329f4fd91889c31
Author: Caolán McNamara 
AuthorDate: Fri Feb 23 21:12:15 2024 +
Commit: Miklos Vajna 
CommitDate: Mon Mar 4 14:41:16 2024 +0100

move inline spelling setting out of document and into viewshell

like what writer does, so one view of a document can have spelling
enabled and another disabled

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

diff --git a/sc/inc/docoptio.hxx b/sc/inc/docoptio.hxx
index 6e4d4f124cda..80c5654efeca 100644
--- a/sc/inc/docoptio.hxx
+++ b/sc/inc/docoptio.hxx
@@ -39,7 +39,6 @@ class SC_DLLPUBLIC ScDocOptions
 bool   bIsIter; ///< iterations for circular refs
 bool   bCalcAsShown;///< calculate as shown (wrt precision)
 bool   bMatchWholeCell; ///< search criteria must match the 
whole cell
-bool   bDoAutoSpell;///< auto-spelling
 bool   bLookUpColRowNames;  ///< determine column-/row titles 
automagically
 mutable bool bFormulaRegexEnabled;///< regular expressions in formulas 
enabled, only when reading settings
 mutable bool bFormulaWildcardsEnabled;///< wildcards in formulas enabled, 
only when reading settings
@@ -50,8 +49,6 @@ public:
 
 bool   IsLookUpColRowNames() const   { return bLookUpColRowNames; }
 void   SetLookUpColRowNames( bool bVal ) { bLookUpColRowNames = bVal; }
-bool   IsAutoSpell() const  { return bDoAutoSpell; }
-void   SetAutoSpell( bool bVal ){ bDoAutoSpell = bVal; }
 bool   IsMatchWholeCell() const { return bMatchWholeCell; }
 void   SetMatchWholeCell( bool bVal )   { bMatchWholeCell = bVal; }
 bool   IsIgnoreCase() const { return bIsIgnoreCase; }
@@ -116,7 +113,6 @@ inline bool ScDocOptions::operator==( const ScDocOptions& 
rOpt ) const
 &&  rOpt.nTabDistance   == nTabDistance
 &&  rOpt.bCalcAsShown   == bCalcAsShown
 &&  rOpt.bMatchWholeCell== bMatchWholeCell
-&&  rOpt.bDoAutoSpell   == bDoAutoSpell
 &&  rOpt.bLookUpColRowNames == bLookUpColRowNames
 &&  rOpt.bFormulaRegexEnabled   == bFormulaRegexEnabled
 &&  rOpt.bFormulaWildcardsEnabled == bFormulaWildcardsEnabled
diff --git a/sc/inc/funcuno.hxx b/sc/inc/funcuno.hxx
index 3d62ecaded9d..912201ac4bb7 100644
--- a/sc/inc/funcuno.hxx
+++ b/sc/inc/funcuno.hxx
@@ -64,6 +64,7 @@ private:
 SfxItemPropertyMap aPropertyMap;
 boolmbArray;
 boolmbValid;
+boolmbSpellOnline;
 
 public:
 ScFunctionAccess();
diff --git a/sc/inc/optuno.hxx b/sc/inc/optuno.hxx
index 72050044e363..27b0c3d6dc56 100644
--- a/sc/inc/optuno.hxx
+++ b/sc/inc/optuno.hxx
@@ -31,16 +31,13 @@
 #define PROP_UNO_LOOKUPLABELS   7
 #define PROP_UNO_MATCHWHOLE 8
 #define PROP_UNO_NULLDATE   9
-#define PROP_UNO_SPELLONLINE10
-#define PROP_UNO_STANDARDDEC11
-#define PROP_UNO_REGEXENABLED   12
-#define PROP_UNO_WILDCARDSENABLED 13
+#define PROP_UNO_STANDARDDEC10
+#define PROP_UNO_REGEXENABLED   11
+#define PROP_UNO_WILDCARDSENABLED 12
 
 class ScDocOptionsHelper
 {
 public:
-static std::span GetPropertyMap();
-
 static bool setPropertyValue( ScDocOptions& rOptions,
 const SfxItemPropertyMap& rPropMap,
 std::u16string_view aPropertyName,
diff --git a/sc/inc/scmod.hxx b/sc/inc/scmod.hxx
index f95da4a46280..18705e6189f0 

core.git: Branch 'distro/collabora/co-23.05' - configure.ac

2024-03-04 Thread Andras Timar (via logerrit)
 configure.ac |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit a9f0089eb2186cf0036a82df07e264d08e9c4b2b
Author: Andras Timar 
AuthorDate: Mon Mar 4 14:43:58 2024 +0100
Commit: Andras Timar 
CommitDate: Mon Mar 4 14:43:58 2024 +0100

Bump version to 23.05.9.3

Change-Id: I14522d60e0529e7c8521937f02680dd49c160e19

diff --git a/configure.ac b/configure.ac
index 5b3c5732c589..490065a64534 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ dnl in order to create a configure script.
 # several non-alphanumeric characters, those are split off and used only for 
the
 # ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no 
idea.
 
-AC_INIT([Collabora Office],[23.05.9.2],[],[],[https://collaboraoffice.com/])
+AC_INIT([Collabora Office],[23.05.9.3],[],[],[https://collaboraoffice.com/])
 
 dnl libnumbertext needs autoconf 2.68, but that can pick up autoconf268 just 
fine if it is installed
 dnl whereas aclocal (as run by autogen.sh) insists on using autoconf and fails 
hard


dictionaries.git: Changes to 'refs/tags/cp-23.05.9-3'

2024-03-04 Thread Andras Timar (via logerrit)
Tag 'cp-23.05.9-3' created by Andras Timar  at 
2024-03-04 13:44 +

cp-23.05.9-3

Changes since co-23.05-branch-point:
Andras Timar (1):
  On Linux dictionaries are packaged separately

---
 Module_dictionaries.mk |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
---


help.git: Changes to 'refs/tags/cp-23.05.9-3'

2024-03-04 Thread Andras Timar (via logerrit)
Tag 'cp-23.05.9-3' created by Andras Timar  at 
2024-03-04 13:44 +

cp-23.05.9-3

Changes since cp-23.05.8-4:
Andras Timar (1):
  Too big enviroment on Windows can cause failure with xargs

---
 CustomTarget_html.mk |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---


translations.git: Changes to 'refs/tags/cp-23.05.9-3'

2024-03-04 Thread Andras Timar (via logerrit)
Tag 'cp-23.05.9-3' created by Andras Timar  at 
2024-03-04 13:44 +

cp-23.05.9-3

Changes since cp-23.05.9-1:
Andras Timar (1):
  [cp] Remove reference to menu in dialog text

---
 source/ar/sc/messages.po|   10 ++
 source/bg/sc/messages.po|   10 ++
 source/ca/sc/messages.po|   10 ++
 source/cs/sc/messages.po|   10 ++
 source/da/sc/messages.po|   10 ++
 source/de/sc/messages.po|   10 ++
 source/el/sc/messages.po|   10 ++
 source/en-GB/sc/messages.po |   10 ++
 source/eo/sc/messages.po|   10 ++
 source/es/sc/messages.po|   10 ++
 source/eu/sc/messages.po|   10 ++
 source/fi/sc/messages.po|   10 ++
 source/fr/sc/messages.po|   10 ++
 source/gl/sc/messages.po|   10 ++
 source/hr/sc/messages.po|   10 ++
 source/hu/sc/messages.po|   10 ++
 source/id/sc/messages.po|   10 ++
 source/is/sc/messages.po|   10 ++
 source/it/sc/messages.po|   10 ++
 source/ja/sc/messages.po|   10 ++
 source/ko/sc/messages.po|   10 ++
 source/nb/sc/messages.po|   10 ++
 source/nl/sc/messages.po|   10 ++
 source/oc/sc/messages.po|   10 ++
 source/pl/sc/messages.po|   10 ++
 source/pt-BR/sc/messages.po |   10 ++
 source/pt/sc/messages.po|   10 ++
 source/ru/sc/messages.po|   10 ++
 source/sk/sc/messages.po|   10 ++
 source/sl/sc/messages.po|   10 ++
 source/sv/sc/messages.po|   10 ++
 source/tr/sc/messages.po|   10 ++
 source/uk/sc/messages.po|   10 ++
 source/zh-CN/sc/messages.po |   10 ++
 source/zh-TW/sc/messages.po |   10 ++
 35 files changed, 70 insertions(+), 280 deletions(-)
---


core.git: Changes to 'refs/tags/cp-23.05.9-3'

2024-03-04 Thread Andras Timar (via logerrit)
Tag 'cp-23.05.9-3' created by Andras Timar  at 
2024-03-04 13:44 +

cp-23.05.9-3

Changes since cp-23.05.9-2-19:
---
 0 files changed
---


core.git: translations

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

New commits:
commit 59c5e17449ade91e6e2a2a2ea43fdd88010a6144
Author: Christian Lohmaier 
AuthorDate: Mon Mar 4 15:02:35 2024 +0100
Commit: Gerrit Code Review 
CommitDate: Mon Mar 4 15:02:35 2024 +0100

Update git submodules

* Update translations from branch 'master'
  to fd5c3f2ec0852b712b34e7e99b4853a016eac72e
  - update translations for master

and force-fix errors using pocheck

Change-Id: I92a4c8e684156e8f1a0bcd46fff4a940c37348ce

diff --git a/translations b/translations
index 746e6ecef2d7..fd5c3f2ec085 16
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit 746e6ecef2d71de19c9f77b53eca64d62aa42df3
+Subproject commit fd5c3f2ec0852b712b34e7e99b4853a016eac72e


core.git: sw/qa

2024-03-04 Thread Michael Stahl (via logerrit)
 sw/qa/uitest/writer_tests8/tdf150443.py |4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit 0b21e2a404c114529376dc50764dc0286dafc745
Author: Michael Stahl 
AuthorDate: Mon Mar 4 12:47:15 2024 +0100
Commit: Michael Stahl 
CommitDate: Mon Mar 4 15:28:46 2024 +0100

sw: UITest_writer_tests8 test_tdf150443 more tolerant

This fails on Fedora 39, also in the libreoffice-24-2 branch, with:
self.assertEqual(get_state_as_dict(xWriterEdit)["CurrentPage"], "4")
AssertionError: '5' != '4'

Presumably a font substitution changing metrics problem, as "NexusSansOT"
is not found.

It looks like the exact page doesn't matter for the test.

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

diff --git a/sw/qa/uitest/writer_tests8/tdf150443.py 
b/sw/qa/uitest/writer_tests8/tdf150443.py
index fb39bd8a0375..91937551a4b3 100644
--- a/sw/qa/uitest/writer_tests8/tdf150443.py
+++ b/sw/qa/uitest/writer_tests8/tdf150443.py
@@ -26,7 +26,9 @@ class tdf150443(UITestCase):
 xsearch = xDialog.getChild("search")
 xsearch.executeAction("CLICK", tuple())  #first search
 xToolkit.processEventsToIdle()
-
self.assertEqual(get_state_as_dict(xWriterEdit)["CurrentPage"], "4")
+page = get_state_as_dict(xWriterEdit)["CurrentPage"]
+# page may depend on font subsitution, just check it moved
+self.assertTrue(page == "4" or page == "5")
 
 # reject the tracked table row in Manage Changes dialog window
 with 
self.ui_test.execute_modeless_dialog_through_command(".uno:AcceptTrackedChanges",
 close_button="close") as xTrackDlg:


core.git: include/vcl vcl/inc vcl/source vcl/win

2024-03-04 Thread Vasily Melenchuk (via logerrit)
 include/vcl/window.hxx   |3 +++
 vcl/inc/brdwin.hxx   |2 ++
 vcl/inc/salframe.hxx |2 ++
 vcl/inc/win/salframe.h   |1 +
 vcl/source/window/brdwin.cxx |   15 +++
 vcl/source/window/window.cxx |4 
 vcl/win/window/salframe.cxx  |8 
 7 files changed, 35 insertions(+)

New commits:
commit 68f55fc9a1aa8c0f403761e39e7531ae298ea79e
Author: Vasily Melenchuk 
AuthorDate: Wed Oct 25 22:26:14 2023 +0300
Commit: Samuel Mehrbrodt 
CommitDate: Mon Mar 4 15:30:22 2024 +0100

vcl:  interface for WinAPI FlashWindow() function

To improve LibreOffice UX it will be great to have possibility to
signal user on some event did happen, but without capuring focus
and bringing LO to foreground, like it is happenings sometimes. It
can be annoying.

For example, if dialog window is opening slowly and user did switch
to another application, this is used to inform user that there
are some updates in LO window: dialog finally alive.

There are somewhat confusing implementation of this feature: VCL dialog
window became visible and actual Windows window should use
::FlashWindow() are very different in hierarchies, so it is somewhat
challenging to find window to flash or even decide shoud we flash window
or not.

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

diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx
index 74f1d395e9ad..f451d6f3038b 100644
--- a/include/vcl/window.hxx
+++ b/include/vcl/window.hxx
@@ -1119,6 +1119,9 @@ public:
 /// Dumps itself and potentially its children to a property tree, to be 
written easily to JSON.
 virtual void DumpAsPropertyTree(tools::JsonWriter&);
 
+
+virtual void FlashWindow() const {};
+
 /** @name Accessibility
  */
 ///@{
diff --git a/vcl/inc/brdwin.hxx b/vcl/inc/brdwin.hxx
index f9c8a8edb894..dbaa52ed02b2 100644
--- a/vcl/inc/brdwin.hxx
+++ b/vcl/inc/brdwin.hxx
@@ -169,6 +169,8 @@ public:
 tools::Rectangle   GetMenuRect() const;
 
 virtual SizeGetOptimalSize() const override;
+
+virtual void FlashWindow() const override;
 };
 
 struct ImplBorderFrameData
diff --git a/vcl/inc/salframe.hxx b/vcl/inc/salframe.hxx
index f25f8de92777..a2ce50202b92 100644
--- a/vcl/inc/salframe.hxx
+++ b/vcl/inc/salframe.hxx
@@ -211,6 +211,8 @@ public:
 
 virtual voidBeep() = 0;
 
+virtual voidFlashWindow() const {};
+
 // returns system data (most prominent: window handle)
 virtual const SystemEnvData*
 GetSystemData() const = 0;
diff --git a/vcl/inc/win/salframe.h b/vcl/inc/win/salframe.h
index de72c089b57b..b9ddea89476a 100644
--- a/vcl/inc/win/salframe.h
+++ b/vcl/inc/win/salframe.h
@@ -126,6 +126,7 @@ public:
 virtual LanguageTypeGetInputLanguage() override;
 virtual voidUpdateSettings( AllSettings& rSettings ) 
override;
 virtual voidBeep() override;
+virtual voidFlashWindow() const override;
 virtual const SystemEnvData*GetSystemData() const override;
 virtual SalPointerState GetPointerState() override;
 virtual KeyIndicatorState   GetIndicatorState() override;
diff --git a/vcl/source/window/brdwin.cxx b/vcl/source/window/brdwin.cxx
index e7b569364021..d1de4daffac5 100644
--- a/vcl/source/window/brdwin.cxx
+++ b/vcl/source/window/brdwin.cxx
@@ -20,6 +20,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #include 
@@ -2000,4 +2001,18 @@ void ImplBorderWindow::queue_resize(StateChangedType 
eReason)
 vcl::Window::queue_resize(eReason);
 }
 
+void ImplBorderWindow::FlashWindow() const
+{
+// We are showing top level window without focus received. Let's flash it
+// Use OS features to bring user attention to this window: find topmost 
one and FlashWindow
+vcl::Window* pMyParent = mpWindowImpl->mpParent;
+while (pMyParent && pMyParent->mpWindowImpl && 
pMyParent->mpWindowImpl->mpParent)
+{
+pMyParent = pMyParent->mpWindowImpl->mpParent;
+}
+if (pMyParent) {
+pMyParent->mpWindowImpl->mpFrame->FlashWindow();
+}
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 1e661c4151d1..62bc5029f84d 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -2322,6 +2322,10 @@ void Window::Show(bool bVisible, ShowFlags nFlags)
 ImplFocusToTop( ToTopFlags::NONE, false );
 }
 
+if (!HasFocus() && GetParent()) {
+GetParent()->FlashWindow();
+}
+
 // adjust mpWindowImpl->mbReallyVisible
 bRealVisibilityChanged = !mpWindowImpl->mbReallyVisible;
 

core.git: vcl/inc vcl/jsdialog

2024-03-04 Thread Noel Grandin (via logerrit)
 vcl/inc/jsdialog/jsdialogbuilder.hxx |   19 ++--
 vcl/jsdialog/jsdialogbuilder.cxx |  156 ---
 2 files changed, 81 insertions(+), 94 deletions(-)

New commits:
commit 81d4f14e5968453b72ba754a7b3e6c13a30abbf4
Author: Noel Grandin 
AuthorDate: Mon Mar 4 19:15:43 2024 +0200
Commit: Noel Grandin 
CommitDate: Tue Mar 5 07:21:51 2024 +0100

reduce heap allocation in JSDialogNotifyIdle

makes the code simpler too

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

diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index e24ff1589655..315b8605582f 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -125,16 +125,15 @@ public:
  std::unique_ptr pData = nullptr);
 
 private:
-void send(tools::JsonWriter& aJsonWriter);
-std::unique_ptr generateFullUpdate() const;
-std::unique_ptr 
generateWidgetUpdate(VclPtr pWindow) const;
-std::unique_ptr generateCloseMessage() const;
-std::unique_ptr
-generateActionMessage(VclPtr pWindow,
-  std::unique_ptr pData) 
const;
-std::unique_ptr
-generatePopupMessage(VclPtr pWindow, OUString sParentId, 
OUString sCloseId) const;
-std::unique_ptr generateClosePopupMessage(OUString 
sWindowId) const;
+void send(const OString& sMsg);
+OString generateFullUpdate() const;
+OString generateWidgetUpdate(VclPtr pWindow) const;
+OString generateCloseMessage() const;
+OString generateActionMessage(VclPtr pWindow,
+  std::unique_ptr 
pData) const;
+OString generatePopupMessage(VclPtr pWindow, OUString 
sParentId,
+ OUString sCloseId) const;
+OString generateClosePopupMessage(OUString sWindowId) const;
 };
 
 class JSDialogSender
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index a7199e2ed960..38b3a9e2922d 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -81,31 +81,22 @@ JSDialogNotifyIdle::JSDialogNotifyIdle(VclPtr 
aNotifierWindow,
 
 void JSDialogNotifyIdle::forceUpdate() { m_bForce = true; }
 
-void JSDialogNotifyIdle::send(tools::JsonWriter& aJsonWriter)
+void JSDialogNotifyIdle::send(const OString& sMsg)
 {
 if (!m_aNotifierWindow)
 {
-aJsonWriter.finishAndGetAsOString();
 return;
 }
 
 const vcl::ILibreOfficeKitNotifier* pNotifier = 
m_aNotifierWindow->GetLOKNotifier();
 if (pNotifier)
 {
-if (m_bForce || !aJsonWriter.isDataEquals(m_LastNotificationMessage))
+if (m_bForce || sMsg != m_LastNotificationMessage)
 {
 m_bForce = false;
-m_LastNotificationMessage = aJsonWriter.finishAndGetAsOString();
+m_LastNotificationMessage = sMsg;
 pNotifier->libreOfficeKitViewCallback(LOK_CALLBACK_JSDIALOG, 
m_LastNotificationMessage);
 }
-else
-{
-aJsonWriter.finishAndGetAsOString();
-}
-}
-else
-{
-aJsonWriter.finishAndGetAsOString();
 }
 }
 
@@ -139,91 +130,89 @@ void 
JSDialogNotifyIdle::sendMessage(jsdialog::MessageType eType,
 m_aMessageQueue.push_back(aMessage);
 }
 
-std::unique_ptr JSDialogNotifyIdle::generateFullUpdate() 
const
+OString JSDialogNotifyIdle::generateFullUpdate() const
 {
-std::unique_ptr aJsonWriter(new tools::JsonWriter());
-
 if (!m_aContentWindow || !m_aNotifierWindow)
-return aJsonWriter;
+return OString();
 
-m_aContentWindow->DumpAsPropertyTree(*aJsonWriter);
+tools::JsonWriter aJsonWriter;
+
+m_aContentWindow->DumpAsPropertyTree(aJsonWriter);
 if (m_aNotifierWindow)
-aJsonWriter->put("id", m_aNotifierWindow->GetLOKWindowId());
-aJsonWriter->put("jsontype", m_sTypeOfJSON);
+aJsonWriter.put("id", m_aNotifierWindow->GetLOKWindowId());
+aJsonWriter.put("jsontype", m_sTypeOfJSON);
 
-return aJsonWriter;
+return aJsonWriter.finishAndGetAsOString();
 }
 
-std::unique_ptr
-JSDialogNotifyIdle::generateWidgetUpdate(VclPtr pWindow) const
+OString JSDialogNotifyIdle::generateWidgetUpdate(VclPtr pWindow) 
const
 {
-std::unique_ptr aJsonWriter(new tools::JsonWriter());
-
 if (!pWindow || !m_aNotifierWindow)
-return aJsonWriter;
+return OString();
 
-aJsonWriter->put("jsontype", m_sTypeOfJSON);
-aJsonWriter->put("action", "update");
+tools::JsonWriter aJsonWriter;
+
+aJsonWriter.put("jsontype", m_sTypeOfJSON);
+aJsonWriter.put("action", "update");
 if (m_aNotifierWindow)
-aJsonWriter->put("id", m_aNotifierWindow->GetLOKWindowId());
+aJsonWriter.put("id", m_aNotifierWindow->GetLOKWindowId());
 {
-auto aEntries = aJsonWriter->startNode("control");
-

core.git: sw/source

2024-03-04 Thread Jim Raykowski (via logerrit)
 sw/source/core/crsr/crsrsh.cxx |   19 ---
 1 file changed, 12 insertions(+), 7 deletions(-)

New commits:
commit cf6c6db51eada17408c412173331db0820a23e5d
Author: Jim Raykowski 
AuthorDate: Tue Feb 27 19:22:50 2024 -0900
Commit: Jim Raykowski 
CommitDate: Tue Mar 5 07:21:02 2024 +0100

tdf#49994 Fix text selection over pages for multi column tables

with repeated headings

Change-Id: I6cddeb132ff4f8ff27ea03701067d7a3d4c4cf82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/79113
Tested-by: Jenkins
Reviewed-by: Jim Raykowski 

diff --git a/sw/source/core/crsr/crsrsh.cxx b/sw/source/core/crsr/crsrsh.cxx
index 04c904f13905..3e9ca93b3380 100644
--- a/sw/source/core/crsr/crsrsh.cxx
+++ b/sw/source/core/crsr/crsrsh.cxx
@@ -1994,22 +1994,27 @@ void SwCursorShell::UpdateCursor( sal_uInt16 eFlags, 
bool bIdleEnd )
 {
 pTableFrame = nullptr;
 
-SwMoveFnCollection const & fnPosSect = *pPos <  
*pITmpCursor->GetMark()
-? fnSectionStart
-: fnSectionEnd;
-
 // then only select inside the Box
 if( m_pTableCursor )
 {
+SwMoveFnCollection const & fnPosSect = *pPos <  
*pITmpCursor->GetMark()
+? fnSectionStart
+: fnSectionEnd;
+
 m_pCurrentCursor->SetMark();
 *m_pCurrentCursor->GetMark() = *m_pTableCursor->GetMark();
 m_pCurrentCursor->GetMkPos() = m_pTableCursor->GetMkPos();
 m_pTableCursor->DeleteMark();
 m_pTableCursor->SwSelPaintRects::Hide();
-}
 
-*m_pCurrentCursor->GetPoint() = *m_pCurrentCursor->GetMark();
-GoCurrSection( *m_pCurrentCursor, fnPosSect );
+*m_pCurrentCursor->GetPoint() = 
*m_pCurrentCursor->GetMark();
+GoCurrSection( *m_pCurrentCursor, fnPosSect );
+}
+else
+{
+eFlags &= SwCursorShell::UPDOWN;
+*m_pCurrentCursor->GetPoint() = 
*m_pCurrentCursor->GetMark();
+}
 }
 }
 


core.git: Branch 'distro/vector/vector-7.5.9' - sw/qa sw/source

2024-03-04 Thread Mike Kaganski (via logerrit)
 sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt |   14 
 sw/qa/extras/htmlexport/htmlexport.cxx   |   24 
 sw/source/filter/html/css1atr.cxx|6 
 sw/source/filter/html/htmlatr.cxx|  416 +--
 4 files changed, 233 insertions(+), 227 deletions(-)

New commits:
commit b13693d88f9a3f2a0ded26651b36d5c9f80673ac
Author: Mike Kaganski 
AuthorDate: Mon Mar 4 12:20:13 2024 +0600
Commit: Mike Kaganski 
CommitDate: Tue Mar 5 00:16:17 2024 +0600

tdf160017: make sure to emit the closing tags in correct order

This reimplements how the starts and ends of attributes are stored in
HTMLEndPosLst. Instead of a plain list, now it is a sorted map, with
positions as keys, and a vector of HTMLStartEndPos* as values.

In commit b94b1fe936ddc4a9b86fbeb9c9c6ab0fca52f0bc (CharBrd 9.1: HTML
filters, 2013-09-08), the character borders attributes started to be
set in a special order, in front of the position's other attributes,
to allow merging them. But that created a problem of knowing in which
order to close respective tags.

The change here sorts the closing tags for the current node only when
writing them. At this point, it is possible to consider the opening
positions correctly.

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

diff --git a/sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt 
b/sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt
new file mode 100644
index ..bda2ec63133c
--- /dev/null
+++ b/sw/qa/extras/htmlexport/data/char_border_and_font_color.fodt
@@ -0,0 +1,14 @@
+
+
+
+ 
+  
+   
+  
+ 
+ 
+  
+   foo
+  
+ 
+
\ No newline at end of file
diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx 
b/sw/qa/extras/htmlexport/htmlexport.cxx
index 0e2396c39fd5..4afef396 100644
--- a/sw/qa/extras/htmlexport/htmlexport.cxx
+++ b/sw/qa/extras/htmlexport/htmlexport.cxx
@@ -3023,6 +3023,30 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, 
testReqIF_NoBrClearForImageWrap)
 0);
 }
 
+CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIF_Tdf160017_spanClosingOrder)
+{
+// Given a document with a paragraph having explicit font color and 
character border properties:
+createSwDoc("char_border_and_font_color.fodt");
+// When exporting to reqif:
+ExportToReqif();
+SvMemoryStream aStream;
+WrapReqifFromTempFile(aStream);
+xmlDocUniquePtr pXmlDoc = parseXmlStream();
+// Without the fix, this would fail, because there was an extra closing 

+CPPUNIT_ASSERT(pXmlDoc);
+}
+
+CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testHTML_Tdf160017_spanClosingOrder)
+{
+// Given a document with a paragraph having explicit font color and 
character border properties:
+createSwDoc("char_border_and_font_color.fodt");
+// When exporting to HTML:
+save("HTML (StarWriter)");
+// Parse it as XML (strict!)
+// Without the fix, this would fail, because span and font elements closed 
in wrong order
+CPPUNIT_ASSERT(parseXml(maTempFile));
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/filter/html/css1atr.cxx 
b/sw/source/filter/html/css1atr.cxx
index 27d0c645ad56..af2fe301c96c 100644
--- a/sw/source/filter/html/css1atr.cxx
+++ b/sw/source/filter/html/css1atr.cxx
@@ -3335,14 +3335,16 @@ Writer& OutCSS1_SvxBox( Writer& rWrt, const 
SfxPoolItem& rHt )
 
 if( rHt.Which() == RES_CHRATR_BOX )
 {
+constexpr std::string_view inline_block("inline-block");
 if( rHTMLWrt.m_bTagOn )
 {
 // Inline-block to make the line height changing correspond to the 
character border
-rHTMLWrt.OutCSS1_PropertyAscii(sCSS1_P_display, "inline-block");
+rHTMLWrt.OutCSS1_PropertyAscii(sCSS1_P_display, inline_block);
 }
 else
 {
-HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), 
Concat2View(rHTMLWrt.GetNamespace() + OOO_STRING_SVTOOLS_HTML_span), false );
+if (!IgnorePropertyForReqIF(rHTMLWrt.mbReqIF, sCSS1_P_display, 
inline_block))
+HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), 
Concat2View(rHTMLWrt.GetNamespace() + OOO_STRING_SVTOOLS_HTML_span), false );
 return rWrt;
 }
 }
diff --git a/sw/source/filter/html/htmlatr.cxx 
b/sw/source/filter/html/htmlatr.cxx
index a99140564301..247b22e5ff2f 100644
--- a/sw/source/filter/html/htmlatr.cxx
+++ b/sw/source/filter/html/htmlatr.cxx
@@ -1056,7 +1056,7 @@ public:
 
 HTMLStartEndPos( const SfxPoolItem& rItem, sal_Int32 nStt, sal_Int32 nE );
 
-const SfxPoolItem* GetItem() const { return m_pItem.get(); }
+const SfxPoolItem& GetItem() const { return *m_pItem; }
 
 void SetStart(sal_Int32 nStt) { m_nStart = nStt; }
 sal_Int32 

pierre foucou license statement

2024-03-04 Thread Pierre-Yves Foucou

 All of my past and future contributions to LibreOffice may be
   licensed under the MPLv2/LGPLv3+ dual license.

Additionally, to the extent possible under law, I waive all
   copyright and related or neighboring rights to my past & future
   Artwork and Design contributions to the LibreOffice project, and
   similarly to The Document Foundation, placing such contributions
   under CC0: https://creativecommons.org/publicdomain/zero/1.0



core.git: Branch 'distro/collabora/co-24.04' - vcl/inc vcl/jsdialog

2024-03-04 Thread Noel Grandin (via logerrit)
 vcl/inc/jsdialog/jsdialogbuilder.hxx |   19 ++--
 vcl/jsdialog/jsdialogbuilder.cxx |  156 ---
 2 files changed, 81 insertions(+), 94 deletions(-)

New commits:
commit 571a1ab88a41bfc4f8024bd1531c9f34b1023e43
Author: Noel Grandin 
AuthorDate: Mon Mar 4 19:15:43 2024 +0200
Commit: Noel Grandin 
CommitDate: Tue Mar 5 08:57:34 2024 +0100

reduce heap allocation in JSDialogNotifyIdle

makes the code simpler too

Change-Id: Ic452895a20fb2908f7383082069a84ef3fa6a4d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164395
Tested-by: Jenkins
Reviewed-by: Noel Grandin 
(cherry picked from commit 70f2c6f87ae3dd6c8e4b808cbee3ab81f17f6a36)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164380
Reviewed-by: Mike Kaganski 
Tested-by: Jenkins CollaboraOffice 

diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index edd49c1804a7..7ef9c1cfc833 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -125,16 +125,15 @@ public:
  std::unique_ptr pData = nullptr);
 
 private:
-void send(tools::JsonWriter& aJsonWriter);
-std::unique_ptr generateFullUpdate() const;
-std::unique_ptr 
generateWidgetUpdate(VclPtr pWindow) const;
-std::unique_ptr generateCloseMessage() const;
-std::unique_ptr
-generateActionMessage(VclPtr pWindow,
-  std::unique_ptr pData) 
const;
-std::unique_ptr
-generatePopupMessage(VclPtr pWindow, OUString sParentId, 
OUString sCloseId) const;
-std::unique_ptr generateClosePopupMessage(OUString 
sWindowId) const;
+void send(const OString& sMsg);
+OString generateFullUpdate() const;
+OString generateWidgetUpdate(VclPtr pWindow) const;
+OString generateCloseMessage() const;
+OString generateActionMessage(VclPtr pWindow,
+  std::unique_ptr 
pData) const;
+OString generatePopupMessage(VclPtr pWindow, OUString 
sParentId,
+ OUString sCloseId) const;
+OString generateClosePopupMessage(OUString sWindowId) const;
 };
 
 class JSDialogSender
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index f5e3a9c65325..7eda7861fc8d 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -81,31 +81,22 @@ JSDialogNotifyIdle::JSDialogNotifyIdle(VclPtr 
aNotifierWindow,
 
 void JSDialogNotifyIdle::forceUpdate() { m_bForce = true; }
 
-void JSDialogNotifyIdle::send(tools::JsonWriter& aJsonWriter)
+void JSDialogNotifyIdle::send(const OString& sMsg)
 {
 if (!m_aNotifierWindow)
 {
-aJsonWriter.finishAndGetAsOString();
 return;
 }
 
 const vcl::ILibreOfficeKitNotifier* pNotifier = 
m_aNotifierWindow->GetLOKNotifier();
 if (pNotifier)
 {
-if (m_bForce || !aJsonWriter.isDataEquals(m_LastNotificationMessage))
+if (m_bForce || sMsg != m_LastNotificationMessage)
 {
 m_bForce = false;
-m_LastNotificationMessage = aJsonWriter.finishAndGetAsOString();
+m_LastNotificationMessage = sMsg;
 pNotifier->libreOfficeKitViewCallback(LOK_CALLBACK_JSDIALOG, 
m_LastNotificationMessage);
 }
-else
-{
-aJsonWriter.finishAndGetAsOString();
-}
-}
-else
-{
-aJsonWriter.finishAndGetAsOString();
 }
 }
 
@@ -138,91 +129,89 @@ void 
JSDialogNotifyIdle::sendMessage(jsdialog::MessageType eType, VclPtr JSDialogNotifyIdle::generateFullUpdate() 
const
+OString JSDialogNotifyIdle::generateFullUpdate() const
 {
-std::unique_ptr aJsonWriter(new tools::JsonWriter());
-
 if (!m_aContentWindow || !m_aNotifierWindow)
-return aJsonWriter;
+return OString();
 
-m_aContentWindow->DumpAsPropertyTree(*aJsonWriter);
+tools::JsonWriter aJsonWriter;
+
+m_aContentWindow->DumpAsPropertyTree(aJsonWriter);
 if (m_aNotifierWindow)
-aJsonWriter->put("id", m_aNotifierWindow->GetLOKWindowId());
-aJsonWriter->put("jsontype", m_sTypeOfJSON);
+aJsonWriter.put("id", m_aNotifierWindow->GetLOKWindowId());
+aJsonWriter.put("jsontype", m_sTypeOfJSON);
 
-return aJsonWriter;
+return aJsonWriter.finishAndGetAsOString();
 }
 
-std::unique_ptr
-JSDialogNotifyIdle::generateWidgetUpdate(VclPtr pWindow) const
+OString JSDialogNotifyIdle::generateWidgetUpdate(VclPtr pWindow) 
const
 {
-std::unique_ptr aJsonWriter(new tools::JsonWriter());
-
 if (!pWindow || !m_aNotifierWindow)
-return aJsonWriter;
+return OString();
 
-aJsonWriter->put("jsontype", m_sTypeOfJSON);
-aJsonWriter->put("action", "update");
+tools::JsonWriter aJsonWriter;
+
+aJsonWriter.put("jsontype", m_sTypeOfJSON);
+aJsonWriter.put("action", "update");
 if (m_aNotifierWindow)
-aJsonWriter->put("id", m_aNotifierWindow->GetLOKWindowId());

help.git: source/text

2024-03-04 Thread Stéphane Guillou (via logerrit)
 source/text/swriter/00/0404.xhp |6 --
 source/text/swriter/02/18030100.xhp |4 ++--
 source/text/swriter/02/18030200.xhp |4 +---
 3 files changed, 7 insertions(+), 7 deletions(-)

New commits:
commit 4e69e855e524c31af3592fd9925489ad76f4c842
Author: Stéphane Guillou 
AuthorDate: Tue Mar 5 01:48:11 2024 +0100
Commit: Adolfo Jayme Barrientos 
CommitDate: Tue Mar 5 06:50:58 2024 +0100

tdf#159808: update menu entries with fixed vs variable

Change-Id: Ifb1ec0faa41c22ed61ea6fb78adbf5e1de21754b
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/164378
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/source/text/swriter/00/0404.xhp 
b/source/text/swriter/00/0404.xhp
index 434441fa2b..e38616b5b2 100644
--- a/source/text/swriter/00/0404.xhp
+++ b/source/text/swriter/00/0404.xhp
@@ -57,8 +57,10 @@
CommandCtrl
 + F2
 
 
-Choose Insert - Field - 
Date
-Choose Insert - Field - 
Time
+Choose Insert - Field - Date 
(Fixed)
+  Choose Insert - Field - Date 
(Variable)
+Choose Insert - Field - Time 
(Fixed)
+Choose Insert - Field - Time 
(Variable)
 Choose Insert - Field - Page 
Number
 Choose Insert - Field - Page 
Count
 Choose Insert - Field - 
Subject
diff --git a/source/text/swriter/02/18030100.xhp 
b/source/text/swriter/02/18030100.xhp
index 898f43e416..4a0cc8c6cc 100644
--- a/source/text/swriter/02/18030100.xhp
+++ b/source/text/swriter/02/18030100.xhp
@@ -18,11 +18,11 @@
  *   except in compliance with the License. You may obtain a copy of
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  -->
-   
+
 
 
 
-Date
+Date (Fixed)
 /text/swriter/02/18030100.xhp
 
 
diff --git a/source/text/swriter/02/18030200.xhp 
b/source/text/swriter/02/18030200.xhp
index be0139922a..661e81df99 100644
--- a/source/text/swriter/02/18030200.xhp
+++ b/source/text/swriter/02/18030200.xhp
@@ -22,7 +22,7 @@
 
 
 
-Time
+Time (Fixed)
 /text/swriter/02/18030200.xhp
 
 
@@ -30,8 +30,6 @@
 
 
 
-  
-  
   
   time 
fields;insertingfields;inserting 
time
 


core.git: helpcontent2

2024-03-04 Thread Stéphane Guillou (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 357b43e7d7c1bd91e908f4fb92ba8c7472fe39dc
Author: Stéphane Guillou 
AuthorDate: Tue Mar 5 06:50:59 2024 +0100
Commit: Gerrit Code Review 
CommitDate: Tue Mar 5 06:50:59 2024 +0100

Update git submodules

* Update helpcontent2 from branch 'master'
  to 4e69e855e524c31af3592fd9925489ad76f4c842
  - tdf#159808: update menu entries with fixed vs variable

Change-Id: Ifb1ec0faa41c22ed61ea6fb78adbf5e1de21754b
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/164378
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/helpcontent2 b/helpcontent2
index 0fb58194a065..4e69e855e524 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 0fb58194a0658fe83ca170a9cb8adf72371c8c3e
+Subproject commit 4e69e855e524c31af3592fd9925489ad76f4c842


core.git: distro-configs/LibreOfficeMacOSX.conf distro-configs/LibreOfficeWin64.conf

2024-03-04 Thread Noel Grandin (via logerrit)
 distro-configs/LibreOfficeMacOSX.conf |2 +-
 distro-configs/LibreOfficeWin64.conf  |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

New commits:
commit d36b7b2628367c6ed29ed47e4345bd4fae8cf2ee
Author: Noel Grandin 
AuthorDate: Thu Feb 29 19:48:32 2024 +0200
Commit: Noel Grandin 
CommitDate: Mon Mar 4 18:04:23 2024 +0100

move Windows amd macOS builds to mergelibs=more

Linux is stuck with normal mergelibs because Debian wants it like
that, but we can use mergelibs=more on Windows and macOS to
further reduce startup time there

Change-Id: I3a2716f877bb54b51486da127bf5ed4ee59075b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164171
Tested-by: Jenkins
Reviewed-by: Patrick Luby 
Reviewed-by: Noel Grandin 

diff --git a/distro-configs/LibreOfficeMacOSX.conf 
b/distro-configs/LibreOfficeMacOSX.conf
index 139ad7d7a081..68df63a63922 100644
--- a/distro-configs/LibreOfficeMacOSX.conf
+++ b/distro-configs/LibreOfficeMacOSX.conf
@@ -9,4 +9,4 @@
 --with-myspell-dicts
 --with-package-format=dmg
 --enable-odk
---enable-mergelibs
+--enable-mergelibs=more
diff --git a/distro-configs/LibreOfficeWin64.conf 
b/distro-configs/LibreOfficeWin64.conf
index 8ace248e80d4..6fbe87776c2b 100644
--- a/distro-configs/LibreOfficeWin64.conf
+++ b/distro-configs/LibreOfficeWin64.conf
@@ -12,6 +12,6 @@
 --with-help=html
 --with-myspell-dicts
 --with-package-format=msi
---enable-mergelibs
+--enable-mergelibs=more
 --enable-lto
 --enable-odk


Sujatro Bhadra license statement

2024-03-04 Thread Sujatro Bhadra
 All of my past & future contributions to LibreOffice may be
   licensed under the MPLv2/LGPLv3+ dual license.


core.git: include/svx svx/source

2024-03-04 Thread Miklos Vajna (via logerrit)
 include/svx/xtable.hxx|4 ++--
 svx/source/xoutdev/xtable.cxx |4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

New commits:
commit 3372d5c37e07a9862fadc0041587e30759ad0379
Author: Miklos Vajna 
AuthorDate: Mon Mar 4 08:23:53 2024 +0100
Commit: Miklos Vajna 
CommitDate: Mon Mar 4 18:49:47 2024 +0100

svx: prefix members of XGradientEntry

See tdf#94879 for motivation.

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

diff --git a/include/svx/xtable.hxx b/include/svx/xtable.hxx
index 273cc918210e..15775d01ef2a 100644
--- a/include/svx/xtable.hxx
+++ b/include/svx/xtable.hxx
@@ -101,7 +101,7 @@ public:
 class SVXCORE_DLLPUBLIC XGradientEntry final : public XPropertyEntry
 {
 private:
-basegfx::BGradient  aGradient;
+basegfx::BGradient  m_aGradient;
 
 public:
 XGradientEntry(const basegfx::BGradient& rGradient, const OUString& rName);
@@ -109,7 +109,7 @@ public:
 
 const basegfx::BGradient& GetGradient() const
 {
-return aGradient;
+return m_aGradient;
 }
 };
 
diff --git a/svx/source/xoutdev/xtable.cxx b/svx/source/xoutdev/xtable.cxx
index 26316acf9ad8..fea229ec74dc 100644
--- a/svx/source/xoutdev/xtable.cxx
+++ b/svx/source/xoutdev/xtable.cxx
@@ -74,13 +74,13 @@ XHatchEntry::XHatchEntry(const XHatchEntry& rOther)
 
 XGradientEntry::XGradientEntry(const basegfx::BGradient& rGradient, const 
OUString& rName)
 :   XPropertyEntry(rName),
-aGradient(rGradient)
+m_aGradient(rGradient)
 {
 }
 
 XGradientEntry::XGradientEntry(const XGradientEntry& rOther)
 :   XPropertyEntry(rOther),
-aGradient(rOther.aGradient)
+m_aGradient(rOther.m_aGradient)
 {
 }
 


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

2024-03-04 Thread Miklos Vajna (via logerrit)
 writerfilter/source/rtftok/rtfdispatchsymbol.cxx |   13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

New commits:
commit ca781250bbf4435710b22bb6f06ed817b44fb891
Author: Miklos Vajna 
AuthorDate: Wed Feb 28 09:41:06 2024 +0100
Commit: Miklos Vajna 
CommitDate: Mon Mar 4 15:53:13 2024 +0100

Related: tdf#158986 sw floattable, RTF import: use more setNeedPar()

See

,
this keeps the bug fixed but is a better version, as pointed out by
Michael S:

> there was a bug where dispatching PAR here caused a deferred page
> break to be lost, which was fixed by calling setNeedPar(true) instead.

(cherry picked from commit c98ff922831f56253af2a050b8e07cfc89b7a387)

Change-Id: Ibe6e4c14286d40d3066ce9cb7fac9f6847fb81dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164095
Tested-by: Jenkins
Reviewed-by: Michael Stahl 
(cherry picked from commit ab51c235672dd6da2feafbe3f26625ee14889bf9)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164362
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Miklos Vajna 

diff --git a/writerfilter/source/rtftok/rtfdispatchsymbol.cxx 
b/writerfilter/source/rtftok/rtfdispatchsymbol.cxx
index 9d10c7a03362..b40fd55dde9b 100644
--- a/writerfilter/source/rtftok/rtfdispatchsymbol.cxx
+++ b/writerfilter/source/rtftok/rtfdispatchsymbol.cxx
@@ -140,18 +140,19 @@ RTFError RTFDocumentImpl::dispatchSymbol(RTFKeyword 
nKeyword)
 }
 else
 {
-if (m_bNeedCr)
-{ // tdf#158586 don't dispatch \par here, it eats deferred 
page breaks
-setNeedPar(true);
-}
-
+bool bPendingFloatingTable = false;
 RTFValue::Pointer_t pTblpPr
 = 
m_aStates.top().getTableRowSprms().find(NS_ooxml::LN_CT_TblPrBase_tblpPr);
 if (pTblpPr)
 {
 // We have a pending floating table, provide an anchor for 
it still in this
 // section.
-dispatchSymbol(RTFKeyword::PAR);
+bPendingFloatingTable = true;
+}
+
+if (m_bNeedCr || bPendingFloatingTable)
+{ // tdf#158586 don't dispatch \par here, it eats deferred 
page breaks
+setNeedPar(true);
 }
 
 sectBreak();


core.git: sc/source

2024-03-04 Thread Julien Nabet (via logerrit)
 sc/source/ui/docshell/docsh3.cxx |3 +++
 1 file changed, 3 insertions(+)

New commits:
commit e19340d13ca40ede3fe671b7d2b710e0a53a0d31
Author: Julien Nabet 
AuthorDate: Mon Mar 4 13:21:06 2024 +0100
Commit: Julien Nabet 
CommitDate: Mon Mar 4 18:00:27 2024 +0100

tdf#159373: band-aid for crash in: ScTable::HasAttrib

band-aid because as Eike indicated in 
https://bugs.documentfoundation.org/show_bug.cgi?id=159373#c8
"Question remains why this PostPaint() is called at all for an invalid 
range.."

Change-Id: Ie44378119202addd8ddb46f0be4b0124be9fd48b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164354
Tested-by: Jenkins
Reviewed-by: Julien Nabet 

diff --git a/sc/source/ui/docshell/docsh3.cxx b/sc/source/ui/docshell/docsh3.cxx
index f00f40d853a0..90663bc0520f 100644
--- a/sc/source/ui/docshell/docsh3.cxx
+++ b/sc/source/ui/docshell/docsh3.cxx
@@ -118,6 +118,9 @@ void ScDocShell::PostPaint( const ScRangeList& rRanges, 
PaintPartFlags nPart, sa
 SCROW nRow1 = rRange.aStart.Row(), nRow2 = rRange.aEnd.Row();
 SCTAB nTab1 = rRange.aStart.Tab(), nTab2 = std::min(nMaxTab, 
rRange.aEnd.Tab());
 
+if (nTab1 < 0 || nTab2 < 0)
+continue;
+
 if (!m_pDocument->ValidCol(nCol1))
 {
 nMaxWidthAffectedHint = -1; // Hint no longer valid


core.git: sc/qa sc/source

2024-03-04 Thread Miklos Vajna (via logerrit)
 sc/qa/filter/html/html.cxx|   26 ++
 sc/source/filter/html/htmlexp.cxx |9 +
 2 files changed, 35 insertions(+)

New commits:
commit 2efe362c99a9fa6e9a71b9b675b025c64b6c7f9d
Author: Miklos Vajna 
AuthorDate: Mon Mar 4 15:00:51 2024 +0100
Commit: Miklos Vajna 
CommitDate: Mon Mar 4 17:21:17 2024 +0100

tdf#159483 sc HTML copy: handle data-sheets-formula attribute

When a formula cell gets copied from Calc to google docs, only the
formula result was copied, not the formula.

There is a data-sheets-formula attribute on  that can describe the
formula we have.

Fix the problem by extending ScHTMLExport::WriteCell() to emit that.

This is more or less the export equivalent of commit
7812adb2ed11a3e08be24d3f2f94d14bfd740c55 (tdf#159483 sc HTML paste:
handle data-sheets-formula attribute, 2024-02-12).

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

diff --git a/sc/qa/filter/html/html.cxx b/sc/qa/filter/html/html.cxx
index 916dd23981ec..391806be0333 100644
--- a/sc/qa/filter/html/html.cxx
+++ b/sc/qa/filter/html/html.cxx
@@ -276,6 +276,32 @@ CPPUNIT_TEST_FIXTURE(Test, testCopyFormattedNumber)
 assertXPath(pHtmlDoc, "(//td)[2]"_ostr, "data-sheets-numberformat"_ostr,
 "{ \"1\": 2, \"2\": \"#,##0.00\", \"3\": 1}");
 }
+
+CPPUNIT_TEST_FIXTURE(Test, testCopyFormula)
+{
+// Given a document with a formula in A3:
+createScDoc();
+ScDocument* pDoc = getScDoc();
+ScAddress aCellPos1(/*nColP=*/0, /*nRowP=*/0, /*nTabP=*/0);
+pDoc->SetString(aCellPos1, "1000");
+ScAddress aCellPos2(/*nColP=*/0, /*nRowP=*/1, /*nTabP=*/0);
+pDoc->SetString(aCellPos2, "2000");
+ScAddress aCellPos3(/*nColP=*/0, /*nRowP=*/2, /*nTabP=*/0);
+pDoc->SetFormula(aCellPos3, "=SUM(A1:A2)", pDoc->GetGrammar());
+
+// When copying those cells:
+ScImportExport aExporter(*pDoc, ScRange(aCellPos1, aCellPos3));
+SvMemoryStream aStream;
+CPPUNIT_ASSERT(aExporter.ExportStream(aStream, OUString(), 
SotClipboardFormatId::HTML));
+
+// Then make sure the formula is exported in A3:
+aStream.Seek(0);
+htmlDocUniquePtr pHtmlDoc = parseHtmlStream();
+// Without the accompanying fix in place, this test would have failed with:
+// - XPath '(//td)[3]' no attribute 'data-sheets-formula' exist
+// i.e. only the formula result was exported, not the formula.
+assertXPath(pHtmlDoc, "(//td)[3]"_ostr, "data-sheets-formula"_ostr, 
"=SUM(R[-2]C:R[-1]C)");
+}
 }
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sc/source/filter/html/htmlexp.cxx 
b/sc/source/filter/html/htmlexp.cxx
index c2554b7612f1..4413d668b428 100644
--- a/sc/source/filter/html/htmlexp.cxx
+++ b/sc/source/filter/html/htmlexp.cxx
@@ -1172,6 +1172,15 @@ void ScHTMLExport::WriteCell( sc::ColumnBlockPosition& 
rBlockPos, SCCOL nCol, SC
 }
 }
 }
+
+if (aCell.getType() == CELLTYPE_FORMULA)
+{
+// If it's a formula, then also emit that, grammar is R1C1 
reference style.
+OUString aFormula = aCell.getFormula()->GetFormula(
+formula::FormulaGrammar::GRAM_ENGLISH_XL_R1C1);
+aStrTD.append(" " OOO_STRING_SVTOOLS_HTML_O_DSformula "=\""
++ HTMLOutFuncs::ConvertStringToHTML(aFormula) + "\"");
+}
 }
 else
 {


core.git: sw/qa

2024-03-04 Thread Andrea Gelmini (via logerrit)
 sw/qa/uitest/writer_tests8/tdf150443.py |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 5d529e6290a26dcf44a683b252921b2015fb5719
Author: Andrea Gelmini 
AuthorDate: Mon Mar 4 16:38:48 2024 +0100
Commit: Julien Nabet 
CommitDate: Mon Mar 4 18:17:27 2024 +0100

Fix typo

Change-Id: I4242a774d29bd700a5459485938d593a49abfaa4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164391
Tested-by: Julien Nabet 
Reviewed-by: Julien Nabet 

diff --git a/sw/qa/uitest/writer_tests8/tdf150443.py 
b/sw/qa/uitest/writer_tests8/tdf150443.py
index 91937551a4b3..1dbb74b58918 100644
--- a/sw/qa/uitest/writer_tests8/tdf150443.py
+++ b/sw/qa/uitest/writer_tests8/tdf150443.py
@@ -27,7 +27,7 @@ class tdf150443(UITestCase):
 xsearch.executeAction("CLICK", tuple())  #first search
 xToolkit.processEventsToIdle()
 page = get_state_as_dict(xWriterEdit)["CurrentPage"]
-# page may depend on font subsitution, just check it moved
+# page may depend on font substitution, just check it moved
 self.assertTrue(page == "4" or page == "5")
 
 # reject the tracked table row in Manage Changes dialog window


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

2024-03-04 Thread Patrick Luby (via logerrit)
 drawinglayer/inc/texture/texture3d.hxx|2 +-
 drawinglayer/source/texture/texture3d.cxx |   12 ++--
 2 files changed, 7 insertions(+), 7 deletions(-)

New commits:
commit 30862f999acc54e2690d28f97b95764f664c1f5a
Author: Patrick Luby 
AuthorDate: Sun Mar 3 19:34:09 2024 -0500
Commit: Patrick Luby 
CommitDate: Mon Mar 4 15:41:41 2024 +0100

tdf#159515 rename impGetTransparence() to impGetAlpha()

Commit 81994cb2b8b32453a92bcb011830fcb884f22ff3 makes
impGetTransparence() return alpha instead of transparence. So,
rename the function and skip reverting the result to obtain the
alpha value.

Change-Id: Ied3bf8ae4a0de2ae36074dba9f78ccc93480b15a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164322
Reviewed-by: Noel Grandin 
Reviewed-by: Patrick Luby 
Tested-by: Patrick Luby 
(cherry picked from commit b4caea04cb63cbdc25bab871a5b20aa16e2f3a77)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164371
Tested-by: Jenkins

diff --git a/drawinglayer/inc/texture/texture3d.hxx 
b/drawinglayer/inc/texture/texture3d.hxx
index 07f4b181b2ad..1ec4df70734c 100644
--- a/drawinglayer/inc/texture/texture3d.hxx
+++ b/drawinglayer/inc/texture/texture3d.hxx
@@ -66,7 +66,7 @@ namespace drawinglayer::texture
 
 // helpers
 bool impIsValid(const basegfx::B2DPoint& rUV, sal_Int32& rX, 
sal_Int32& rY) const;
-sal_uInt8 impGetTransparence(sal_Int32 rX, sal_Int32 rY) const;
+sal_uInt8 impGetAlpha(sal_Int32 rX, sal_Int32 rY) const;
 
 public:
 GeoTexSvxBitmapEx(
diff --git a/drawinglayer/source/texture/texture3d.cxx 
b/drawinglayer/source/texture/texture3d.cxx
index 3ee751cbbda4..4cbcab9d1c5d 100644
--- a/drawinglayer/source/texture/texture3d.cxx
+++ b/drawinglayer/source/texture/texture3d.cxx
@@ -103,7 +103,7 @@ namespace drawinglayer::texture
 {
 }
 
-sal_uInt8 GeoTexSvxBitmapEx::impGetTransparence(sal_Int32 rX, 
sal_Int32 rY) const
+sal_uInt8 GeoTexSvxBitmapEx::impGetAlpha(sal_Int32 rX, sal_Int32 rY) 
const
 {
 if(mbIsAlpha)
 {
@@ -148,10 +148,10 @@ namespace drawinglayer::texture
 
 if(mbIsAlpha)
 {
-// when we have a transparence, make use of it
-const sal_uInt8 aLuminance(impGetTransparence(nX, nY));
+// when we have alpha, make use of it
+const sal_uInt8 aAlpha(impGetAlpha(nX, nY));
 
-rfOpacity = (static_cast(0xff - aLuminance) * (1.0 
/ 255.0));
+rfOpacity = (static_cast(aAlpha) * (1.0 / 255.0));
 }
 else
 {
@@ -173,8 +173,8 @@ namespace drawinglayer::texture
 if(mbIsAlpha)
 {
 // this texture has an alpha part, use it
-const sal_uInt8 aLuminance(impGetTransparence(nX, nY));
-const double fNewOpacity(static_cast(0xff - 
aLuminance) * (1.0 / 255.0));
+const sal_uInt8 aAlpha(impGetAlpha(nX, nY));
+const double fNewOpacity(static_cast(aAlpha) * 
(1.0 / 255.0));
 
 rfOpacity = 1.0 - ((1.0 - fNewOpacity) * (1.0 - 
rfOpacity));
 }


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

2024-03-04 Thread Miklos Vajna (via logerrit)
 sc/qa/filter/html/html.cxx|   37 +
 sc/source/filter/html/htmlexp.cxx |   22 ++
 2 files changed, 59 insertions(+)

New commits:
commit 69f4c84a5183d1a76ada9a8ed19de43b09130792
Author: Miklos Vajna 
AuthorDate: Fri Mar 1 14:14:33 2024 +0100
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 16:08:45 2024 +0100

tdf#159483 sc HTML copy: handle data-sheets-value attribute for the num case

Type 1000 and 2000 into cells in Calc, format them as e.g. a HUF
currency, the resulting formatted strings can be copied to google
sheets, but the SUM() on them will be 0 (and not 3000).

Our own import knows how to read metadata to get the original float
value, but our exporter didn't emit these.

Fix the problem by adding support for non-boolean float values + number
formats in the HTML export.

This is more or less export equivalent of commit
789964785a61daab5f8065f006dd7aaf843c7236 (tdf#159483 sc HTML import:
handle data-sheets-value attribute for the num case, 2024-02-09).

Change-Id: I5acb3724367ce38bd96056dbe4f846cd7bbc5fe2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164213
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 
(cherry picked from commit 17581e684ca701bfd96ed2bf16aa14c3903b74d4)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164278
Reviewed-by: Xisco Fauli 

diff --git a/sc/qa/filter/html/html.cxx b/sc/qa/filter/html/html.cxx
index fb9a436c72a0..916dd23981ec 100644
--- a/sc/qa/filter/html/html.cxx
+++ b/sc/qa/filter/html/html.cxx
@@ -239,6 +239,43 @@ CPPUNIT_TEST_FIXTURE(Test, testCopyBoolean)
 assertXPath(pHtmlDoc, "(//td)[1]"_ostr, "data-sheets-value"_ostr, "{ 
\"1\": 4, \"4\": 1}");
 assertXPath(pHtmlDoc, "(//td)[2]"_ostr, "data-sheets-value"_ostr, "{ 
\"1\": 4, \"4\": 0}");
 }
+
+CPPUNIT_TEST_FIXTURE(Test, testCopyFormattedNumber)
+{
+// Given a document with formatted numbers in A1-A2:
+createScDoc();
+ScDocument* pDoc = getScDoc();
+sal_Int32 nCheckPos;
+SvNumFormatType nType;
+sal_uInt32 nFormat;
+OUString aNumberFormat("#,##0.00");
+SvNumberFormatter* pFormatter = pDoc->GetFormatTable();
+pFormatter->PutEntry(aNumberFormat, nCheckPos, nType, nFormat);
+ScAddress aCellPos1(/*nColP=*/0, /*nRowP=*/0, /*nTabP=*/0);
+pDoc->SetNumberFormat(aCellPos1, nFormat);
+pDoc->SetString(aCellPos1, "1000");
+ScAddress aCellPos2(/*nColP=*/0, /*nRowP=*/1, /*nTabP=*/0);
+pDoc->SetNumberFormat(aCellPos2, nFormat);
+pDoc->SetString(aCellPos2, "2000");
+
+// When copying those values:
+ScImportExport aExporter(*pDoc, ScRange(aCellPos1, aCellPos2));
+SvMemoryStream aStream;
+CPPUNIT_ASSERT(aExporter.ExportStream(aStream, OUString(), 
SotClipboardFormatId::HTML));
+
+// Then make sure the values are numbers:
+aStream.Seek(0);
+htmlDocUniquePtr pHtmlDoc = parseHtmlStream();
+// Without the accompanying fix in place, this test would have failed with:
+// - XPath '(//td)[1]' no attribute 'data-sheets-value' exist
+// i.e. only a formatted number string was written, without a float value.
+assertXPath(pHtmlDoc, "(//td)[1]"_ostr, "data-sheets-value"_ostr, "{ 
\"1\": 3, \"3\": 1000}");
+assertXPath(pHtmlDoc, "(//td)[1]"_ostr, "data-sheets-numberformat"_ostr,
+"{ \"1\": 2, \"2\": \"#,##0.00\", \"3\": 1}");
+assertXPath(pHtmlDoc, "(//td)[2]"_ostr, "data-sheets-value"_ostr, "{ 
\"1\": 3, \"3\": 2000}");
+assertXPath(pHtmlDoc, "(//td)[2]"_ostr, "data-sheets-numberformat"_ostr,
+"{ \"1\": 2, \"2\": \"#,##0.00\", \"3\": 1}");
+}
 }
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sc/source/filter/html/htmlexp.cxx 
b/sc/source/filter/html/htmlexp.cxx
index 1e5dcf24b6c5..c2554b7612f1 100644
--- a/sc/source/filter/html/htmlexp.cxx
+++ b/sc/source/filter/html/htmlexp.cxx
@@ -1146,6 +1146,7 @@ void ScHTMLExport::WriteCell( sc::ColumnBlockPosition& 
rBlockPos, SCCOL nCol, SC
 nFormat, *pFormatter, ));
 
 std::optional oJson;
+const SvNumberformat* pNumberFormat = nullptr;
 if (bValueData)
 {
 if (nFormat)
@@ -1161,6 +1162,14 @@ void ScHTMLExport::WriteCell( sc::ColumnBlockPosition& 
rBlockPos, SCCOL nCol, SC
 oJson->put("1", static_cast(4));
 oJson->put("4", static_cast(fVal));
 }
+else
+{
+// 3 is number.
+oJson.emplace();
+oJson->put("1", static_cast(3));
+oJson->put("3", static_cast(fVal));
+pNumberFormat = pFormatEntry;
+}
 }
 }
 }
@@ -1179,6 +1188,19 @@ void ScHTMLExport::WriteCell( sc::ColumnBlockPosition& 
rBlockPos, SCCOL nCol, SC
   + HTMLOutFuncs::ConvertStringToHTML(aJsonString) + "\"");
 }
 
+if (pNumberFormat)
+{
+// 

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

2024-03-04 Thread Caolán McNamara (via logerrit)
 sd/source/ui/animations/CustomAnimationList.cxx |8 
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit e05179628e3d6855451bcd7e861b25b25ce765d0
Author: Caolán McNamara 
AuthorDate: Sun Mar 3 21:00:23 2024 +
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 16:08:02 2024 +0100

Resolves: tdf#159854 Trigger text is black on dark grey in Animation sidebar

in dark mode

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

diff --git a/sd/source/ui/animations/CustomAnimationList.cxx 
b/sd/source/ui/animations/CustomAnimationList.cxx
index 39b3d488d2ad..bb08f33c4411 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -310,12 +310,10 @@ void 
CustomAnimationListEntryItem::PaintTrigger(vcl::RenderContext& rRenderConte
 
 ::tools::Rectangle aOutRect(rRect);
 
-// fill the background
-Color 
aColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogColor());
-
 rRenderContext.Push();
-rRenderContext.SetFillColor(aColor);
+
rRenderContext.SetFillColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogColor());
 rRenderContext.SetLineColor();
+// fill the background with the dialog bg color
 rRenderContext.DrawRect(aOutRect);
 
 // Erase the four corner pixels to make the rectangle appear rounded.
@@ -335,6 +333,8 @@ void 
CustomAnimationListEntryItem::PaintTrigger(vcl::RenderContext& rRenderConte
 aOutRect.AdjustTop( nVertBorder );
 aOutRect.AdjustBottom( -nVertBorder );
 
+// Draw the text with the dialog text color
+
rRenderContext.SetTextColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogTextColor());
 rRenderContext.DrawText(aOutRect, 
rRenderContext.GetEllipsisString(msDescription, aOutRect.GetWidth()));
 rRenderContext.Pop();
 }


core.git: Branch 'libreoffice-7-6' - sd/source

2024-03-04 Thread Caolán McNamara (via logerrit)
 sd/source/ui/animations/CustomAnimationList.cxx |8 
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit 1240e6ab49b4d2e8c6f61b94e92ec8a3ed430fbe
Author: Caolán McNamara 
AuthorDate: Sun Mar 3 21:00:23 2024 +
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 16:08:13 2024 +0100

Resolves: tdf#159854 Trigger text is black on dark grey in Animation sidebar

in dark mode

Change-Id: I2cbf9b7d14a501c309a02dd3080511f527f9e1d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164277
Reviewed-by: Caolán McNamara 
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/sd/source/ui/animations/CustomAnimationList.cxx 
b/sd/source/ui/animations/CustomAnimationList.cxx
index fecbfa38c52e..c90ed9426cd6 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -310,12 +310,10 @@ void 
CustomAnimationListEntryItem::PaintTrigger(vcl::RenderContext& rRenderConte
 
 ::tools::Rectangle aOutRect(rRect);
 
-// fill the background
-Color 
aColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogColor());
-
 rRenderContext.Push();
-rRenderContext.SetFillColor(aColor);
+
rRenderContext.SetFillColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogColor());
 rRenderContext.SetLineColor();
+// fill the background with the dialog bg color
 rRenderContext.DrawRect(aOutRect);
 
 // Erase the four corner pixels to make the rectangle appear rounded.
@@ -335,6 +333,8 @@ void 
CustomAnimationListEntryItem::PaintTrigger(vcl::RenderContext& rRenderConte
 aOutRect.AdjustTop( nVertBorder );
 aOutRect.AdjustBottom( -nVertBorder );
 
+// Draw the text with the dialog text color
+
rRenderContext.SetTextColor(rRenderContext.GetSettings().GetStyleSettings().GetDialogTextColor());
 rRenderContext.DrawText(aOutRect, 
rRenderContext.GetEllipsisString(msDescription, aOutRect.GetWidth()));
 rRenderContext.Pop();
 }


core.git: svx/source

2024-03-04 Thread Caolán McNamara (via logerrit)
 svx/source/form/labelitemwindow.cxx |2 ++
 1 file changed, 2 insertions(+)

New commits:
commit 82bfc24c9ceb00a730580ad9338ead2f64437d05
Author: Caolán McNamara 
AuthorDate: Mon Mar 4 10:57:18 2024 +
Commit: Caolán McNamara 
CommitDate: Mon Mar 4 20:26:08 2024 +0100

GLib-GObject-CRITICAL **: gsignal.c:2778: instance X has no handler with id 
Y

Change-Id: I4fbbd4af0ed1605874e2ef2694ecda0a9e107a07
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164332
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/svx/source/form/labelitemwindow.cxx 
b/svx/source/form/labelitemwindow.cxx
index c9afd1534acc..91d9f99c0ce9 100644
--- a/svx/source/form/labelitemwindow.cxx
+++ b/svx/source/form/labelitemwindow.cxx
@@ -58,7 +58,9 @@ OUString LabelItemWindow::get_label() const { return 
m_xLabel->get_label(); }
 
 void LabelItemWindow::dispose()
 {
+m_xImage.reset();
 m_xLabel.reset();
+m_xBox.reset();
 InterimItemWindow::dispose();
 }
 


core.git: 2 commits - include/static static/source udkapi/org unotest/source

2024-03-04 Thread Stephan Bergmann (via logerrit)
 include/static/unoembindhelpers/PrimaryBindings.hxx |   13 +
 static/source/embindmaker/embindmaker.cxx   |1 
 static/source/unoembindhelpers/PrimaryBindings.cxx  |  172 -
 udkapi/org/libreoffice/embindtest/XTest.idl |   36 +++
 unotest/source/embindtest/embindtest.cxx|  182 ++
 unotest/source/embindtest/embindtest.js |  201 
 6 files changed, 558 insertions(+), 47 deletions(-)

New commits:
commit 0bab5cda2123ecc7f3775d05ca5103bdef23bfe8
Author: Stephan Bergmann 
AuthorDate: Fri Mar 1 14:30:38 2024 +0100
Commit: Stephan Bergmann 
CommitDate: Mon Mar 4 21:43:09 2024 +0100

Add Embing'ing of UNO Any getter for enums

...which taps into the internals of emscripten::val, which is based on
std::type_info identifiers, so we need an additional statically-built 
mapping
between UNO (enum, for now) types and std::type_info

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

diff --git a/include/static/unoembindhelpers/PrimaryBindings.hxx 
b/include/static/unoembindhelpers/PrimaryBindings.hxx
index 80b55d5278ac..13ddd05cce26 100644
--- a/include/static/unoembindhelpers/PrimaryBindings.hxx
+++ b/include/static/unoembindhelpers/PrimaryBindings.hxx
@@ -14,11 +14,14 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 
 #include 
 #include 
+#include 
+#include 
 #include 
 
 template  struct 
emscripten::smart_ptr_trait>
@@ -33,6 +36,11 @@ template  struct 
emscripten::smart_ptr_trait>
 
 namespace unoembindhelpers
 {
+namespace detail
+{
+void registerUnoType(css::uno::Type const& type, std::type_info const* id);
+}
+
 enum class uno_Reference
 {
 FromAny
@@ -76,6 +84,11 @@ void checkSequenceAccess(css::uno::Sequence const& 
sequence, sal_Int32 index)
 }
 }
 
+template  void registerUnoType()
+{
+detail::registerUnoType(cppu::UnoType::get(), (T));
+}
+
 template  void registerSequence(char const* name)
 {
 emscripten::class_>(name)
diff --git a/static/source/embindmaker/embindmaker.cxx 
b/static/source/embindmaker/embindmaker.cxx
index 89fdf834ea1d..36b1f56fd5a3 100644
--- a/static/source/embindmaker/embindmaker.cxx
+++ b/static/source/embindmaker/embindmaker.cxx
@@ -849,6 +849,7 @@ SAL_IMPLEMENT_MAIN()
<< mem.name << ")";
 }
 cppOut << ";
";
+cppOut << "::unoembindhelpers::registerUnoType<" << 
cppName(enm) << ">();
";
 dumpRegisterFunctionEpilog(cppOut, n);
 }
 std::set sequences;
diff --git a/static/source/unoembindhelpers/PrimaryBindings.cxx 
b/static/source/unoembindhelpers/PrimaryBindings.cxx
index 5b76b549cb13..7cf99c523f0d 100644
--- a/static/source/unoembindhelpers/PrimaryBindings.cxx
+++ b/static/source/unoembindhelpers/PrimaryBindings.cxx
@@ -31,6 +31,7 @@
 #include 
 #include 
 #include 
+#include 
 
 using namespace emscripten;
 using namespace css::uno;
@@ -166,6 +167,31 @@ Reference getCurrentModelFromViewSh()
 }
 return pSh->GetCurrentDocument();
 }
+
+struct LessType
+{
+bool operator()(css::uno::Type const& type1, css::uno::Type const& type2) 
const
+{
+return type1.getTypeLibType() < type2.getTypeLibType();
+}
+};
+
+std::map unoTypes;
+
+std::type_info const* getTypeId(css::uno::Type const& type)
+{
+auto const i = unoTypes.find(type);
+if (i == unoTypes.end())
+{
+throw std::runtime_error("unregistered UNO type");
+}
+return i->second;
+}
+}
+
+namespace unoembindhelpers::detail
+{
+void registerUnoType(css::uno::Type const& type, std::type_info const* id) { 
unoTypes[type] = id; }
 }
 
 EMSCRIPTEN_BINDINGS(PrimaryBindings)
@@ -263,7 +289,12 @@ EMSCRIPTEN_BINDINGS(PrimaryBindings)
 case css::uno::TypeClass_SEQUENCE:
 return emscripten::val::undefined(); //TODO
 case css::uno::TypeClass_ENUM:
-return emscripten::val::undefined(); //TODO
+{
+emscripten::internal::WireTypePack argv(
+std::move(*static_cast(self.getValue(;
+return emscripten::val::take_ownership(
+_emval_take_value(getTypeId(self.getValueType()), 
argv));
+}
 case css::uno::TypeClass_STRUCT:
 return emscripten::val::undefined(); //TODO
 case css::uno::TypeClass_EXCEPTION:
diff --git a/unotest/source/embindtest/embindtest.js 
b/unotest/source/embindtest/embindtest.js
index ab50c859e13e..d391f5bd15f5 100644
--- a/unotest/source/embindtest/embindtest.js
+++ b/unotest/source/embindtest/embindtest.js
@@ -265,7 +265,7 @@ Module.addOnPostRun(function() {
 {
 let v = test.getAnyEnum();
 console.log(v);
-//TODO: console.assert(v.get() === 

core.git: include/static static/source unotest/source

2024-03-04 Thread Stephan Bergmann (via logerrit)
 include/static/unoembindhelpers/PrimaryBindings.hxx |1 
 static/source/embindmaker/embindmaker.cxx   |1 
 static/source/unoembindhelpers/PrimaryBindings.cxx  |   35 ++--
 unotest/source/embindtest/embindtest.js |   18 +-
 4 files changed, 44 insertions(+), 11 deletions(-)

New commits:
commit 893af92ae990909d477434d48d97dae0814e7e58
Author: Stephan Bergmann 
AuthorDate: Fri Mar 1 15:34:48 2024 +0100
Commit: Stephan Bergmann 
CommitDate: Mon Mar 4 21:43:18 2024 +0100

Add Embind'ing of UNO Any getter for sequences

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

diff --git a/include/static/unoembindhelpers/PrimaryBindings.hxx 
b/include/static/unoembindhelpers/PrimaryBindings.hxx
index 13ddd05cce26..259c9c2944f8 100644
--- a/include/static/unoembindhelpers/PrimaryBindings.hxx
+++ b/include/static/unoembindhelpers/PrimaryBindings.hxx
@@ -125,6 +125,7 @@ template  void registerSequence(char const* 
name)
 checkSequenceAccess(self, index);
 self.getArray()[index] = value;
 });
+registerUnoType>();
 }
 }
 
diff --git a/static/source/embindmaker/embindmaker.cxx 
b/static/source/embindmaker/embindmaker.cxx
index 36b1f56fd5a3..a0ea41eddf97 100644
--- a/static/source/embindmaker/embindmaker.cxx
+++ b/static/source/embindmaker/embindmaker.cxx
@@ -864,6 +864,7 @@ SAL_IMPLEMENT_MAIN()
<< jsName(str) << "\")";
 dumpStructMembers(cppOut, mgr, str, strEnt);
 cppOut << ";
";
+cppOut << "::unoembindhelpers::registerUnoType<" << 
cppName(str) << ">();
";
 dumpRegisterFunctionEpilog(cppOut, n);
 for (auto const& mem : strEnt->getDirectMembers())
 {
diff --git a/static/source/unoembindhelpers/PrimaryBindings.cxx 
b/static/source/unoembindhelpers/PrimaryBindings.cxx
index 7cf99c523f0d..21fe4c1cd66f 100644
--- a/static/source/unoembindhelpers/PrimaryBindings.cxx
+++ b/static/source/unoembindhelpers/PrimaryBindings.cxx
@@ -26,7 +26,10 @@
 #include 
 #include 
 #include 
+#include 
+#include 
 
+#include 
 #include 
 #include 
 #include 
@@ -151,6 +154,21 @@ OString toUtf8(OUString const& string)
 return s;
 }
 
+void copyStruct(typelib_CompoundTypeDescription* desc, void const* source, 
void* dest)
+{
+if (desc->pBaseTypeDescription != nullptr)
+{
+copyStruct(desc->pBaseTypeDescription, source, dest);
+}
+for (sal_Int32 i = 0; i != desc->nMembers; ++i)
+{
+uno_type_copyData(
+static_cast(dest) + desc->pMemberOffsets[i],
+const_cast(static_cast(source) + 
desc->pMemberOffsets[i]),
+desc->ppTypeRefs[i], cpp_acquire);
+}
+}
+
 template  void registerInOutParam(char const* name)
 {
 
class_>(name).constructor().constructor().property(
@@ -287,7 +305,11 @@ EMSCRIPTEN_BINDINGS(PrimaryBindings)
 case css::uno::TypeClass_TYPE:
 return 
emscripten::val(*o3tl::forceAccess(self));
 case css::uno::TypeClass_SEQUENCE:
-return emscripten::val::undefined(); //TODO
+{
+emscripten::internal::WireTypePack argv(self.getValue());
+return emscripten::val::take_ownership(
+_emval_take_value(getTypeId(self.getValueType()), 
argv));
+}
 case css::uno::TypeClass_ENUM:
 {
 emscripten::internal::WireTypePack argv(
@@ -296,7 +318,16 @@ EMSCRIPTEN_BINDINGS(PrimaryBindings)
 _emval_take_value(getTypeId(self.getValueType()), 
argv));
 }
 case css::uno::TypeClass_STRUCT:
-return emscripten::val::undefined(); //TODO
+{
+css::uno::TypeDescription 
desc(self.getValueType().getTypeLibType());
+assert(desc.is());
+auto const td = 
reinterpret_cast(desc.get());
+auto const copy = std::malloc(td->aBase.aBase.nSize);
+copyStruct(>aBase, self.getValue(), copy);
+emscripten::internal::WireTypePack argv(std::move(copy));
+return emscripten::val::take_ownership(
+_emval_take_value(getTypeId(self.getValueType()), 
argv));
+}
 case css::uno::TypeClass_EXCEPTION:
 return emscripten::val::undefined(); //TODO
 case css::uno::TypeClass_INTERFACE:
diff --git a/unotest/source/embindtest/embindtest.js 
b/unotest/source/embindtest/embindtest.js
index d391f5bd15f5..cc9e691a65d6 100644
--- a/unotest/source/embindtest/embindtest.js
+++ b/unotest/source/embindtest/embindtest.js
@@ -248,12 +248,12 @@ Module.addOnPostRun(function() {
 {

core.git: sc/qa

2024-03-04 Thread Xisco Fauli (via logerrit)
 sc/qa/unit/uicalc/data/tdf158802.xlsx |binary
 sc/qa/unit/uicalc/uicalc.cxx  |   20 
 2 files changed, 20 insertions(+)

New commits:
commit a08cc309529c7bded0e4898ef638ca7bdc8c140f
Author: Xisco Fauli 
AuthorDate: Mon Mar 4 11:51:40 2024 +0100
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 19:57:04 2024 +0100

tdf#158802: sc_uicalc: Add unittest

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

diff --git a/sc/qa/unit/uicalc/data/tdf158802.xlsx 
b/sc/qa/unit/uicalc/data/tdf158802.xlsx
new file mode 100644
index ..82f9c9fe14a3
Binary files /dev/null and b/sc/qa/unit/uicalc/data/tdf158802.xlsx differ
diff --git a/sc/qa/unit/uicalc/uicalc.cxx b/sc/qa/unit/uicalc/uicalc.cxx
index af9fb5511d5e..1bf9dfc12883 100644
--- a/sc/qa/unit/uicalc/uicalc.cxx
+++ b/sc/qa/unit/uicalc/uicalc.cxx
@@ -1700,6 +1700,26 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf86166)
 CPPUNIT_ASSERT_EQUAL(static_cast(1), pDoc->GetTableCount());
 }
 
+CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf158802)
+{
+createScDoc("tdf158802.xlsx");
+ScDocument* pDoc = getScDoc();
+
+CPPUNIT_ASSERT_EQUAL(static_cast(2), pDoc->GetTableCount());
+
+uno::Sequence aArgs(
+comphelper::InitPropertySequence({ { "Index", uno::Any(sal_uInt16(0)) 
} }));
+
+dispatchCommand(mxComponent, ".uno:Remove", aArgs);
+
+CPPUNIT_ASSERT_EQUAL(static_cast(1), pDoc->GetTableCount());
+
+// Without the fix in place, this test would have crashed here
+dispatchCommand(mxComponent, ".uno:Undo", aArgs);
+
+CPPUNIT_ASSERT_EQUAL(static_cast(2), pDoc->GetTableCount());
+}
+
 CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf149502_HangOnDeletingSheet1)
 {
 createScDoc("tdf149502_HangOnDeletingSheet1.ods");


core.git: sw/qa

2024-03-04 Thread Xisco Fauli (via logerrit)
 sw/qa/uitest/data/tdf150443.docx|binary
 sw/qa/uitest/writer_tests8/tdf150443.py |4 +---
 2 files changed, 1 insertion(+), 3 deletions(-)

New commits:
commit 2eba8bb8d43d39eb229a81947907e70f50859a76
Author: Xisco Fauli 
AuthorDate: Mon Mar 4 17:40:48 2024 +0100
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 22:46:36 2024 +0100

tdf#150443: replace missing fonts in testfile

This commit reverts 0b21e2a404c114529376dc50764dc0286dafc745
"sw: UITest_writer_tests8 test_tdf150443 more tolerant"

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

diff --git a/sw/qa/uitest/data/tdf150443.docx b/sw/qa/uitest/data/tdf150443.docx
index 162aec01f928..f1897c4712aa 100644
Binary files a/sw/qa/uitest/data/tdf150443.docx and 
b/sw/qa/uitest/data/tdf150443.docx differ
diff --git a/sw/qa/uitest/writer_tests8/tdf150443.py 
b/sw/qa/uitest/writer_tests8/tdf150443.py
index 1dbb74b58918..fb39bd8a0375 100644
--- a/sw/qa/uitest/writer_tests8/tdf150443.py
+++ b/sw/qa/uitest/writer_tests8/tdf150443.py
@@ -26,9 +26,7 @@ class tdf150443(UITestCase):
 xsearch = xDialog.getChild("search")
 xsearch.executeAction("CLICK", tuple())  #first search
 xToolkit.processEventsToIdle()
-page = get_state_as_dict(xWriterEdit)["CurrentPage"]
-# page may depend on font substitution, just check it moved
-self.assertTrue(page == "4" or page == "5")
+
self.assertEqual(get_state_as_dict(xWriterEdit)["CurrentPage"], "4")
 
 # reject the tracked table row in Manage Changes dialog window
 with 
self.ui_test.execute_modeless_dialog_through_command(".uno:AcceptTrackedChanges",
 close_button="close") as xTrackDlg:


core.git: cui/source cui/uiconfig editeng/source include/editeng include/unotools include/xmloff offapi/com offapi/UnoApi_offapi.mk svx/sdi sw/CppunitTest_sw_odfexport2.mk sw/inc sw/qa sw/source xmlof

2024-03-04 Thread László Németh (via logerrit)
 cui/source/inc/paragrph.hxx   |5 
 cui/source/tabpages/paragrph.cxx  |   37 -
 cui/uiconfig/ui/textflowpage.ui   |  100 --
 editeng/source/items/paraitem.cxx |   32 
 include/editeng/editrids.hrc  |5 
 include/editeng/hyphenzoneitem.hxx|4 
 include/editeng/memberids.h   |1 
 include/unotools/linguprops.hxx   |2 
 include/xmloff/xmltypes.hxx   |1 
 offapi/UnoApi_offapi.mk   |1 
 offapi/com/sun/star/style/ParagraphProperties.idl |8 +
 offapi/com/sun/star/text/ParagraphHyphenationKeepType.idl |   63 
 svx/sdi/svxitems.sdi  |1 
 sw/CppunitTest_sw_odfexport2.mk   |1 
 sw/inc/inspectorproperties.hrc|1 
 sw/inc/unoprnms.hxx   |1 
 sw/qa/extras/odfexport/data/tdf132599_auto.fodt   |   49 ++
 sw/qa/extras/odfexport/data/tdf132599_page.fodt   |   49 ++
 sw/qa/extras/odfexport/odfexport2.cxx |   27 +++
 sw/qa/uitest/styleInspector/styleInspector.py |   20 +-
 sw/qa/uitest/styleInspector/tdf137513.py  |2 
 sw/source/core/text/inftxt.cxx|   16 +-
 sw/source/core/text/itrform2.cxx  |1 
 sw/source/core/text/porlay.hxx|3 
 sw/source/core/text/widorp.cxx|   42 +
 sw/source/core/unocore/unomapproperties.hxx   |2 
 sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx |1 
 xmloff/inc/xmlprop.hxx|1 
 xmloff/source/text/txtprhdl.cxx   |   13 +
 xmloff/source/text/txtprmap.cxx   |1 
 30 files changed, 423 insertions(+), 67 deletions(-)

New commits:
commit 9574a62add8e4901405e12117e75c86c2d2c2f21
Author: László Németh 
AuthorDate: Thu Feb 29 14:07:34 2024 +0100
Commit: László Németh 
CommitDate: Mon Mar 4 23:39:51 2024 +0100

tdf#132599 cui offapi sw xmloff: implement hyphenate-keep

Both parts of a hyphenated word shall lie within a single
page with ODF paragraph setting fo:hyphenation-keep="page".
The implementation follows the default page layout of
MSO 2016 and newer by shifting the bottom hyphenated line
to the next page (and to the next column, see last note).

Note: this is a MSO DOCX interoperability feature, used
also in DTP software, XSL and CSS.

* Add checkbox/combobox to Text Flow in paragraph dialog
* Store property in paragraph model 
(com::sun::star::style::ParagraphProperties::ParaHyphenationKeep)
* Add ODF import/export
* Add ODF unit tests

New constants of com::sun::star::text::ParagraphHyphenationKeepType,
containing ODF AUTO and PAGE (borrowed from XSL), and for the
planned extension ParaHyphenationKeepType of ParagraphProperties:

– COLUMN (standard XSL value, defined in
  https://www.w3.org/TR/2001/REC-xsl-20011015/slice7.html#hyphenation-keep)

– SPREAD and ALWAYS (CSS 4 values of hyphenate-limit-last,
  equivalent of hyphenation-keep, defined in
  https://www.w3.org/TR/css-text-4/#hyphenate-line-limits).

Note: the implementation truncates only a single hyphenated
line, like MSO does: the pages can end in hyphenated
lines (i.e. in the case of consecutive hyphenated lines),
but less often, than before.

Clean-up hyphenation dialog by collecting "Don't hyphenate"
options at the end of the hyphenation settings, and negating them
(similar to MSO and DTP), adding also the new option
"Hyphenate across column and page":

[x] Hyphenate words in CAPS
[x] Hyphenate last word
[x] Hyphenate across column and page

Note: ODF fo:hyphenation-keep has got only "auto" and
"page" attributes, while XSL defines also "column".
Because of the interoperability with MSO and DTP,
fo:hyphenation-keep="page" is interpreted as
XSL "column", avoiding hyphenation at the end
of column, not only at the end of page.

Change-Id: I5c6b7adc0671a5a790568e7bf1d33256e607f85f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164158
Tested-by: László Németh 
Reviewed-by: László Németh 

diff --git a/cui/source/inc/paragrph.hxx b/cui/source/inc/paragrph.hxx
index 9e78c8311015..0972203be73f 100644
--- a/cui/source/inc/paragrph.hxx
+++ b/cui/source/inc/paragrph.hxx
@@ -223,6 +223,7 @@ private:
 weld::TriStateEnabled aKeepParaState;
 weld::TriStateEnabled aOrphanState;
 weld::TriStateEnabled aWidowState;
+weld::TriStateEnabled aKeepState;
 
 

core.git: solenv/gbuild

2024-03-04 Thread Noel Grandin (via logerrit)
 solenv/gbuild/extensions/pre_MergedLibsList.mk |1 +
 1 file changed, 1 insertion(+)

New commits:
commit 9b12ca7776533ab33b87943a7966ace1d3230def
Author: Noel Grandin 
AuthorDate: Mon Mar 4 15:40:01 2024 +0200
Commit: Noel Grandin 
CommitDate: Mon Mar 4 20:25:18 2024 +0100

add wpftcalc to --enable-mergelibs=more

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

diff --git a/solenv/gbuild/extensions/pre_MergedLibsList.mk 
b/solenv/gbuild/extensions/pre_MergedLibsList.mk
index 2d1a397c757a..c2709218c6ad 100644
--- a/solenv/gbuild/extensions/pre_MergedLibsList.mk
+++ b/solenv/gbuild/extensions/pre_MergedLibsList.mk
@@ -182,6 +182,7 @@ gb_MERGE_LIBRARY_LIST += \
$(if $(ENABLE_LIBCMIS),ucpcmis1) \
$(if $(WITH_WEBDAV),ucpdav1) \
ucppkg1 \
+   wpftcalc \
wpftdraw \
wpftimpress \
wpftwriter \


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

2024-03-04 Thread Regina Henschel (via logerrit)
 sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods |binary
 sc/qa/unit/scshapetest.cxx |   24 +
 sc/source/core/data/drwlayer.cxx   |2 -
 3 files changed, 25 insertions(+), 1 deletion(-)

New commits:
commit 5ad993b4167fb93f565dc1bce6eb1057e60f62f3
Author: Regina Henschel 
AuthorDate: Sun Mar 3 17:19:49 2024 +0100
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 22:02:55 2024 +0100

tdf#160003 use correct sheet in clipboard for test

..whether a page anchored object is contained in the to be copied area.

Change-Id: I816e342770332e6d751b57a38e5ebabe33feb16a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164307
Tested-by: Jenkins
Reviewed-by: Regina Henschel 
(cherry picked from commit 199523b553957936dc31b8c3556ef2e47c6bc3a1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164373
Reviewed-by: Xisco Fauli 

diff --git a/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods 
b/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods
new file mode 100644
index ..565eb1bf6a26
Binary files /dev/null and 
b/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods differ
diff --git a/sc/qa/unit/scshapetest.cxx b/sc/qa/unit/scshapetest.cxx
index b5083544f114..5e4827005388 100644
--- a/sc/qa/unit/scshapetest.cxx
+++ b/sc/qa/unit/scshapetest.cxx
@@ -1207,6 +1207,30 @@ CPPUNIT_TEST_FIXTURE(ScShapeTest, 
testTdf154821_shape_in_group)
 CPPUNIT_ASSERT_RECTANGLE_EQUAL_WITH_TOLERANCE(aRectOrig, aRectReload, 1);
 }
 
+CPPUNIT_TEST_FIXTURE(ScShapeTest, testTdf160003_copy_page_anchored)
+{
+// Load a document, which has a chart anchored to page on sheet2. 
Copy to other document
+// had lost the chart object.
+createScDoc("ods/tdf160003_page_anchored_object.ods");
+
+// copy range with chart
+goToCell("$Sheet2.$A$1:$L$24");
+dispatchCommand(mxComponent, ".uno:Copy", {});
+
+// close document and create new one
+createScDoc();
+
+// paste clipboard
+goToCell("$Sheet1.$A$1");
+dispatchCommand(mxComponent, ".uno:Paste", {});
+
+// Make sure the chart object exists.
+ScDocument* pDoc = getScDoc();
+ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer();
+const SdrPage* pPage = pDrawLayer->GetPage(0);
+CPPUNIT_ASSERT_EQUAL(size_t(1), pPage->GetObjCount());
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/core/data/drwlayer.cxx b/sc/source/core/data/drwlayer.cxx
index 3f98fc770a6b..25dfc5c7d6cc 100644
--- a/sc/source/core/data/drwlayer.cxx
+++ b/sc/source/core/data/drwlayer.cxx
@@ -1990,7 +1990,7 @@ void ScDrawLayer::CopyFromClip(ScDrawLayer* pClipModel, 
SCTAB nSourceTab,
 }
 else // Object is anchored to page.
 {
-aSrcObjStart = pClipDoc->GetRange(nClipTab, 
pOldObject->GetCurrentBoundRect()).aStart;
+aSrcObjStart = pClipDoc->GetRange(nSourceTab, 
pOldObject->GetCurrentBoundRect()).aStart;
 }
 if (!rSourceRange.Contains(aSrcObjStart))
 {


core.git: Branch 'libreoffice-7-6' - sc/qa sc/source

2024-03-04 Thread Regina Henschel (via logerrit)
 sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods |binary
 sc/qa/unit/scshapetest.cxx |   24 +
 sc/source/core/data/drwlayer.cxx   |2 -
 3 files changed, 25 insertions(+), 1 deletion(-)

New commits:
commit 45fb563b6e93833a4dbe31bf0b0cc0a51e83f791
Author: Regina Henschel 
AuthorDate: Sun Mar 3 17:19:49 2024 +0100
Commit: Xisco Fauli 
CommitDate: Mon Mar 4 22:02:49 2024 +0100

tdf#160003 use correct sheet in clipboard for test

..whether a page anchored object is contained in the to be copied area.

Change-Id: I816e342770332e6d751b57a38e5ebabe33feb16a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164307
Tested-by: Jenkins
Reviewed-by: Regina Henschel 
(cherry picked from commit 199523b553957936dc31b8c3556ef2e47c6bc3a1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164374
Reviewed-by: Xisco Fauli 

diff --git a/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods 
b/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods
new file mode 100644
index ..565eb1bf6a26
Binary files /dev/null and 
b/sc/qa/unit/data/ods/tdf160003_page_anchored_object.ods differ
diff --git a/sc/qa/unit/scshapetest.cxx b/sc/qa/unit/scshapetest.cxx
index b5083544f114..5e4827005388 100644
--- a/sc/qa/unit/scshapetest.cxx
+++ b/sc/qa/unit/scshapetest.cxx
@@ -1207,6 +1207,30 @@ CPPUNIT_TEST_FIXTURE(ScShapeTest, 
testTdf154821_shape_in_group)
 CPPUNIT_ASSERT_RECTANGLE_EQUAL_WITH_TOLERANCE(aRectOrig, aRectReload, 1);
 }
 
+CPPUNIT_TEST_FIXTURE(ScShapeTest, testTdf160003_copy_page_anchored)
+{
+// Load a document, which has a chart anchored to page on sheet2. 
Copy to other document
+// had lost the chart object.
+createScDoc("ods/tdf160003_page_anchored_object.ods");
+
+// copy range with chart
+goToCell("$Sheet2.$A$1:$L$24");
+dispatchCommand(mxComponent, ".uno:Copy", {});
+
+// close document and create new one
+createScDoc();
+
+// paste clipboard
+goToCell("$Sheet1.$A$1");
+dispatchCommand(mxComponent, ".uno:Paste", {});
+
+// Make sure the chart object exists.
+ScDocument* pDoc = getScDoc();
+ScDrawLayer* pDrawLayer = pDoc->GetDrawLayer();
+const SdrPage* pPage = pDrawLayer->GetPage(0);
+CPPUNIT_ASSERT_EQUAL(size_t(1), pPage->GetObjCount());
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/core/data/drwlayer.cxx b/sc/source/core/data/drwlayer.cxx
index 8e989012b4e8..23837e357203 100644
--- a/sc/source/core/data/drwlayer.cxx
+++ b/sc/source/core/data/drwlayer.cxx
@@ -1993,7 +1993,7 @@ void ScDrawLayer::CopyFromClip(ScDrawLayer* pClipModel, 
SCTAB nSourceTab,
 }
 else // Object is anchored to page.
 {
-aSrcObjStart = pClipDoc->GetRange(nClipTab, 
pOldObject->GetCurrentBoundRect()).aStart;
+aSrcObjStart = pClipDoc->GetRange(nSourceTab, 
pOldObject->GetCurrentBoundRect()).aStart;
 }
 if (!rSourceRange.Contains(aSrcObjStart))
 {


[Bug 62991] FILEOPEN existing 3.6.6.1 document: Chart data contents in embedded Calc8 spreadsheet object becomes invisible when EDITING

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=62991

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 CC||stephane.guillou@libreoffic
   ||e.org

--- Comment #13 from Stéphane Guillou (stragu) 
 ---
Testing by starting with the ODS file, I haven't been able to reproduce the
issue on Linux. I tested 4.0.0.3 to a recent trunk build.

I assume the attached ODT is irremediably broken, but have others reproduced
the issue starting with the ODS?

Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 709866a3b8e073fab4937dcf91dcd33ff1d2bc13
CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: CL threaded

No repro on Windows with 24.2 either.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159931] Exported pptx cannot be opened in PowerPoint because a referenced part does not exist

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159931

Timur  changed:

   What|Removed |Added

 CC||ti...@libreoffice.org
   Priority|medium  |high

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 54355] VIEWING: Connector copied from Draw horizontally shifted and disconnected after zoom

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=54355

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Blocks||107923
   Hardware|Other   |All
 CC||stephane.guillou@libreoffic
   ||e.org

--- Comment #18 from Stéphane Guillou (stragu) 
 ---
Reproduced in recent trunk build:

Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 709866a3b8e073fab4937dcf91dcd33ff1d2bc13
CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: CL threaded


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=107923
[Bug 107923] [META] Zoom issues
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 107923] [META] Zoom issues

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=107923

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Depends on||54355


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=54355
[Bug 54355] VIEWING: Connector copied from Draw horizontally shifted and
disconnected after zoom
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 144309] GALLERY: Flow chart elements are not connected properly after save/load or zoom in/out

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=144309

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Blocks|99649, 99671|

--- Comment #15 from Stéphane Guillou (stragu) 
 ---


*** This bug has been marked as a duplicate of bug 54355 ***


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=99649
[Bug 99649] [META] Improve Connector handling
https://bugs.documentfoundation.org/show_bug.cgi?id=99671
[Bug 99671] [META] Gallery bugs and enhancements
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 54355] VIEWING: Connector copied from Draw horizontally shifted and disconnected after zoom

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=54355

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 CC||ilija.cula...@gmail.com

--- Comment #21 from Stéphane Guillou (stragu) 
 ---
*** Bug 144309 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 99649] [META] Improve Connector handling

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=99649

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Depends on|144309  |


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=144309
[Bug 144309] GALLERY: Flow chart elements are not connected properly after
save/load or zoom in/out
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 99671] [META] Gallery bugs and enhancements

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=99671

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Depends on|144309  |


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=144309
[Bug 144309] GALLERY: Flow chart elements are not connected properly after
save/load or zoom in/out
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159817] Form controls coordinates scrambled when exporting to pdf with uncheked form creation in Writer

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159817

Noel Grandin  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 160020] New: Mnemonics underlines not visible anymore in gen VCL plugin

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=160020

Bug ID: 160020
   Summary: Mnemonics underlines not visible anymore in gen VCL
plugin
   Product: LibreOffice
   Version: 24.8.0.0 alpha0+ Master
  Hardware: x86-64 (AMD64)
OS: Linux (All)
Status: UNCONFIRMED
  Keywords: bibisected, bisected, regression
  Severity: normal
  Priority: medium
 Component: UI
  Assignee: libreoffice-bugs@lists.freedesktop.org
  Reporter: stephane.guil...@libreoffice.org
CC: mikekagan...@hotmail.com
Blocks: 85811, 98259

Mnemonics / accelerator underlines are not visible anymore in the top menu bar
for the gen VCL plugin, when they used to always be visible.
Context menus are not affected. kf5 plugin not affected.

Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 709866a3b8e073fab4937dcf91dcd33ff1d2bc13
CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: CL threaded

Before f2dfb95258215f90562617823b950c3ed151c1bf, they were always visible.
Since then, they disappeared and the tilde was visible in the inactive
elements.
The tilde issue was solved with 4d39b88283d02eb44fe4cb8f3e4ec153ebf96a13 for
bug 159976 but the mnemonics are still not visible.


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=85811
[Bug 85811] [META] Main menu bar bugs and enhancements
https://bugs.documentfoundation.org/show_bug.cgi?id=98259
[Bug 98259] [META] Keyboard shortcuts and accelerators bugs and enhancements
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159802] Writer Document does not print with Form detail in 24.2 release

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159802

Commit Notification  changed:

   What|Removed |Added

 Whiteboard||target:24.8.0

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159802] Writer Document does not print with Form detail in 24.2 release

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159802

--- Comment #9 from Commit Notification 
 ---
Noel Grandin committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/b03f1dfb15a67641bc516a1c6b5632857451a18d

tdf#159817 tdf#159802 Form controls coordinates wrong when export to pdf

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 85811] [META] Main menu bar bugs and enhancements

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=85811

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Depends on||160020


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=160020
[Bug 160020] Mnemonics underlines not visible anymore in gen VCL plugin
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 98259] [META] Keyboard shortcuts and accelerators bugs and enhancements

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=98259

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Depends on||160020


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=160020
[Bug 160020] Mnemonics underlines not visible anymore in gen VCL plugin
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159802] Writer Document does not print with Form detail in 24.2 release

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159802

Noel Grandin  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 107742] [META] Form control bugs and enhancements

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=107742
Bug 107742 depends on bug 159802, which changed state.

Bug 159802 Summary: Writer Document does not print with Form detail in 24.2 
release
https://bugs.documentfoundation.org/show_bug.cgi?id=159802

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 160020] Mnemonics underlines not visible anymore in gen VCL plugin

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=160020

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

   See Also||https://bugs.documentfounda
   ||tion.org/show_bug.cgi?id=15
   ||9976

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 107742] [META] Form control bugs and enhancements

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=107742
Bug 107742 depends on bug 159817, which changed state.

Bug 159817 Summary: Form controls coordinates scrambled when exporting to pdf 
with uncheked form creation in Writer
https://bugs.documentfoundation.org/show_bug.cgi?id=159817

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 160019] Rendering of O365 DOCX with OTF font fails with Java 21-temurin

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=160019

--- Comment #7 from Mike Kaganski  ---
Created attachment 192934
  --> https://bugs.documentfoundation.org/attachment.cgi?id=192934=edit
Side-by-side comparison of attachment 192932 vs. attachment 192933

I see no difference comparing the two PDFs.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159983] FILEOPEN ODS: Wrong text and cell background color

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159983

--- Comment #5 from Heiko Tietze  ---
(In reply to Kevin Suo from comment #4)
> Oh? It was a bug when the auto text color is unreadable in bug 156182, but
> it is not a bug when it is not readable in *this* one...
As a long-term user and contributor you know how we work. The mentioned bug
improves readability by maintaining a reasonable contrast. The example should
be striking. Your report claims that the automatic font color for some
background is not black or white anymore (which is the intended result from the
modification). Please define "not readable" here - and feel free to reopen.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 142472] Weird autocomplete for range names starting with "Ma"

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=142472

Andreas Heinisch  changed:

   What|Removed |Added

 CC||andreas.heini...@yahoo.de

--- Comment #8 from Andreas Heinisch  ---
This is due to autocomplete in used in the input field. We could disable
autocomplete in the range window, but I'm unsure of how it affects other use
cases.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 56949] FILEOPEN: Connectors lose their connections with the shapes

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=56949

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Blocks|99649   |
 CC||stephane.guillou@libreoffic
   ||e.org
   See Also|https://bugs.freedesktop.or |
   |g/show_bug.cgi?id=53336,|
   |https://bugs.documentfounda |
   |tion.org/show_bug.cgi?id=14 |
   |4309|
 Resolution|--- |DUPLICATE

--- Comment #15 from Stéphane Guillou (stragu) 
 ---
Most likely the same issue as bug 54355. Following the steps here, then zooming
in and out changes by how much it is shifted.

*** This bug has been marked as a duplicate of bug 54355 ***


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=99649
[Bug 99649] [META] Improve Connector handling
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 54355] VIEWING: Connector copied from Draw horizontally shifted and disconnected after zoom

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=54355

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 CC||chja...@live.com

--- Comment #19 from Stéphane Guillou (stragu) 
 ---
*** Bug 56949 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 99649] [META] Improve Connector handling

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=99649

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 Depends on|56949   |


Referenced Bugs:

https://bugs.documentfoundation.org/show_bug.cgi?id=56949
[Bug 56949] FILEOPEN: Connectors lose their connections with the shapes
-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 79120] FILEOPEN: Position of arrow connectors not kept when reopening a document

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=79120

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 CC||stephane.guillou@libreoffic
   ||e.org

--- Comment #4 from Stéphane Guillou (stragu) 
 ---


*** This bug has been marked as a duplicate of bug 54355 ***

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 54355] VIEWING: Connector copied from Draw horizontally shifted and disconnected after zoom

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=54355

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

 CC||bureautiquelibre@nantesmetr
   ||opole.fr

--- Comment #20 from Stéphane Guillou (stragu) 
 ---
*** Bug 79120 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 144309] GALLERY: Flow chart elements are not connected properly after save/load or zoom in/out

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=144309

Stéphane Guillou (stragu)  changed:

   What|Removed |Added

   See Also|https://bugs.documentfounda |
   |tion.org/show_bug.cgi?id=56 |
   |949 |

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159817] Form controls coordinates scrambled when exporting to pdf with uncheked form creation in Writer

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159817

--- Comment #8 from Commit Notification 
 ---
Noel Grandin committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/b03f1dfb15a67641bc516a1c6b5632857451a18d

tdf#159817 tdf#159802 Form controls coordinates wrong when export to pdf

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159817] Form controls coordinates scrambled when exporting to pdf with uncheked form creation in Writer

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159817

Commit Notification  changed:

   What|Removed |Added

 Whiteboard||target:24.8.0

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159994] comments do not place themselves in front of adjacent objects

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159994

--- Comment #4 from m_a_riosv  ---
Please attach a Calc sample file showing the issue, not the image.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 127833] Field shading in comments not properly refreshed

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=127833

--- Comment #11 from Heiko Tietze  ---
Created attachment 192935
  --> https://bugs.documentfoundation.org/attachment.cgi?id=192935=edit
Screenshot

Field shading is still always on in comments in 

Version: 24.2.0.3 (X86_64) / LibreOffice Community
Build ID: 420(Build:3)
CPU threads: 32; OS: Linux 6.7; UI render: default; VCL: kf5 (cairo+xcb)
Locale: en-IL (en_US.UTF-8); UI: en-US
24.2.0-2
Calc: threaded

(changing the application color from grey to yellow, for example, becomes
effective after reloading the document or after changing the field)

I suspect sw/source/uibase/docvw/AnnotationWin2.cxx line #371 ff to cause the
trouble.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 143344] [META] Linux Dark Mode bugs and enhancements

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=143344
Bug 143344 depends on bug 159854, which changed state.

Bug 159854 Summary: Trigger text is black on dark grey in Animation sidebar 
deck (dark mode)
https://bugs.documentfoundation.org/show_bug.cgi?id=159854

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 103437] [META] Animation deck/tab of the sidebar

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=103437
Bug 103437 depends on bug 159854, which changed state.

Bug 159854 Summary: Trigger text is black on dark grey in Animation sidebar 
deck (dark mode)
https://bugs.documentfoundation.org/show_bug.cgi?id=159854

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 160006] LibreOffice hangs (not responding) when trying to save documents

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=160006

--- Comment #3 from m_a_riosv  ---
Have you updated the graphics driver from the vendor?

In the past, I have solved some problems with OpenCL by doing this. In view of
the fact that in your configuration, LO does not enable skia by default.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159841] help icon doesn't work in styles gallery

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159841

--- Comment #1 from DuyN  ---
Created attachment 192936
  --> https://bugs.documentfoundation.org/attachment.cgi?id=192936=edit
Bug 159841

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159841] help icon doesn't work in styles gallery

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159841

--- Comment #2 from DuyN  ---
Thank you for reporting the bug. I can confirm that the bug is present in
LibreOffice 24.2.1.2 (x86_64)

Please find the attached screenshot for reference.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 159841] help icon doesn't work in styles gallery

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159841

DuyN  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever confirmed|0   |1

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 143058] FILEOPEN XSLX following SAVE from ODS when Range Names are "large:

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=143058

Andreas Heinisch  changed:

   What|Removed |Added

   See Also||https://bugs.documentfounda
   ||tion.org/show_bug.cgi?id=14
   ||8170

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 148170] Calc: setting print range with the whole column not remember in XLS/X

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=148170

Andreas Heinisch  changed:

   What|Removed |Added

   See Also||https://bugs.documentfounda
   ||tion.org/show_bug.cgi?id=14
   ||3058

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 158279] TOC links lost when converting .doc to HTML (steps in comment 5)

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=158279

--- Comment #10 from Juan Ferri  ---
Bug fixed. Thanks¡

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 160004] `File Name' Textbox in "Save as"...dialog can be "squeezed out" on window resize

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=160004

Bogaboga Man  changed:

   What|Removed |Added

  Component|Writer  |UI

--- Comment #2 from Bogaboga Man  ---
Changed component from "Writer" to "UI"

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 33603] Presenter notes should be available in normal view as a scrolling pane

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=33603

Heiko Tietze  changed:

   What|Removed |Added

   Keywords||needsUXEval

-- 
You are receiving this mail because:
You are on the CC list for the bug.

[Bug 33603] Presenter notes should be available in normal view as a scrolling pane

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=33603

--- Comment #50 from Heiko Tietze  ---
Created attachment 192937
  --> https://bugs.documentfoundation.org/attachment.cgi?id=192937=edit
Screenshot

(In reply to Sarper Akdemir (allotropia) from comment #49)
> UX/Design team: I'd appreciate some additional opinions about the behavior
> and current state. How would you like to see this notes panel end up?

As Gabor pointed out users expect the common interactions. The context menu
must not be the only way to format but an alternative to shortcuts (no ctrl+B
to make the font bold yet, for example) and toolbar/sidebar/menu. The
Properties sidebar deck changes however from editing to master attributes, I
guess not only to avoid another deck but also for convenience since it's not
possible to make the whole slide bold, for example. The only way out of the
dilemma is to add the notes panel to the contextual presentation of the deck.
And treat the notes panel like any other editing control, ie. the same context
menus and the same interactions.

Or to have zero formatting in the notes panel. But I think this wont be
accepted either.

(In reply to Gabor Kelemen (allotropia) from comment #47)
> 1. Text formatting does not work...
> 2. Pasting text from browser ...resizes font to an unreadably small size
> 4. List formatting from sidebar in main view works
> 5. Paragraph horizontal alignment formatting works
> 6. Paragraph "distance after" seems to be much larger…
Confirmed

> 3. Area fill setting does not work
Font color is not set automatically (remains white on yellow)

> 7. The downwards pointing arrow does not change...
Not confirmed (kf5, Karasa Jaga icon theme)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

[Bug 159380] close all (documents / windows) Writer

2024-03-04 Thread bugzilla-daemon
https://bugs.documentfoundation.org/show_bug.cgi?id=159380

Heiko Tietze  changed:

   What|Removed |Added

   See Also||https://bugs.documentfounda
   ||tion.org/show_bug.cgi?id=13
   ||3542

--- Comment #6 from Heiko Tietze  ---
I wonder is all means all or just all from the current module, ie. Writer. 

Related is bug 133542 "Pressing CTRL+W with a single document open closes
LibreOffice" rejected as CloseWin behaves differently from CloseDoc. Some
wisdom in bug 85978 comment 15 (File > New is not the same as Window > New).

Binding the close all function to the session idea is interesting. But then you
cannot close all (random) documents.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  1   2   3   4   >