[Libreoffice-commits] core.git: Branch 'distro/collabora/co-23.05' - sw/qa sw/source

2023-06-27 Thread Mike Kaganski (via logerrit)
 sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx 
|binary
 sw/qa/extras/ooxmlimport/ooxmlimport2.cxx   |  
 34 ++
 sw/source/core/text/itrpaint.cxx|  
  7 +-
 3 files changed, 39 insertions(+), 2 deletions(-)

New commits:
commit a4195a77ca005d866c6b055db5b21fc7dc7e2b26
Author: Mike Kaganski 
AuthorDate: Tue Jun 27 17:42:49 2023 +0300
Commit: Mike Kaganski 
CommitDate: Wed Jun 28 08:23:42 2023 +0200

tdf#156078: also consider TabOverflow for tabs outside of line bounds

Before commit 29bd00f7628e7a54e69cabcc7e2a1792c24aa55c, TabOverMargin
compat option was set for DOCX with any compat mode. After that commit,
the unset option disallowed output of content after a tab stop outside
of the paragraph indents, even within page margins.

SwTabPortion::PreFormat consults TabOverflow when checking if position
is outside the frame; so let's consult it also when painting.

Change-Id: I05ada0da6cd765c70b7bad1287ccc8c11d9b60ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153672
Tested-by: Jenkins
Reviewed-by: Mike Kaganski 
(cherry picked from commit dbfa56424f3d41bb58b7c9137f25f4ccb76dc92d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153691
Tested-by: Jenkins CollaboraOffice 

diff --git 
a/sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx 
b/sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx
new file mode 100644
index ..cc2715cf6acd
Binary files /dev/null and 
b/sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx 
differ
diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx 
b/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx
index ff96e81b8d08..cc4bb7fe00d8 100644
--- a/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx
+++ b/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx
@@ -23,6 +23,9 @@
 #include 
 #include 
 
+#include 
+#include 
+#include 
 #include 
 
 #include 
@@ -1146,6 +1149,37 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf154695)
 }
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testTdf156078)
+{
+// Given a DOCX with compat level 15, and a tab stop outside of paragraph 
right indent
+createSwDoc("tdf156078_rightTabOutsideParaRightIndent.docx");
+
+// Export it to a PNG (96 ppi)
+uno::Sequence aFilterData(
+comphelper::InitPropertySequence({ { "PixelWidth", 
uno::Any(sal_Int32(816)) },
+   { "PixelHeight", 
uno::Any(sal_Int32(1056)) } }));
+uno::Sequence 
aDescriptor(comphelper::InitPropertySequence(
+{ { "FilterName", uno::Any(OUString("writer_png_Export")) },
+  { "FilterData", uno::Any(aFilterData) } }));
+uno::Reference xStorable(mxComponent, uno::UNO_QUERY);
+xStorable->storeToURL(maTempFile.GetURL(), aDescriptor);
+CPPUNIT_ASSERT(maTempFile.IsValid());
+
+Graphic exported;
+GraphicFilter::LoadGraphic(maTempFile.GetURL(), {}, exported);
+Bitmap bmp = exported.GetBitmapEx().GetBitmap();
+Bitmap::ScopedReadAccess pAccess(bmp);
+
+// "1" must export to the top right corner; check its pixels
+bool numberPixelsFound = false;
+for (tools::Long y = 90; y < 130; ++y)
+for (tools::Long x = 680; x < 720; ++x)
+if (Color(pAccess->GetPixel(y, x)).IsDark())
+numberPixelsFound = true;
+
+CPPUNIT_ASSERT(numberPixelsFound);
+}
+
 // tests should only be added to ooxmlIMPORT *if* they fail round-tripping in 
ooxmlEXPORT
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/core/text/itrpaint.cxx b/sw/source/core/text/itrpaint.cxx
index a66d358645f0..3709e4a56869 100644
--- a/sw/source/core/text/itrpaint.cxx
+++ b/sw/source/core/text/itrpaint.cxx
@@ -146,8 +146,11 @@ void SwTextPainter::DrawTextLine( const SwRect &rPaint, 
SwSaveClip &rClip,
 // Optimization!
 SwTwips nMaxRight = std::min( rPaint.Right(), Right() );
 const SwTwips nTmpLeft = GetInfo().X();
-//compatibility setting: allow tabstop text to exceed right margin
-if 
(GetInfo().GetTextFrame()->GetDoc().getIDocumentSettingAccess().get(DocumentSettingId::TAB_OVER_MARGIN))
+//compatibility settings: allow tabstop text to exceed right margin
+const auto& iDSA = 
GetInfo().GetTextFrame()->GetDoc().getIDocumentSettingAccess();
+const bool bTabOverMargin = iDSA.get(DocumentSettingId::TAB_OVER_MARGIN);
+const bool bTabOverflow = iDSA.get(DocumentSettingId::TAB_OVERFLOW);
+if (bTabOverMargin || bTabOverflow)
 {
 SwLinePortion* pPorIter = pPor;
 while( pPorIter )


ESC meeting agenda: 2023-06-29 16:00 CEST

2023-06-27 Thread Stephan Bergmann

Hi,

The prototype agenda is below. Extra items are appreciated either in
this document or as a reply to this mail:

https://pad.documentfoundation.org/p/esc

You can join using Jitsi here:

https://jitsi.documentfoundation.org/esc

Regards,

Stephan

---

* Present:
+

* Completed Action Items:

* Pending Action Items:
  + ESC tendering: prepare the sheet with the ideas + estimates 
(Ilmari, Xisco)


* Release Engineering update (Cloph/Xisco)
+ 7.6 status: rc 1 will be in 1 week? / string / UI freeze
+ 7.5 status: 7.5.5 rc1 in this week?

* Documentation (Olivier)
+ Bugzilla Documentation statistics
274(274) bugs open
+ Updates:
BZ changes   1 week1 month   3 months   12 months
   created  7(-11)   29(0)  93(3)  308(2)
 commented 27(-1)73(12)252(11)1040(20)
  resolved  1(-2) 6(-2) 37(-1) 172(-2)
+ top 10 contributors:
  Stéphane Guillou made 40 changes in 1 month, and 259 changes 
in 1 year
  Olivier Hallot made 25 changes in 1 month, and 492 changes in 
1 year
  Seth Chaiklin made 12 changes in 1 month, and 307 changes in 
1 year
  Kaganski, Mike made 7 changes in 1 month, and 108 changes in 
1 year

  Nabet, Julien made 6 changes in 1 month, and 32 changes in 1 year
  Robert Großkopf made 4 changes in 1 month, and 14 changes in 
1 year

  Heiko Tietze made 3 changes in 1 month, and 109 changes in 1 year
  Leroy made 3 changes in 1 month, and 3 changes in 1 year
  Eyal Rozenberg made 2 changes in 1 month, and 15 changes in 1 
year
  Perdreau, Regis made 2 changes in 1 month, and 9 changes in 1 
year


* UX Update (Heiko)
+ Bugzilla (topicUI) statistics
273(273) (topicUI) bugs open, 64(64) (needsUXEval) needs to be 
evaluated by the UXteam

+ Updates:
BZ changes   1 week1 month3 months   12 months
 added  4(-7) 15(-4) 31(-3)  57(-3)
 commented 40(-88)   239(-44)   834(-40)   2443(-10)
   removed  1(1)   2(-1) 11(1)   29(1)
  resolved  2(-12)27(-4)104(-6) 318(-2)
+ top 10 contributors:
  Heiko Tietze made 131 changes in 1 month, and 1492 changes in 
1 year
  Stéphane Guillou made 58 changes in 1 month, and 374 changes 
in 1 year

  ady made 43 changes in 1 month, and 87 changes in 1 year
  Vernon, Stuart Foote made 31 changes in 1 month, and 379 
changes in 1 year
  Ilmari Lauhakangas made 28 changes in 1 month, and 220 
changes in 1 year
  Eyal Rozenberg made 27 changes in 1 month, and 270 changes in 
1 year
  Kaganski, Mike made 25 changes in 1 month, and 146 changes in 
1 year

  Dieter made 23 changes in 1 month, and 262 changes in 1 year
  Justin Luth made 20 changes in 1 month, and 68 changes in 1 year
  Hossein made 13 changes in 1 month, and 75 changes in 1 year

* Crash Reporting (Caolan)
+ 35(-6) import failure, 3(-11) export failures
+ ??? coverity issues
+ Google / ossfuzz: ?? fuzzers active now

* Crash Reporting (Xisco)
+ 7.5.1.222521(+810)
+ 7.5.2.215694(+721)
+ 7.5.3.212719(+1411)
+ 7.5.4.22516(+1157)

* Mentoring (Hossein)
  committer...   1 week 1 month 3 months   12 months
  open  67(10) 110(-15)178(4)  189(4)
   reviews 278(4) 1046(-8)2916(68)   10728(-56)
merged 285(-44)   1181(33)3217(77)   12367(6)
 abandoned  10(-2)  54(-2) 158(-8) 656(-7)
   own commits 162(-31)711(-10)   2335(-3)   10189(-30)
review commits  46(0)  205(-6) 699(-4)2991(-25)
contributor...   1 week 1 month3 months12 months
  open  25(8)   39(6) 231(8)   236(9)
   reviews 784(-56)   2786(88)   8006(96)31620(-70)
merged   7(-8)  58(-6)372(-31)2695(-57)
 abandoned   4(3)8(3)  55(3)   492(-4)
   own commits   9(-4)  68(-2)231(-6) 1004(-7)
review commits   0(0)0(0)   0(0) 0(0)
+ easyHack statistics:
   needsDevEval 8(8)   needsUXEval 1(1)   cleanup_comments 331(331)
   total 401(401)   assigned 28(28)   open 346(346)
+ top 10 contributors:
  Dr. David Alan Gilbert made 7 patches in 1 month, and 15 
patches in 1 year

  Baole Fang made 6 patches in 1 month, and 23 patches in 1 year
  Czeber László made 5 patches in 1 month, and 14 patches in 1 year
  Armin Le Grand (allotropia) made 5 patches in 1 month, and 71 
patches in 1 year

  Luigi Iucci made 4 patches in 1 month, and 4 patches in 1 year
  Colomban Wendling made 3 patches in 1 month, and 24 patches 
in 1 year
  J

[Libreoffice-commits] core.git: qadevOOo/tests

2023-06-27 Thread Andrea Gelmini (via logerrit)
 qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit c58f9dac4ed9123bed2869957f866e409b6db9fe
Author: Andrea Gelmini 
AuthorDate: Tue Jun 27 14:22:40 2023 +0200
Commit: Julien Nabet 
CommitDate: Wed Jun 28 07:05:44 2023 +0200

Fix typo

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

diff --git a/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java 
b/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java
index 2f633122e9bd..b1886f9650dc 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java
@@ -404,7 +404,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
 * existence, second file I_do_not_exists.txt is checked
 * for existence. 
 * Has  OK  status if in the first case method returns
-* true and in the second - flase
+* true and in the second - false
 * and no exceptions were thrown. 
 */
 public void _exists() {


[Libreoffice-commits] core.git: extensions/test

2023-06-27 Thread Andrea Gelmini (via logerrit)
 extensions/test/ole/VisualBasic/Module1.vb |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit c8eb695574986fdda5147adf958432c31a354592
Author: Andrea Gelmini 
AuthorDate: Tue Jun 27 14:35:12 2023 +0200
Commit: Julien Nabet 
CommitDate: Wed Jun 28 07:05:10 2023 +0200

Fix typo

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

diff --git a/extensions/test/ole/VisualBasic/Module1.vb 
b/extensions/test/ole/VisualBasic/Module1.vb
index 63b8bbdeb17f..56b83beb3cea 100644
--- a/extensions/test/ole/VisualBasic/Module1.vb
+++ b/extensions/test/ole/VisualBasic/Module1.vb
@@ -477,14 +477,14 @@ Public Sub Main()
objOleTest2.AttrAny2 = "VBString "
 
'testinout_methodXInterfaces substitutes the argument with the 
object set in in_methodXInterface
-   objOleTest.AttrAny2 = "VBString  this string was written in the 
UNO component to the inout pararmeter"
+   objOleTest.AttrAny2 = "VBString  this string was written in the 
UNO component to the inout parameter"
objOleTest.in_methodXInterface(objOleTest)
objOleTest.testinout_methodXInterface2(objOleTest2)
Dim tmpVar As Object
tmpVar = System.DBNull.Value
tmpVar = objOleTest2.AttrAny2
Debug.Print("in: Uno out: the same object // " & CStr(tmpVar))
-   If tmpVar <> "VBString  this string was written in the UNO 
component to the inout pararmeter" Then
+   If tmpVar <> "VBString  this string was written in the UNO 
component to the inout parameter" Then
MsgBox("error")
End If
 


[Libreoffice-commits] core.git: sw/source

2023-06-27 Thread Andrea Gelmini (via logerrit)
 sw/source/core/access/acctable.hxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 56da3d41bbd2f7c48dc108a8697757b1493030e0
Author: Andrea Gelmini 
AuthorDate: Tue Jun 27 14:08:26 2023 +0200
Commit: Julien Nabet 
CommitDate: Wed Jun 28 07:04:50 2023 +0200

Fix typo

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

diff --git a/sw/source/core/access/acctable.hxx 
b/sw/source/core/access/acctable.hxx
index ce3f12b64093..5187caed411e 100644
--- a/sw/source/core/access/acctable.hxx
+++ b/sw/source/core/access/acctable.hxx
@@ -86,7 +86,7 @@ protected:
 // get table data, update if necessary
 inline SwAccessibleTableData_Impl& GetTableData();
 
-// Is table data evailable?
+// Is table data available?
 bool HasTableData() const { return (mpTableData != nullptr); }
 
 virtual void Notify(const SfxHint&) override;


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sc/qa sc/source

2023-06-27 Thread luigiiucci (via logerrit)
 sc/qa/unit/helper/qahelper.cxx   |   38 ++
 sc/source/core/data/dpoutput.cxx |6 +-
 2 files changed, 43 insertions(+), 1 deletion(-)

New commits:
commit 09d0898b358b368fbe644eb5acbcfdab4af58751
Author: luigiiucci 
AuthorDate: Wed May 17 11:02:37 2023 +0200
Commit: Tomaž Vajngerl 
CommitDate: Wed Jun 28 06:46:05 2023 +0200

Header columns can disappear with filtered data in pivot tables

When we set on a pivot table a filter that filters all the rows,
the pivot table showed only the first header columns and computed
column, but all the columns headers should still be shown so we can
adjust the filter for the column. This fixes this issue.

Also add more debug output and prevent a crash when running pivot
table tests.

Change-Id: I30b4ee72cf8436c4522ab4ba0781462b214816dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151871
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl 
(cherry picked from commit 3551d18404cb19cdaa8edb170a549f5c5405d0cb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153692

diff --git a/sc/qa/unit/helper/qahelper.cxx b/sc/qa/unit/helper/qahelper.cxx
index efb2e68c4fbc..82227ec12006 100644
--- a/sc/qa/unit/helper/qahelper.cxx
+++ b/sc/qa/unit/helper/qahelper.cxx
@@ -38,6 +38,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 
@@ -481,6 +482,43 @@ bool checkOutput(
 svl::GridPrinter printer(e.Row() - s.Row() + 1, e.Col() - s.Col() + 1, 
CALC_DEBUG_OUTPUT != 0);
 SCROW nOutRowSize = e.Row() - s.Row() + 1;
 SCCOL nOutColSize = e.Col() - s.Col() + 1;
+
+// Check if expected size iz smaller than actual size (and prevent a crash)
+if (aCheck.size() < o3tl::make_unsigned(nOutRowSize) || aCheck[0].size() < 
o3tl::make_unsigned(nOutColSize))
+{
+// Dump the arrays to console, so we can compare
+std::cout << "Expected data:" << std::endl;
+for (size_t nRow = 0; nRow < aCheck.size(); ++nRow)
+{
+for (size_t nCol = 0; nCol < aCheck[nRow].size(); ++nCol)
+{
+const char* p = aCheck[nRow][nCol];
+if (p)
+{
+OUString aCheckVal = OUString::createFromAscii(p);
+std::cout << "'" << aCheckVal << "', ";
+}
+else
+std::cout << "null, ";
+}
+std::cout << std::endl;
+}
+
+std::cout << "Actual data:" << std::endl;
+for (SCROW nRow = 0; nRow < nOutRowSize; ++nRow)
+{
+for (SCCOL nCol = 0; nCol < nOutColSize; ++nCol)
+{
+OUString aVal = pDoc->GetString(nCol + s.Col(), nRow + 
s.Row(), s.Tab());
+std::cout << "'" << aVal << "', ";
+}
+std::cout << std::endl;
+}
+std::cout << std::endl;
+
+return false;
+}
+
 for (SCROW nRow = 0; nRow < nOutRowSize; ++nRow)
 {
 for (SCCOL nCol = 0; nCol < nOutColSize; ++nCol)
diff --git a/sc/source/core/data/dpoutput.cxx b/sc/source/core/data/dpoutput.cxx
index 00d8f2aabeb4..c964dda14c7a 100644
--- a/sc/source/core/data/dpoutput.cxx
+++ b/sc/source/core/data/dpoutput.cxx
@@ -608,7 +608,11 @@ ScDPOutput::ScDPOutput( ScDocument* pD, 
uno::Reference 
aResult = xLevRes->getResults();
 ++nRowDims;
-if (!lcl_MemberEmpty(aResult))
+// We want only to remove the DATA 
column if it is empty
+// and not any other empty columns (to 
still show the
+// header columns)
+bool bSkip = lcl_MemberEmpty(aResult) 
&& bIsDataLayout;
+if (!bSkip)
 {
 bool bFieldCompact = false;
 try


[Libreoffice-commits] core.git: sw/qa sw/source

2023-06-27 Thread Mike Kaganski (via logerrit)
 sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx 
|binary
 sw/qa/extras/ooxmlimport/ooxmlimport2.cxx   |  
 34 ++
 sw/source/core/text/itrpaint.cxx|  
  7 +-
 3 files changed, 39 insertions(+), 2 deletions(-)

New commits:
commit dbfa56424f3d41bb58b7c9137f25f4ccb76dc92d
Author: Mike Kaganski 
AuthorDate: Tue Jun 27 17:42:49 2023 +0300
Commit: Mike Kaganski 
CommitDate: Wed Jun 28 04:41:23 2023 +0200

tdf#156078: also consider TabOverflow for tabs outside of line bounds

Before commit 29bd00f7628e7a54e69cabcc7e2a1792c24aa55c, TabOverMargin
compat option was set for DOCX with any compat mode. After that commit,
the unset option disallowed output of content after a tab stop outside
of the paragraph indents, even within page margins.

SwTabPortion::PreFormat consults TabOverflow when checking if position
is outside the frame; so let's consult it also when painting.

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

diff --git 
a/sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx 
b/sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx
new file mode 100644
index ..cc2715cf6acd
Binary files /dev/null and 
b/sw/qa/extras/ooxmlimport/data/tdf156078_rightTabOutsideParaRightIndent.docx 
differ
diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx 
b/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx
index c3e834823c02..20b190d59af6 100644
--- a/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx
+++ b/sw/qa/extras/ooxmlimport/ooxmlimport2.cxx
@@ -23,6 +23,9 @@
 #include 
 #include 
 
+#include 
+#include 
+#include 
 #include 
 
 #include 
@@ -1143,6 +1146,37 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf154695)
 }
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testTdf156078)
+{
+// Given a DOCX with compat level 15, and a tab stop outside of paragraph 
right indent
+createSwDoc("tdf156078_rightTabOutsideParaRightIndent.docx");
+
+// Export it to a PNG (96 ppi)
+uno::Sequence aFilterData(
+comphelper::InitPropertySequence({ { "PixelWidth", 
uno::Any(sal_Int32(816)) },
+   { "PixelHeight", 
uno::Any(sal_Int32(1056)) } }));
+uno::Sequence 
aDescriptor(comphelper::InitPropertySequence(
+{ { "FilterName", uno::Any(OUString("writer_png_Export")) },
+  { "FilterData", uno::Any(aFilterData) } }));
+uno::Reference xStorable(mxComponent, uno::UNO_QUERY);
+xStorable->storeToURL(maTempFile.GetURL(), aDescriptor);
+CPPUNIT_ASSERT(maTempFile.IsValid());
+
+Graphic exported;
+GraphicFilter::LoadGraphic(maTempFile.GetURL(), {}, exported);
+Bitmap bmp = exported.GetBitmapEx().GetBitmap();
+Bitmap::ScopedReadAccess pAccess(bmp);
+
+// "1" must export to the top right corner; check its pixels
+bool numberPixelsFound = false;
+for (tools::Long y = 90; y < 130; ++y)
+for (tools::Long x = 680; x < 720; ++x)
+if (Color(pAccess->GetPixel(y, x)).IsDark())
+numberPixelsFound = true;
+
+CPPUNIT_ASSERT(numberPixelsFound);
+}
+
 // tests should only be added to ooxmlIMPORT *if* they fail round-tripping in 
ooxmlEXPORT
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/core/text/itrpaint.cxx b/sw/source/core/text/itrpaint.cxx
index 827f8d4fcfd2..9c6dc347a47c 100644
--- a/sw/source/core/text/itrpaint.cxx
+++ b/sw/source/core/text/itrpaint.cxx
@@ -164,8 +164,11 @@ void SwTextPainter::DrawTextLine( const SwRect &rPaint, 
SwSaveClip &rClip,
 // Optimization!
 SwTwips nMaxRight = std::min( rPaint.Right(), Right() );
 const SwTwips nTmpLeft = GetInfo().X();
-//compatibility setting: allow tabstop text to exceed right margin
-if 
(GetInfo().GetTextFrame()->GetDoc().getIDocumentSettingAccess().get(DocumentSettingId::TAB_OVER_MARGIN))
+//compatibility settings: allow tabstop text to exceed right margin
+const auto& iDSA = 
GetInfo().GetTextFrame()->GetDoc().getIDocumentSettingAccess();
+const bool bTabOverMargin = iDSA.get(DocumentSettingId::TAB_OVER_MARGIN);
+const bool bTabOverflow = iDSA.get(DocumentSettingId::TAB_OVERFLOW);
+if (bTabOverMargin || bTabOverflow)
 {
 SwLinePortion* pPorIter = pPor;
 while( pPorIter )


[Libreoffice-commits] core.git: cui/source dbaccess/source fpicker/source oox/source ucb/source

2023-06-27 Thread Mike Kaganski (via logerrit)
 cui/source/dialogs/scriptdlg.cxx|   19 +++
 dbaccess/source/ui/dlg/dbfindex.cxx |7 ++-
 fpicker/source/office/fileview.cxx  |4 +---
 oox/source/export/drawingml.cxx |8 +++-
 ucb/source/core/ucbstore.cxx|   13 -
 5 files changed, 17 insertions(+), 34 deletions(-)

New commits:
commit ae5cb9b75984d9a63b392d8bfc5b3d224f00c741
Author: Mike Kaganski 
AuthorDate: Tue Jun 27 14:45:39 2023 +0300
Commit: Mike Kaganski 
CommitDate: Wed Jun 28 04:38:48 2023 +0200

Simplify a bit

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

diff --git a/cui/source/dialogs/scriptdlg.cxx b/cui/source/dialogs/scriptdlg.cxx
index f482c540294c..4113f7334a1c 100644
--- a/cui/source/dialogs/scriptdlg.cxx
+++ b/cui/source/dialogs/scriptdlg.cxx
@@ -128,9 +128,6 @@ void SvxScriptOrgDialog::Init( std::u16string_view language 
 )
 
 Sequence< Reference< browse::XBrowseNode > > children;
 
-OUString userStr("user");
-static constexpr OUStringLiteral shareStr(u"share");
-
 try
 {
 Reference< browse::XBrowseNodeFactory > xFac = 
browse::theBrowseNodeFactory::get(xCtx);
@@ -155,17 +152,15 @@ void SvxScriptOrgDialog::Init( std::u16string_view 
language  )
 bool app = false;
 OUString uiName = childNode->getName();
 OUString factoryURL;
-if ( uiName == userStr || uiName == shareStr )
+if (uiName == "user")
 {
 app = true;
-if ( uiName == userStr )
-{
-uiName = m_sMyMacros;
-}
-else
-{
-uiName = m_sProdMacros;
-}
+uiName = m_sMyMacros;
+}
+else if (uiName == "share")
+{
+app = true;
+uiName = m_sProdMacros;
 }
 else
 {
diff --git a/dbaccess/source/ui/dlg/dbfindex.cxx 
b/dbaccess/source/ui/dlg/dbfindex.cxx
index e5f62afc6be3..d0a03b5b238c 100644
--- a/dbaccess/source/ui/dlg/dbfindex.cxx
+++ b/dbaccess/source/ui/dlg/dbfindex.cxx
@@ -254,9 +254,6 @@ void ODbaseIndexDialog::Init()
 
 // first assume for all indexes they're free
 
-static constexpr OUStringLiteral aIndexExt(u"ndx");
-static constexpr OUStringLiteral aTableExt(u"dbf");
-
 std::vector< OUString > aUsedIndexes;
 
 aURL.SetSmartProtocol(INetProtocol::File);
@@ -267,11 +264,11 @@ void ODbaseIndexDialog::Init()
 osl::FileBase::getSystemPathFromFileURL(rURL,aName);
 aURL.SetSmartURL(aName);
 OUString aExt = aURL.getExtension();
-if (aExt == aIndexExt)
+if (aExt == "ndx")
 {
 m_aFreeIndexList.emplace_back(aURL.getName() );
 }
-else if (aExt == aTableExt)
+else if (aExt == "dbf")
 {
 m_aTableInfoList.emplace_back(aURL.getName() );
 OTableInfo& rTabInfo = m_aTableInfoList.back();
diff --git a/fpicker/source/office/fileview.cxx 
b/fpicker/source/office/fileview.cxx
index 9d8d0f347449..ebc3ee3b8b18 100644
--- a/fpicker/source/office/fileview.cxx
+++ b/fpicker/source/office/fileview.cxx
@@ -1499,8 +1499,6 @@ void SvtFileView_Impl::CreateDisplayText_Impl()
 {
 ::osl::MutexGuard aGuard( maMutex );
 
-static constexpr OUStringLiteral aDateSep( u", " );
-
 for (auto const& elem : maContent)
 {
 // title, type, size, date
@@ -1514,7 +1512,7 @@ void SvtFileView_Impl::CreateDisplayText_Impl()
 SvtSysLocale aSysLocale;
 const LocaleDataWrapper& rLocaleData = aSysLocale.GetLocaleData();
 elem->maDisplayDate = rLocaleData.getDate( elem->maModDate )
-  + aDateSep
+  + ", "
   + rLocaleData.getTime( elem->maModDate, 
false );
 }
 
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index 01328fa2576a..a8c032259476 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -1512,16 +1512,14 @@ OUString GraphicExport::writeToStorage(const Graphic& 
rGraphic , bool bRelPathTo
 xOutStream->writeBytes(Sequence(static_cast(aData), nDataSize));
 xOutStream->closeOutput();
 
-static constexpr OStringLiteral sRelPathToMedia = "media/image";
-OString sRelationCompPrefix;
+const char* sRelationCompPrefix;
 if (bRelPathToMedia)
 sRelationCompPrefix = "../";
 else
 sRelationCompPrefix = getRelationCompPrefix(meDocumentType);
 sPath = OUStringBuffer()
-.appendAscii(sRelationCompPrefix.getStr())
-.appendAscii(sRelPathToMedia.getStr())
-.append(nImageCount)
+.appendAscii(sRelationCompPrefix)
+.append("media/image" + OUS

[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - 2 commits - oox/source sc/source

2023-06-27 Thread Tomaž Vajngerl (via logerrit)
 oox/source/drawingml/color.cxx   |   36 +++
 sc/source/ui/theme/ThemeColorChanger.cxx |   36 +++
 2 files changed, 59 insertions(+), 13 deletions(-)

New commits:
commit 0f062233133de7c1fb3c4962fcaaaecf7f39cdab
Author: Tomaž Vajngerl 
AuthorDate: Fri Jun 23 13:49:24 2023 +0900
Commit: Tomaž Vajngerl 
CommitDate: Wed Jun 28 03:16:52 2023 +0200

sc: ThemeColorChanger - change theme color for borders

Change-Id: Id6b08ad48b496d2f1138aeea8d024a5f61bee633
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153500
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl 
Signed-off-by: Xisco Fauli 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153679

diff --git a/sc/source/ui/theme/ThemeColorChanger.cxx 
b/sc/source/ui/theme/ThemeColorChanger.cxx
index 2211aa67b554..a245f7b0c1c0 100644
--- a/sc/source/ui/theme/ThemeColorChanger.cxx
+++ b/sc/source/ui/theme/ThemeColorChanger.cxx
@@ -16,6 +16,8 @@
 #include 
 #include 
 #include 
+#include 
+#include 
 
 #include 
 #include 
@@ -35,6 +37,26 @@ ThemeColorChanger::~ThemeColorChanger() = default;
 
 namespace
 {
+bool changeBorderLine(editeng::SvxBorderLine* pBorderLine, model::ColorSet 
const& rColorSet)
+{
+if (!pBorderLine)
+return false;
+
+model::ComplexColor const& rComplexColor = pBorderLine->getComplexColor();
+if (rComplexColor.meType == model::ColorType::Scheme)
+{
+auto eThemeType = rComplexColor.meSchemeType;
+
+if (eThemeType != model::ThemeColorType::Unknown)
+{
+Color aColor = rColorSet.resolveColor(rComplexColor);
+pBorderLine->SetColor(aColor);
+return true;
+}
+}
+return false;
+}
+
 void changeCellItems(SfxItemSet& rItemSet, model::ColorSet const& rColorSet)
 {
 const SfxPoolItem* pItem = nullptr;
@@ -75,6 +97,20 @@ void changeCellItems(SfxItemSet& rItemSet, model::ColorSet 
const& rColorSet)
 }
 }
 }
+if (rItemSet.HasItem(ATTR_BORDER, &pItem))
+{
+auto const* pBoxItem = static_cast(pItem);
+SvxBoxItem rNewItem(*pBoxItem);
+bool bChanged = false;
+
+bChanged = changeBorderLine(rNewItem.GetBottom(), rColorSet) || 
bChanged;
+bChanged = changeBorderLine(rNewItem.GetTop(), rColorSet) || bChanged;
+bChanged = changeBorderLine(rNewItem.GetLeft(), rColorSet) || bChanged;
+bChanged = changeBorderLine(rNewItem.GetRight(), rColorSet) || 
bChanged;
+
+if (bChanged)
+rItemSet.Put(rNewItem);
+}
 }
 } // end anonymous ns
 
commit 37df3a34f0d878aa180f623fae6cf9c1c4f58062
Author: Tomaž Vajngerl 
AuthorDate: Fri Jun 23 21:58:22 2023 +0900
Commit: Tomaž Vajngerl 
CommitDate: Wed Jun 28 03:16:44 2023 +0200

oox: map color transforms direct to create model::Transform

Change-Id: I82382f8d0936e90218fefe889ea5bfdd04c3e82b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153507
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl 
Signed-off-by: Xisco Fauli 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153678

diff --git a/oox/source/drawingml/color.cxx b/oox/source/drawingml/color.cxx
index d13e29839227..9a14fb413439 100644
--- a/oox/source/drawingml/color.cxx
+++ b/oox/source/drawingml/color.cxx
@@ -839,21 +839,31 @@ model::ComplexColor Color::createComplexColor(const 
GraphicHelper& /*rGraphicHel
 return aNewComplexColor;
 }
 
-if (getLumMod() != 1)
-aNewComplexColor.addTransformation({model::TransformationType::LumMod, 
getLumMod()});
-
-if (getLumOff() != 0)
-aNewComplexColor.addTransformation({model::TransformationType::LumOff, 
getLumOff()});
-
-if (getTintOrShade() > 0)
-{
-aNewComplexColor.addTransformation({model::TransformationType::Tint, 
getTintOrShade()});
-}
-else if (getTintOrShade() < 0)
+for(auto const& aTransform : maTransforms)
 {
-sal_Int16 nShade = o3tl::narrowing(-getTintOrShade());
-aNewComplexColor.addTransformation({model::TransformationType::Shade, 
nShade});
+sal_Int16 nValue = sal_Int16(aTransform.mnValue / 10);
+
+switch(aTransform.mnToken)
+{
+case XML_lumMod:
+if (nValue != 10'000)
+
aNewComplexColor.addTransformation({model::TransformationType::LumMod, nValue});
+break;
+case XML_lumOff:
+if (nValue != 0)
+
aNewComplexColor.addTransformation({model::TransformationType::LumOff, nValue});
+break;
+case XML_tint:
+if (nValue != 0)
+
aNewComplexColor.addTransformation({model::TransformationType::Tint, nValue});
+break;
+case XML_shade:
+if (nValue != 0)
+
aNewComplexColor.addTransformation({model::TransformationType::Shade, nValue});
+  

[Libreoffice-commits] core.git: sc/qa sc/source

2023-06-27 Thread luigiiucci (via logerrit)
 sc/qa/unit/helper/qahelper.cxx   |   38 ++
 sc/source/core/data/dpoutput.cxx |6 +-
 2 files changed, 43 insertions(+), 1 deletion(-)

New commits:
commit 3551d18404cb19cdaa8edb170a549f5c5405d0cb
Author: luigiiucci 
AuthorDate: Wed May 17 11:02:37 2023 +0200
Commit: Tomaž Vajngerl 
CommitDate: Wed Jun 28 02:07:03 2023 +0200

Header columns can disappear with filtered data in pivot tables

When we set on a pivot table a filter that filters all the rows,
the pivot table showed only the first header columns and computed
column, but all the columns headers should still be shown so we can
adjust the filter for the column. This fixes this issue.

Also add more debug output and prevent a crash when running pivot
table tests.

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

diff --git a/sc/qa/unit/helper/qahelper.cxx b/sc/qa/unit/helper/qahelper.cxx
index 890a330f147d..eff2c62d9aeb 100644
--- a/sc/qa/unit/helper/qahelper.cxx
+++ b/sc/qa/unit/helper/qahelper.cxx
@@ -38,6 +38,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 
@@ -481,6 +482,43 @@ bool checkOutput(
 svl::GridPrinter printer(e.Row() - s.Row() + 1, e.Col() - s.Col() + 1, 
CALC_DEBUG_OUTPUT != 0);
 SCROW nOutRowSize = e.Row() - s.Row() + 1;
 SCCOL nOutColSize = e.Col() - s.Col() + 1;
+
+// Check if expected size iz smaller than actual size (and prevent a crash)
+if (aCheck.size() < o3tl::make_unsigned(nOutRowSize) || aCheck[0].size() < 
o3tl::make_unsigned(nOutColSize))
+{
+// Dump the arrays to console, so we can compare
+std::cout << "Expected data:" << std::endl;
+for (size_t nRow = 0; nRow < aCheck.size(); ++nRow)
+{
+for (size_t nCol = 0; nCol < aCheck[nRow].size(); ++nCol)
+{
+const char* p = aCheck[nRow][nCol];
+if (p)
+{
+OUString aCheckVal = OUString::createFromAscii(p);
+std::cout << "'" << aCheckVal << "', ";
+}
+else
+std::cout << "null, ";
+}
+std::cout << std::endl;
+}
+
+std::cout << "Actual data:" << std::endl;
+for (SCROW nRow = 0; nRow < nOutRowSize; ++nRow)
+{
+for (SCCOL nCol = 0; nCol < nOutColSize; ++nCol)
+{
+OUString aVal = pDoc->GetString(nCol + s.Col(), nRow + 
s.Row(), s.Tab());
+std::cout << "'" << aVal << "', ";
+}
+std::cout << std::endl;
+}
+std::cout << std::endl;
+
+return false;
+}
+
 for (SCROW nRow = 0; nRow < nOutRowSize; ++nRow)
 {
 for (SCCOL nCol = 0; nCol < nOutColSize; ++nCol)
diff --git a/sc/source/core/data/dpoutput.cxx b/sc/source/core/data/dpoutput.cxx
index 00d8f2aabeb4..c964dda14c7a 100644
--- a/sc/source/core/data/dpoutput.cxx
+++ b/sc/source/core/data/dpoutput.cxx
@@ -608,7 +608,11 @@ ScDPOutput::ScDPOutput( ScDocument* pD, 
uno::Reference 
aResult = xLevRes->getResults();
 ++nRowDims;
-if (!lcl_MemberEmpty(aResult))
+// We want only to remove the DATA 
column if it is empty
+// and not any other empty columns (to 
still show the
+// header columns)
+bool bSkip = lcl_MemberEmpty(aResult) 
&& bIsDataLayout;
+if (!bSkip)
 {
 bool bFieldCompact = false;
 try


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sw/source

2023-06-27 Thread Justin Luth (via logerrit)
 sw/source/ui/vba/vbadocument.cxx |   19 ++-
 1 file changed, 18 insertions(+), 1 deletion(-)

New commits:
commit efdf2505df7fe766465e4cd5b8bc429ca8d51f71
Author: Justin Luth 
AuthorDate: Mon Jun 26 20:14:17 2023 -0400
Commit: Justin Luth 
CommitDate: Tue Jun 27 23:43:52 2023 +0200

tdf#151548 ContentControls vba: allow search by float #2

I don't know how to figure out where the basic parsing
is mishandling the double-specifier of "#",
so just hack in a re-attempt to find a control with the
name of an unfound index.

This should be fine. If it really was specifying an index,
then it won't get to this code.

If the number is larger than the index and a control exists
with that id, then it almost certainly was intended as a name.
If by some chance it wasn't, then instead of the code failing,
it will actually go ahead with the operation.

Since in practical terms this won't happen,
just go ahead and fix the likely case of a
positive-number-as-a-name control not being found.

Change-Id: I2a34184d86b99a50fdc6b806264f1d5e7794ad48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153630
Tested-by: Jenkins
Reviewed-by: Justin Luth 
(cherry picked from commit 609a1567d0e60ca11800df56059b97b6a61ad117)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153605

diff --git a/sw/source/ui/vba/vbadocument.cxx b/sw/source/ui/vba/vbadocument.cxx
index 4f20311879ad..c8985464501d 100644
--- a/sw/source/ui/vba/vbadocument.cxx
+++ b/sw/source/ui/vba/vbadocument.cxx
@@ -225,7 +225,24 @@ uno::Any SwVbaDocument::ContentControls(const uno::Any& 
index)
 uno::Reference xContentControls(
 new SwVbaContentControls(this, mxContext, mxTextDocument, "", ""));
 if (index.hasValue())
-return xContentControls->Item(index, uno::Any());
+{
+try
+{
+return xContentControls->Item(index, uno::Any());
+}
+catch (lang::IndexOutOfBoundsException&)
+{
+// Hack: Instead of an index, it might be a float that was 
mistakenly treated as a long,
+// which can happen with any valid positive integer when specified 
as a double like
+// ActiveDocument.ContentControls(1841581653#).
+if (index.getValueTypeClass() == css::uno::TypeClass_LONG)
+{
+sal_Int32 nLong(0);
+index >>= nLong;
+return 
xContentControls->Item(uno::Any(static_cast(nLong)), uno::Any());
+}
+}
+}
 
 return uno::Any(xContentControls);
 }


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - cui/source include/svx sd/source svx/source

2023-06-27 Thread Regina Henschel (via logerrit)
 cui/source/inc/cuitabarea.hxx |8 +-
 cui/source/tabpages/tpgradnt.cxx  |   25 +---
 cui/source/tabpages/tptrans.cxx   |   28 +
 include/svx/sidebar/AreaPropertyPanelBase.hxx |4 -
 include/svx/sidebar/AreaTransparencyGradientPopup.hxx |4 -
 sd/source/ui/sidebar/SlideBackground.cxx  |   25 +---
 sd/source/ui/sidebar/SlideBackground.hxx  |4 -
 svx/source/sidebar/area/AreaPropertyPanelBase.cxx |   33 +++
 svx/source/sidebar/area/AreaTransparencyGradientPopup.cxx |   42 --
 9 files changed, 105 insertions(+), 68 deletions(-)

New commits:
commit 4eb813aaabd88a13172effc467259b60d1831543
Author: Regina Henschel 
AuthorDate: Wed Jun 21 15:01:20 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:54:48 2023 +0200

tdf#155901 MCGR: preserve first and last gradient stop too

Error was, that only the in-between gradient stops were preserve. First
stop was set with fixed offset 0, last stop with fixed offset 1. The
offsets of first and last gradient stop of the original gradient were
lost. Now in all cases (hopefully) the complete gradient stops vector is
preserved and the original offset is used, if e.g. the user changes the
color.

For calculating transparence the indirect way over Color is removed.
Instead percent is directly transformed to the 0..1 values of BColor.
That avoids rounding errors.

Change-Id: Icdf699a6c2e9c6289d2f77033858448e58396a60
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153395
Tested-by: Jenkins
Reviewed-by: Regina Henschel 
(cherry picked from commit bb19bda1dc620f0f8662776d9818aedf45486994)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153516
Reviewed-by: Xisco Fauli 

diff --git a/cui/source/inc/cuitabarea.hxx b/cui/source/inc/cuitabarea.hxx
index 2d6c713236da..4e766c76e57d 100644
--- a/cui/source/inc/cuitabarea.hxx
+++ b/cui/source/inc/cuitabarea.hxx
@@ -169,7 +169,7 @@ class SvxTransparenceTabPage : public SfxTabPage
 std::unique_ptr m_xCtlBitmapPreview;
 std::unique_ptr m_xCtlXRectPreview;
 
-// MCGR: Preserve in-between ColorStops until we have an UI to edit these
+// MCGR: Preserve ColorStops until we have a UI to edit these
 basegfx::BColorStops maColorStops;
 
 DECL_LINK(ClickTransOffHdl_Impl, weld::Toggleable&, void);
@@ -187,7 +187,7 @@ class SvxTransparenceTabPage : public SfxTabPage
 bool InitPreview ( const SfxItemSet& rSet );
 void InvalidatePreview (bool bEnable = true );
 
-// MCGR: Preserve in-between ColorStops until we have an UI to edit these
+// MCGR: Preserve ColorStops until we have a UI to edit these
 basegfx::BColorStops createColorStops();
 
 public:
@@ -367,7 +367,7 @@ private:
 XFillAttrSetItemm_aXFillAttr;
 SfxItemSet& m_rXFSet;
 
-// MCGR: Preserve in-between ColorStops until we have an UI to edit these
+// MCGR: Preserve ColorStops until we have a UI to edit these
 basegfx::BColorStops m_aColorStops;
 
 SvxXRectPreview m_aCtlPreview;
@@ -409,7 +409,7 @@ private:
 void SetControlState_Impl( css::awt::GradientStyle eXGS );
 sal_Int32 SearchGradientList(std::u16string_view rGradientName);
 
-// MCGR: Preserve in-between ColorStops until we have an UI to edit these
+// MCGR: Preserve ColorStops until we have a UI to edit these
 basegfx::BColorStops createColorStops();
 
 public:
diff --git a/cui/source/tabpages/tpgradnt.cxx b/cui/source/tabpages/tpgradnt.cxx
index 7f6630747a42..d3d066236ae1 100644
--- a/cui/source/tabpages/tpgradnt.cxx
+++ b/cui/source/tabpages/tpgradnt.cxx
@@ -548,9 +548,11 @@ void SvxGradientTabPage::ChangeGradientHdl_Impl()
 m_xLbColorTo->SetNoSelection();
 
m_xLbColorTo->SelectEntry(Color(pGradient->GetColorStops().back().getStopColor()));
 
-// MCGR: preserve in-between ColorStops if given
-if (pGradient->GetColorStops().size() > 2)
-m_aColorStops = 
basegfx::BColorStops(pGradient->GetColorStops().begin() + 1, 
pGradient->GetColorStops().end() - 1);
+// MCGR: preserve ColorStops if given.
+// tdf#155901 We need offset of first and last stop, so include them.
+if (pGradient->GetColorStops().size() >= 2)
+m_aColorStops = 
basegfx::BColorStops(pGradient->GetColorStops().begin(),
+ pGradient->GetColorStops().end());
 else
 m_aColorStops.clear();
 
@@ -641,14 +643,19 @@ basegfx::BColorStops 
SvxGradientTabPage::createColorStops()
 {
 basegfx::BColorStops aColorStops;
 
-aColorStops.emplace_back(0.0, 
m_xLbColorFrom->GetSelectEntryColor().getBColor());
-
-if(!m_aColorStops.empty())
+if(m_aColorStops.size() >= 2)
 {
-aColorStops.insert(aColorStops.begin(), m_aColorStops.begin(), 
m_aColorStops.end());
+aColorStops.emplace_back(m_a

[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sc/source

2023-06-27 Thread Caolán McNamara (via logerrit)
 sc/source/filter/inc/XclExpChangeTrack.hxx   |7 +++
 sc/source/filter/xcl97/XclExpChangeTrack.cxx |   23 ++-
 2 files changed, 29 insertions(+), 1 deletion(-)

New commits:
commit 80223eaa5f072e1264fcb8fd77db063cee44de9c
Author: Caolán McNamara 
AuthorDate: Sun Jun 25 11:54:07 2023 +0100
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:52:02 2023 +0200

crashtesting: crash seen on exporting fdo66241-1.ods to xlsx

Change-Id: I730bd782ddf67555c40651aed1442465574a1c01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153560
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
(cherry picked from commit f95c213cc9107e25f78e25c6a1bdfb8a5a61be2a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153525
Reviewed-by: Xisco Fauli 

diff --git a/sc/source/filter/inc/XclExpChangeTrack.hxx 
b/sc/source/filter/inc/XclExpChangeTrack.hxx
index 9d007ba368f3..9701ba6e29f5 100644
--- a/sc/source/filter/inc/XclExpChangeTrack.hxx
+++ b/sc/source/filter/inc/XclExpChangeTrack.hxx
@@ -28,6 +28,7 @@
 #include "xestring.hxx"
 #include "excrecds.hxx"
 #include "xlformula.hxx"
+#include "xllink.hxx"
 #include "xeformula.hxx"
 
 class ExcXmlRecord : public ExcRecord
@@ -365,6 +366,7 @@ protected:
 static inline void  Write2DAddress( XclExpStream& rStrm, const 
ScAddress& rAddress );
 static inline void  Write2DRange( XclExpStream& rStrm, const 
ScRange& rRange );
 inline sal_uInt16   GetTabId( SCTAB nTabId ) const;
+inline bool IsDeletedTab( SCTAB nTab ) const;
 inline void WriteTabId( XclExpStream& rStrm, SCTAB nTabId 
) const;
 
 // save header data, call SaveActionData()
@@ -421,6 +423,11 @@ inline void XclExpChTrAction::Write2DRange( XclExpStream& 
rStrm, const ScRange&
 << static_cast(rRange.aEnd.Col());
 }
 
+inline bool XclExpChTrAction::IsDeletedTab(SCTAB nTab) const
+{
+return rTabInfo.GetXclTab(nTab) == EXC_TAB_DELETED;
+}
+
 inline sal_uInt16 XclExpChTrAction::GetTabId( SCTAB nTab ) const
 {
 return rIdBuffer.GetId( rTabInfo.GetXclTab( nTab ) );
diff --git a/sc/source/filter/xcl97/XclExpChangeTrack.cxx 
b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
index 57fd143bf659..71156df08e04 100644
--- a/sc/source/filter/xcl97/XclExpChangeTrack.cxx
+++ b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
@@ -573,7 +573,7 @@ void XclExpChTrTabIdBuffer::InitFillup()
 
 sal_uInt16 XclExpChTrTabIdBuffer::GetId( sal_uInt16 nIndex ) const
 {
-OSL_ENSURE( nIndex < nBufSize, "XclExpChTrTabIdBuffer::GetId - out of 
range" );
+assert(nIndex < nBufSize && "XclExpChTrTabIdBuffer::GetId - out of range");
 return pBuffer[ nIndex ];
 }
 
@@ -1025,6 +1025,13 @@ static void lcl_WriteCell( XclExpXmlStream& rStrm, 
sal_Int32 nElement, const ScA
 
 void XclExpChTrCellContent::SaveXml( XclExpXmlStream& rRevisionLogStrm )
 {
+if (IsDeletedTab(aPosition.Tab()))
+{
+// seen on attempt to export tdf66241-1.ods to xlsx
+SAL_WARN("sc", "XclExpChTrCellContent: unable to export position with 
tab of EXC_TAB_DELETED");
+return;
+}
+
 sax_fastparser::FSHelperPtr pStream = rRevisionLogStrm.GetCurrentStream();
 pStream->startElement( XML_rcc,
 XML_rId,OString::number(GetActionNumber()),
@@ -1155,6 +1162,13 @@ static const char* lcl_GetAction( sal_uInt16 nOpCode )
 
 void XclExpChTrInsert::SaveXml( XclExpXmlStream& rRevisionLogStrm )
 {
+if (IsDeletedTab(aRange.aStart.Tab()))
+{
+// seen on attempt to export tdf66241-1.ods to xlsx
+SAL_WARN("sc", "XclExpChTrCellContent: unable to export position with 
tab of EXC_TAB_DELETED");
+return;
+}
+
 sax_fastparser::FSHelperPtr pStream = rRevisionLogStrm.GetCurrentStream();
 pStream->startElement( XML_rrc,
 XML_rId,OString::number(GetActionNumber()),
@@ -1279,6 +1293,13 @@ std::size_t XclExpChTrMoveRange::GetActionByteCount() 
const
 
 void XclExpChTrMoveRange::SaveXml( XclExpXmlStream& rRevisionLogStrm )
 {
+if (IsDeletedTab(aDestRange.aStart.Tab()) || 
IsDeletedTab(aSourceRange.aStart.Tab()))
+{
+// seen on attempt to export tdf66241-1.ods to xlsx
+SAL_WARN("sc", "XclExpChTrCellContent: unable to export position with 
tab of EXC_TAB_DELETED");
+return;
+}
+
 sax_fastparser::FSHelperPtr pStream = rRevisionLogStrm.GetCurrentStream();
 
 pStream->startElement( XML_rm,


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sc/qa sc/source

2023-06-27 Thread Tibor Nagy (via logerrit)
 sc/qa/unit/data/xlsx/tdf156028.xlsx|binary
 sc/qa/unit/subsequent_filters_test.cxx |   11 +++
 sc/source/core/data/colorscale.cxx |2 +-
 3 files changed, 12 insertions(+), 1 deletion(-)

New commits:
commit 4c4d56f94b8f9598bd3d7cd60d38e18bf1e42857
Author: Tibor Nagy 
AuthorDate: Mon Jun 26 11:35:38 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:39:29 2023 +0200

tdf#156028 sc: use color of the highest value if only one value

(in a single cell or the same value repeating in all cells of the
data set) on percentile color scale, like other spreadsheets do.

This is a follow up to commit 6a059f8d1b0a7a5b64bd272e1e7b8291979bcd56
(tdf#155321 sc: fix color of the highest value on percentile color scale
if the highest value occurs multiple times in the data set.)

Change-Id: I630df332e403705e8338e3441af093c2de95c280
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153577
Reviewed-by: László Németh 
Tested-by: László Németh 
(cherry picked from commit 7b7a86dce26f2719edeca5fb6ae0cdcbd3956c13)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153659
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/sc/qa/unit/data/xlsx/tdf156028.xlsx 
b/sc/qa/unit/data/xlsx/tdf156028.xlsx
new file mode 100644
index ..6fc2fc814fe3
Binary files /dev/null and b/sc/qa/unit/data/xlsx/tdf156028.xlsx differ
diff --git a/sc/qa/unit/subsequent_filters_test.cxx 
b/sc/qa/unit/subsequent_filters_test.cxx
index f633073c85f9..d02ebc075e3e 100644
--- a/sc/qa/unit/subsequent_filters_test.cxx
+++ b/sc/qa/unit/subsequent_filters_test.cxx
@@ -134,6 +134,17 @@ CPPUNIT_TEST_FIXTURE(ScFiltersTest, 
testTdf155321_CondFormatColor_XLSX)
 CPPUNIT_ASSERT_EQUAL(Color(99, 190, 123), aColor);
 }
 
+CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf156028_ColorScale_XLSX)
+{
+createScDoc("xlsx/tdf156028.xlsx");
+
+ScDocument* pDoc = getScDoc();
+ScConditionalFormat* pCondFormat = pDoc->GetCondFormat(0, 0, 0);
+ScRefCellValue aCellA1(*pDoc, ScAddress(0, 0, 0));
+Color aColor = pCondFormat->GetData(aCellA1, ScAddress(0, 0, 
0)).mxColorScale.value();
+CPPUNIT_ASSERT_EQUAL(Color(99, 190, 123), aColor);
+}
+
 CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf138601_CondFormatXLSX)
 {
 createScDoc("xlsx/tdf138601.xlsx");
diff --git a/sc/source/core/data/colorscale.cxx 
b/sc/source/core/data/colorscale.cxx
index 4e61dbdbc228..20ea2b5186f6 100644
--- a/sc/source/core/data/colorscale.cxx
+++ b/sc/source/core/data/colorscale.cxx
@@ -647,7 +647,7 @@ std::optional ScColorScaleFormat::GetColor( const 
ScAddress& rAddr ) cons
 calcMinMax(nMin, nMax);
 
 // this check is for safety
-if(nMin >= nMax)
+if(nMin > nMax)
 return std::optional();
 
 ScColorScaleEntries::const_iterator itr = begin();


[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - sc/source

2023-06-27 Thread Caolán McNamara (via logerrit)
 sc/source/filter/excel/xiname.cxx |9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

New commits:
commit 1b3963b93866680621016860276f53ae428ec6ad
Author: Caolán McNamara 
AuthorDate: Sun Jan 29 20:59:44 2023 +
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:37:57 2023 +0200

crashtesting: crash in ReadQsiforum-mso-en4-30276.xls

on duplicate names where during import an existing ScRangeData using the
name is deleted on inserting a new one, leaving a XclImpName behind that
still references the deleted ScRangeData. Reverse the order of lookup
of XclImpName so we find the duplicate that references the valid
ScRangeData first.

likely also

forums/xls/forum-mso-en4-69844.xls
forums/xls/forum-mso-en4-69589.xls
forums/xls/forum-mso-en4-69308.xls

see also:

commit 657b3c889ae107d9ccaaab569929a3a1abde3200
Date:   Sat Jan 21 00:08:29 2012 -0500

fdo#44831: Named range should overwrite existing name.

When inserting a new named range, it should overwrite any existing
name if one exists.

Change-Id: I275663cacc34a2b85080c038dc5a199563f3547c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146310
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
(cherry picked from commit ea093514e4fc3a66f57e07486863c22e32db4245)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153380
Reviewed-by: Xisco Fauli 

diff --git a/sc/source/filter/excel/xiname.cxx 
b/sc/source/filter/excel/xiname.cxx
index d498dfba492c..cd9e92dfaa93 100644
--- a/sc/source/filter/excel/xiname.cxx
+++ b/sc/source/filter/excel/xiname.cxx
@@ -291,8 +291,15 @@ const XclImpName* XclImpNameManager::FindName( 
std::u16string_view rXclName, SCT
 {
 const XclImpName* pGlobalName = nullptr;   // a found global name
 const XclImpName* pLocalName = nullptr;// a found local name
-for( const auto& rxName : maNameList )
+// If a duplicate name is seen by ScRangeName::insert then the existing
+// name is erased and the new one inserted, so in the case of duplicates
+// the last one seen is valid and the others invalid. So do this lookup in
+// reverse in order to return the XclImpName* that references the valid
+// entry (see tdf#44831 for the insert behavior and 
'forum-mso-en4-30276.xls'
+// for an example of this problem)
+for (auto itName = maNameList.rbegin(); itName != maNameList.rend(); 
++itName)
 {
+const auto& rxName = *itName;
 if( rxName->GetXclName() == rXclName )
 {
 if( rxName->GetScTab() == nScTab )


[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - sc/inc sc/source

2023-06-27 Thread Czeber László Ádám (via logerrit)
 sc/inc/column.hxx  |6 ++
 sc/source/core/data/table1.cxx |   12 +---
 sc/source/core/data/table2.cxx |3 +++
 3 files changed, 14 insertions(+), 7 deletions(-)

New commits:
commit 93c6fdc58d577d059968a71ae08b80096f73ef1a
Author: Czeber László Ádám 
AuthorDate: Thu Jun 8 14:55:34 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:36:53 2023 +0200

tdf#153437 sc: fix broken formatting without performance regression

Follow-up to commit 7be7e1ff95af485a9cb00748800d3d084f96387c
"tdf#153437 sc: fix broken formatting at Undo of row/column insertion"
by replacing that with a better version without performance
regression. This keeps the original performance fix of
commit 2e86718626a07e1656661df3ad69a64848bf4614
"don't allocate unnecessary columns when inserting a row"
related to the support of 16k columns.

The previous fix used extra memory to fix the broken formatting
of the cells. I have now solved the error in tdf#153437 without
taking extra memory. It doesn't change the reserved cells, it just
deletes a row from the default attribute of the cells when deleting
rows, so they don't slip. When deleting a column, the last column
in the still reserved area loses its formatting. I copied the default value 
back here, as the other columns have this value.

Change-Id: I35da1cb79ff4e3493e91d29766cc2b81412080eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152742
Tested-by: László Németh 
Reviewed-by: László Németh 
(cherry picked from commit c61f5a5d55c07721f044befc1f6efa0231cd92f6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152814
Signed-off-by: Xisco Fauli 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153494
Tested-by: Jenkins

diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index 949ca30dd137..87d3dc730a9f 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -171,6 +171,7 @@ public:
 
 boolTestInsertRow( SCSIZE nSize ) const;
 voidInsertRow( SCROW nStartRow, SCSIZE nSize );
+voidDeleteRow( SCROW nStartRow, SCSIZE nSize );
 };
 
 // Use protected inheritance to prevent publishing some internal ScColumnData
@@ -1054,4 +1055,9 @@ inline void ScColumnData::InsertRow( SCROW nStartRow, 
SCSIZE nSize )
 pAttrArray->InsertRow( nStartRow, nSize );
 }
 
+inline void ScColumnData::DeleteRow(SCROW nStartRow, SCSIZE nSize)
+{
+pAttrArray->DeleteRow( nStartRow, nSize );
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index 6cb5384c05f9..308025656319 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -1851,13 +1851,11 @@ void ScTable::UpdateReference(
 }
 else
 {
-// When deleting row(s) or column(s), allocate the last column
-// before updating the references
-if (nDx < 0 || nDy < 0)
-CreateColumnIfNotExists(rDocument.MaxCol());
-
-for (SCCOL col : GetColumnsRange(0, rDocument.MaxCol()))
-bUpdated |= CreateColumnIfNotExists(col).UpdateReference(rCxt, 
pUndoDoc);
+for (SCCOL col : GetAllocatedColumnsRange(0, rDocument.MaxCol()))
+bUpdated |= aCol[col].UpdateReference(rCxt, pUndoDoc);
+// When deleting row(s), delete same row from the default attribute
+if (nDy < 0)
+aDefaultColData.DeleteRow(nRow1+nDy, -nDy);
 }
 
 if ( bIncludeDraw )
diff --git a/sc/source/core/data/table2.cxx b/sc/source/core/data/table2.cxx
index 4eb5671f0dc7..91f90dbb1ae4 100644
--- a/sc/source/core/data/table2.cxx
+++ b/sc/source/core/data/table2.cxx
@@ -400,6 +400,9 @@ void ScTable::DeleteCol(
 {
 for (SCCOL nCol = nStartCol + nSize; nCol < aCol.size(); ++nCol)
 aCol[nCol].SwapCol(aCol[nCol - nSize]);
+// When delete column(s), inicialize the last columns from the default 
attributes
+for (SCCOL nCol = aCol.size() - nSize; nCol < aCol.size(); ++nCol)
+aCol[nCol].Init(nCol, aCol[nCol].GetTab(), rDocument, false);
 }
 else
 {


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - download.lst

2023-06-27 Thread Eike Rathke (via logerrit)
 download.lst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 03661c8f5a07e49fe54ae521d250aa45080cdbf2
Author: Eike Rathke 
AuthorDate: Tue Jun 27 13:39:13 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:35:13 2023 +0200

Update language-subtag-registry to 2023-05-11

Change-Id: Ieb1c3eab66c06c8e7b3d9751d9e4548dbd7efc04
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153643
Reviewed-by: Eike Rathke 
Tested-by: Jenkins
(cherry picked from commit 41dbc7eb47f5f0392da77cd6693249471e135fcb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153664

diff --git a/download.lst b/download.lst
index 8d9f83b8db7a..ae37b394ae52 100644
--- a/download.lst
+++ b/download.lst
@@ -279,8 +279,8 @@ LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-LANGTAGREG_SHA256SUM := 
e2d9224e0e50fc8ad12a3cf47396bbcadf45b2515839d4770432653a88972c00
-LANGTAGREG_TARBALL := language-subtag-registry-2022-08-08.tar.bz2
+LANGTAGREG_SHA256SUM := 
9042b64cd473bf36073513b474046f13778107b57c2ac47fb2633104120d69da
+LANGTAGREG_TARBALL := language-subtag-registry-2023-05-11.tar.bz2
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - svgio/inc svgio/Library_svgio.mk svgio/qa svgio/source

2023-06-27 Thread Xisco Fauli (via logerrit)
 svgio/Library_svgio.mk|3 
 svgio/inc/svgfeoffsetnode.hxx |   45 
 svgio/inc/svgtoken.hxx|3 
 svgio/qa/cppunit/SvgImportTest.cxx|   21 +
 svgio/qa/cppunit/data/filterFeOffset.svg  |   18 +
 svgio/source/svgreader/svgdocumenthandler.cxx |   17 +++-
 svgio/source/svgreader/svgfeoffsetnode.cxx|   92 ++
 svgio/source/svgreader/svgfilternode.cxx  |9 ++
 svgio/source/svgreader/svgtoken.cxx   |5 -
 9 files changed, 204 insertions(+), 9 deletions(-)

New commits:
commit bf673a46987f797df00f7ae92a3f515d18740f63
Author: Xisco Fauli 
AuthorDate: Mon Jun 26 23:24:52 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 22:15:58 2023 +0200

tdf#156068: Add support for feOffset filter

Change-Id: I1b3dea0ee4f9eb2ee7498962b04baaf5ba68855c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153629
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
(cherry picked from commit 1dce8c1d4b6be58c7c791dca3b17ae7488ea9215)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153662

diff --git a/svgio/Library_svgio.mk b/svgio/Library_svgio.mk
index 76c0e87123bb..3702806a311c 100644
--- a/svgio/Library_svgio.mk
+++ b/svgio/Library_svgio.mk
@@ -60,8 +60,9 @@ $(eval $(call gb_Library_add_exception_objects,svgio,\
 svgio/source/svgreader/svgellipsenode \
 svgio/source/svgreader/svggnode \
 svgio/source/svgreader/svganode \
-svgio/source/svgreader/svgfegaussianblurnode \
 svgio/source/svgreader/svgfecolormatrixnode \
+svgio/source/svgreader/svgfegaussianblurnode \
+svgio/source/svgreader/svgfeoffsetnode \
 svgio/source/svgreader/svgfilternode \
 svgio/source/svgreader/svggradientnode \
 svgio/source/svgreader/svggradientstopnode \
diff --git a/svgio/inc/svgfeoffsetnode.hxx b/svgio/inc/svgfeoffsetnode.hxx
new file mode 100644
index ..22bf212d7c20
--- /dev/null
+++ b/svgio/inc/svgfeoffsetnode.hxx
@@ -0,0 +1,45 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ *   Licensed to the Apache Software Foundation (ASF) under one or more
+ *   contributor license agreements. See the NOTICE file distributed
+ *   with this work for additional information regarding copyright
+ *   ownership. The ASF licenses this file to you under the Apache
+ *   License, Version 2.0 (the "License"); you may not use this file
+ *   except in compliance with the License. You may obtain a copy of
+ *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include "svgnode.hxx"
+#include "svgstyleattributes.hxx"
+
+namespace svgio::svgreader
+{
+class SvgFeOffsetNode final : public SvgNode
+{
+private:
+SvgNumber maDx;
+SvgNumber maDy;
+
+public:
+SvgFeOffsetNode(SvgDocument& rDocument, SvgNode* pParent);
+virtual ~SvgFeOffsetNode() override;
+
+virtual void parseAttribute(const OUString& rTokenName, SVGToken aSVGToken,
+const OUString& aContent) override;
+
+void apply(drawinglayer::primitive2d::Primitive2DContainer& rTarget) const;
+};
+
+} // end of namespace svgio::svgreader
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svgio/inc/svgtoken.hxx b/svgio/inc/svgtoken.hxx
index 9c28674b1cfb..fb2e04c278f4 100644
--- a/svgio/inc/svgtoken.hxx
+++ b/svgio/inc/svgtoken.hxx
@@ -80,8 +80,9 @@ namespace svgio::svgreader
 Color,
 ClipPathNode,
 ClipPathProperty,
-FeGaussianBlur,
 FeColorMatrix,
+FeGaussianBlur,
+FeOffset,
 Filter,
 Mask,
 ClipPathUnits,
diff --git a/svgio/qa/cppunit/SvgImportTest.cxx 
b/svgio/qa/cppunit/SvgImportTest.cxx
index 3d855ea8d24a..6ae8fea1850d 100644
--- a/svgio/qa/cppunit/SvgImportTest.cxx
+++ b/svgio/qa/cppunit/SvgImportTest.cxx
@@ -182,6 +182,27 @@ CPPUNIT_TEST_FIXTURE(Test, testFilterFeGaussianBlur)
 assertXPath(pDocument, "/primitive2D/transform/softedge", "radius", "5");
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testFilterFeOffset)
+{
+Primitive2DSequence aSequenceTdf132246 = 
parseSvg(u"/svgio/qa/cppunit/data/filterFeOffset.svg");
+CPPUNIT_ASSERT_EQUAL(1, static_cast(aSequenceTdf132246.getLength()));
+
+drawinglayer::Primitive2dXmlDump dumper;
+xmlDocUniquePtr pDocument = dumper.dumpAndParse(aSequenceTdf132246);
+
+CPPUNIT_ASSERT (pDocument);
+
+assertXPath(pDocument, "/primitive2D/transform/mask/transform", "xy11", 
"1");
+assertXPath(pDocument, "/primitive2D/transform/mask/transfor

[Libreoffice-commits] core.git: external/gpgmepp

2023-06-27 Thread Mike Kaganski (via logerrit)
 external/gpgmepp/w32-build-fixes.patch.1 |   24 +++-
 1 file changed, 11 insertions(+), 13 deletions(-)

New commits:
commit 6838fbbc5c52ae001dbffcffb8e86922ece02cd8
Author: Mike Kaganski 
AuthorDate: Tue Jun 27 17:04:33 2023 +0300
Commit: Mike Kaganski 
CommitDate: Tue Jun 27 22:10:44 2023 +0200

Fix gpgme build on Windows

Commit 97c67afac1ec9351d0a64011a7ddfb7dfa876484 (Update gpgme to 1.20.0,
2023-06-23) defined ssize_t in external/gpgmepp/w32-build-fixes.patch.1.
It was done to address the use of ssize_t in src/debug.h, appeared in

https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=7d1159c1e99bb1bae0ab698c85105dcdcb95b7ea

This led to build errors like

  
C:\cygwin\home\tdf\lode\jenkins\workspace\lo_tb_master_win64_dbg\workdir\UnpackedTarball\gpgmepp\src\debug.h(26):
 error C2371: 'ssize_t': redefinition; different basic types
  
C:\cygwin\home\tdf\lode\jenkins\workspace\lo_tb_master_win64_dbg\workdir\UnpackedTarball\libassuan\src\assuan.h(47):
 note: see declaration of 'ssize_t'

To fix it locally, just revert the problematic patch, until fixed upstream.

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

diff --git a/external/gpgmepp/w32-build-fixes.patch.1 
b/external/gpgmepp/w32-build-fixes.patch.1
index b96bb62e8fde..4d9428781cc5 100644
--- a/external/gpgmepp/w32-build-fixes.patch.1
+++ b/external/gpgmepp/w32-build-fixes.patch.1
@@ -1,17 +1,15 @@
 diff -ru gpgme.orig/src/debug.h gpgme/src/debug.h
 gpgme.orig/src/debug.h 2023-04-17 22:09:48.0 +0900
-+++ gpgme/src/debug.h  2023-06-25 20:43:29.267407815 +0900
-@@ -21,6 +21,10 @@
- #ifndef DEBUG_H
- #define DEBUG_H
- 
-+#ifdef _MSC_VER
-+#include 
-+typedef SSIZE_T ssize_t;
-+#endif
- #include 
- #ifdef HAVE_STDINT_H
- #include 
+--- gpgme.orig/src/debug.h
 gpgme/src/debug.h
+@@ -180,7 +180,7 @@ static inline gpgme_ssize_t
+ _trace_sysres_ssize_t (gpgme_ssize_t res, int lvl, const char *func, int line)
+ {
+   if (res >= 0)
+-_gpgme_debug (NULL, lvl, 3, func, NULL, NULL, "result=%zd", (ssize_t)res);
++_gpgme_debug (NULL, lvl, 3, func, NULL, NULL, "result=%zd", res);
+   else
+ _gpgme_debug (NULL, lvl, -1, NULL, NULL, NULL,
+   "%s:%d: error: %s (%d)\n",
 diff -ru gpgme.orig/src/dirinfo.c gpgme/src/dirinfo.c
 --- gpgme.orig/src/dirinfo.c   2017-03-21 11:09:41.0 +0100
 +++ gpgme/src/dirinfo.c2017-09-30 08:36:13.239279300 +0200


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - configure.ac download.lst external/icu

2023-06-27 Thread Taichi Haradaguchi (via logerrit)
 configure.ac|4 +--
 download.lst|8 +++
 external/icu/README |2 -
 external/icu/UnpackedTarball_icu.mk |1 
 external/icu/icu4c-khmerbreakengine.patch.1 |   23 ++--
 external/icu/ubsan.patch.1  |   31 
 6 files changed, 19 insertions(+), 50 deletions(-)

New commits:
commit f8fbfd9b6504fbbe6cd1de839a08848466e196e5
Author: Taichi Haradaguchi <20001...@ymail.ne.jp>
AuthorDate: Mon Jun 26 01:57:09 2023 +0900
Commit: Eike Rathke 
CommitDate: Tue Jun 27 21:38:11 2023 +0200

Update ICU to 73.2

Remove external/icu/ubsan.patch.1 that was applied upstream.

See https://icu.unicode.org/download/73

Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153574
Tested-by: Jenkins
Reviewed-by: Eike Rathke 
(cherry picked from commit 05c6cdb144d1732ca51d463845fa6ddef7c08265)

 Conflicts:
configure.ac

Change-Id: Ic2bc450b093f1c0ddb09ebe915a9c3e70d7e0964
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153640
Tested-by: Jenkins
Reviewed-by: Eike Rathke 

diff --git a/configure.ac b/configure.ac
index 7625ad603eee..014cef7845c6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10746,8 +10746,8 @@ fi
 dnl ===
 dnl Check for system icu
 dnl ===
-ICU_MAJOR=72
-ICU_MINOR=1
+ICU_MAJOR=73
+ICU_MINOR=2
 ICU_RECLASSIFIED_PREPEND_SET_EMPTY="TRUE"
 ICU_RECLASSIFIED_CONDITIONAL_JAPANESE_STARTER="TRUE"
 ICU_RECLASSIFIED_HEBREW_LETTER="TRUE"
diff --git a/download.lst b/download.lst
index b89efb00a776..8d9f83b8db7a 100644
--- a/download.lst
+++ b/download.lst
@@ -242,10 +242,10 @@ HYPHEN_TARBALL := 
5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-ICU_SHA256SUM := 
a2d2d38217092a7ed56635e34467f92f976b370e20182ad325edea6681a71d68
-ICU_TARBALL := icu4c-72_1-src.tgz
-ICU_DATA_SHA256SUM := 
ee19f876507d6c23d9e0a2b631096f6b0eaa6fa61728c33a89efdb55e3385dea
-ICU_DATA_TARBALL := icu4c-72_1-data.zip
+ICU_SHA256SUM := 
818a80712ed3caacd9b652305e01afc7fa167e6f2e94996da44b90c2ab604ce1
+ICU_TARBALL := icu4c-73_2-src.tgz
+ICU_DATA_SHA256SUM := 
ca1ee076163b438461e484421a7679fc33a64cd0a54f9d4b401893fa1eb42701
+ICU_DATA_TARBALL := icu4c-73_2-data.zip
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
diff --git a/external/icu/README b/external/icu/README
index 484de1f41536..23cf5f0524ae 100644
--- a/external/icu/README
+++ b/external/icu/README
@@ -1 +1 @@
-Library providing Unicode support, from [http://site.icu-project.org/].
+Library providing Unicode support, from [https://icu.unicode.org/].
diff --git a/external/icu/UnpackedTarball_icu.mk 
b/external/icu/UnpackedTarball_icu.mk
index b5b072b1e1e6..655614447d53 100644
--- a/external/icu/UnpackedTarball_icu.mk
+++ b/external/icu/UnpackedTarball_icu.mk
@@ -33,7 +33,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,icu,\
external/icu/icu4c-clang-cl.patch.1 \
external/icu/gcc9.patch \
external/icu/c++20-comparison.patch.1 \
-   external/icu/ubsan.patch.1 \
external/icu/Wdeprecated-copy-dtor.patch \
external/icu/icu4c-windows-cygwin-cross.patch.1 \
external/icu/icu4c-emscripten-cross.patch.1 \
diff --git a/external/icu/icu4c-khmerbreakengine.patch.1 
b/external/icu/icu4c-khmerbreakengine.patch.1
index ea8f20f443ff..605914014e96 100644
--- a/external/icu/icu4c-khmerbreakengine.patch.1
+++ b/external/icu/icu4c-khmerbreakengine.patch.1
@@ -1,6 +1,6 @@
 diff -ur icu.org/source/common/dictbe.cpp icu/source/common/dictbe.cpp
 icu.org/source/common/dictbe.cpp   2022-04-08 00:41:55.0 +0200
-+++ icu/source/common/dictbe.cpp   2022-05-16 13:56:43.426870900 +0200
+--- icu.org/source/common/dictbe.cpp   2023-06-14 06:23:55.0 +0900
 icu/source/common/dictbe.cpp   2023-06-26 17:43:53.034173100 +0900
 @@ -35,7 +35,19 @@
   **
   */
@@ -211,8 +211,8 @@ diff -ur icu.org/source/common/dictbe.cpp 
icu/source/common/dictbe.cpp
  int32_t start = (int32_t)utext_getNativeIndex(text);
  if (start != offset) {
  offset = start;
--count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, NULL, &prefix);
-+count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, NULL, &prefix, ignoreSet, minLength);
+-count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, nullptr, &prefix);
++count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, nullptr, &prefix, ignoreSet, minLength);
  // Dictionary le

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

2023-06-27 Thread Noel Grandin (via logerrit)
 vcl/win/gdi/salprn.cxx |2 --
 1 file changed, 2 deletions(-)

New commits:
commit 2c685e244f44271e0dde1960e0973da9708576fe
Author: Noel Grandin 
AuthorDate: Tue Jun 27 14:18:40 2023 +0200
Commit: Noel Grandin 
CommitDate: Tue Jun 27 19:23:25 2023 +0200

remove this SAL_WARN

has not revealed anything interesting on jenkins

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

diff --git a/vcl/win/gdi/salprn.cxx b/vcl/win/gdi/salprn.cxx
index 71e4753995ae..78c8135a93d2 100644
--- a/vcl/win/gdi/salprn.cxx
+++ b/vcl/win/gdi/salprn.cxx
@@ -1080,8 +1080,6 @@ void WinSalInfoPrinter::setHDC(HDC hNewDC)
 if (m_hDC)
 {
 assert(!m_pGraphics || m_hDC == m_pGraphics->getHDC());
-// we get intermittent crashes on the Windows jenkins box around here, 
let us see if there is something weird about the DC
-SAL_WARN_IF(!hNewDC, "vcl", "Graphics DC " << m_hDC);
 delete m_pGraphics;
 m_pGraphics = nullptr;
 DeleteDC(m_hDC);


[Libreoffice-commits] core.git: tools/source

2023-06-27 Thread Andrea Gelmini (via logerrit)
 tools/source/datetime/duration.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 858dfb53598ed379a2e72c887a7f77909b550ca0
Author: Andrea Gelmini 
AuthorDate: Sat Jun 17 18:10:33 2023 +0200
Commit: Julien Nabet 
CommitDate: Tue Jun 27 18:52:23 2023 +0200

Fix typo

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

diff --git a/tools/source/datetime/duration.cxx 
b/tools/source/datetime/duration.cxx
index 42ce2a8a6cc4..a7b2762fff49 100644
--- a/tools/source/datetime/duration.cxx
+++ b/tools/source/datetime/duration.cxx
@@ -236,7 +236,7 @@ Duration Duration::Mult(sal_Int32 nMult, bool& rbOverflow) 
const
 }
 if (bBadNS)
 {
-// Simple calculation in overall nanoseconds overflew, try with
+// Simple calculation in overall nanoseconds overflowed, try with
 // individual components.
 const sal_uInt64 nMult64 = (nMult < 0) ? -nMult : nMult;
 do


[Libreoffice-commits] core.git: drawinglayer/source

2023-06-27 Thread Armin Le Grand (allotropia) (via logerrit)
 drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx |   16 +++--
 1 file changed, 9 insertions(+), 7 deletions(-)

New commits:
commit 3b06c1835e9fcbbcdcd6ce2b207301f4f8bb6388
Author: Armin Le Grand (allotropia) 
AuthorDate: Tue Jun 27 13:46:51 2023 +0200
Commit: Armin Le Grand 
CommitDate: Tue Jun 27 18:37:16 2023 +0200

MCGR: tdf#155479 always propagate SVG-flag for sub-content metafiles

For SVG export it is necessary to always propagate the SVG-flag for
metafiles in *any* case impDumpToMetaFile is used and a new metafile
gets created (aContentMetafile here).
This is due to the subContent again may have any combinations of
gradients/transparenceGradients that are non-vcl-renderable and need
special handling.

Change-Id: I7edee8afa81c0b6f3fb0e183d144c50f29c5bb79
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153645
Tested-by: Jenkins
Reviewed-by: Armin Le Grand 

diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx 
b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
index b774848cc3a4..eae5980bf56c 100644
--- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
@@ -2295,6 +2295,11 @@ void 
VclMetafileProcessor2D::processUnifiedTransparencePrimitive2D(
 
 // various content, create content-metafile
 GDIMetaFile aContentMetafile;
+
+// tdf#155479 always forward propagate SVG flag for 
sub-content,
+// it may contain cannotBeHandledByVCL gradients or 
transparencyGradients
+
aContentMetafile.setSVG(mpOutputDevice->GetConnectMetaFile()->getSVG());
+
 const tools::Rectangle aPrimitiveRectangle(
 impDumpToMetaFile(rContent, aContentMetafile));
 
@@ -2391,8 +2396,7 @@ void 
VclMetafileProcessor2D::processTransparencePrimitive2D(
 
 // tdf#155479 Yepp, as already mentioned above we need to add
 // some MCGR infos in case of SVG export, prepare that here
-if (nullptr != mpOutputDevice->GetConnectMetaFile()
-&& mpOutputDevice->GetConnectMetaFile()->getSVG())
+if (mpOutputDevice->GetConnectMetaFile()->getSVG())
 {
 // for SVG, do not use decompose & prep extra data
 bSVGTransparencyColorStops = true;
@@ -2411,11 +2415,9 @@ void 
VclMetafileProcessor2D::processTransparencePrimitive2D(
 // vcl/metafile, so add it directly. various content, create 
content-metafile
 GDIMetaFile aContentMetafile;
 
-// tdf#155479 do not forget to forward SVG flag for sub-content
-if (bSVGTransparencyColorStops)
-{
-aContentMetafile.setSVG(true);
-}
+// tdf#155479 always forward propagate SVG flag for sub-content,
+// it may contain cannotBeHandledByVCL gradients or 
transparencyGradients
+
aContentMetafile.setSVG(mpOutputDevice->GetConnectMetaFile()->getSVG());
 
 const tools::Rectangle aPrimitiveRectangle(impDumpToMetaFile(rContent, 
aContentMetafile));
 


[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-4' - sw/qa sw/source

2023-06-27 Thread Mike Kaganski (via logerrit)
 sw/qa/extras/layout/data/three_sections.fodt |   18 ++
 sw/qa/extras/layout/layout.cxx   |   43 ++
 sw/source/core/inc/sectfrm.hxx   |2 
 sw/source/core/layout/frmtool.cxx|   63 +++--
 sw/source/core/layout/layhelp.hxx|3 +
 sw/source/core/layout/sectfrm.cxx|   79 ++-
 6 files changed, 129 insertions(+), 79 deletions(-)

New commits:
commit eae41835161a90bf395ea29559db953fb5b820e2
Author: Mike Kaganski 
AuthorDate: Thu Apr 20 11:18:34 2023 +0300
Commit: Michael Stahl 
CommitDate: Tue Jun 27 16:57:03 2023 +0200

tdf#154113: do not forget to split the outermost section frame

... when the inserted section node is not the first one.

The very first frame, where InsertCnt_ puts content to, may already have
some content after the insertion position. When an inner section ends,
the current section needs a new frame, and the rest of content must go
to that new frame. Previously, the new empty frame was created without
taking the content move into account.

This moves the split into the single place inside InsertCnt_, to avoid
special processing in MakeFrames.

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

(cherry-picked from commit efb3c57851d29440ef086c68a6c1ddbb8bc8fc00)

Change-Id: I021d868835b85226ab62ed8728c8aacdaf8e4528

diff --git a/sw/qa/extras/layout/data/three_sections.fodt 
b/sw/qa/extras/layout/data/three_sections.fodt
new file mode 100644
index ..9233fed89085
--- /dev/null
+++ b/sw/qa/extras/layout/data/three_sections.fodt
@@ -0,0 +1,18 @@
+
+
+
+ 
+  
+   Select the text below, copy to clipboard, and paste from clipboard, 
replacing the selection.
+   
+<-- Start selection here. Section1
+   
+   
+Section2
+   
+   
+Section3. End selection here -->
+   
+  
+ 
+
\ No newline at end of file
diff --git a/sw/qa/extras/layout/layout.cxx b/sw/qa/extras/layout/layout.cxx
index a6015fedaac3..6debcdbd0f17 100644
--- a/sw/qa/extras/layout/layout.cxx
+++ b/sw/qa/extras/layout/layout.cxx
@@ -4098,6 +4098,49 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter, testTdf134548)
 }
 }
 
+CPPUNIT_TEST_FIXTURE(SwLayoutWriter, testTdf154113)
+{
+createDoc("three_sections.fodt");
+Scheduler::ProcessEventsToIdle();
+
+lcl_dispatchCommand(mxComponent, ".uno:GoToStartOfDoc", {});
+lcl_dispatchCommand(mxComponent, ".uno:GoToNextPara", {});
+lcl_dispatchCommand(mxComponent, ".uno:EndOfDocumentSel", {}); // to the 
end of current section!
+lcl_dispatchCommand(mxComponent, ".uno:EndOfDocumentSel", {}); // to the 
end of the document.
+
+css::uno::Reference  xModel(mxComponent, 
css::uno::UNO_QUERY_THROW);
+css::uno::Reference  
xSelected(xModel->getCurrentSelection(), css::uno::UNO_QUERY_THROW);
+CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xSelected->getCount());
+css::uno::Reference  xRange (xSelected->getByIndex(0), 
css::uno::UNO_QUERY_THROW);
+
+//css::uno::Reference < css::uno::UNO_QUERY_THROW);
+CPPUNIT_ASSERT_EQUAL(OUString("<-- Start selection here. Section1" 
SAL_NEWLINE_STRING
+  "Section2" SAL_NEWLINE_STRING "Section3. End 
selection here -->"),
+ xRange->getString());
+
+lcl_dispatchCommand(mxComponent, ".uno:Cut", {});
+
+xSelected = css::uno::Reference  
(xModel->getCurrentSelection(), css::uno::UNO_QUERY_THROW);
+CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xSelected->getCount());
+xRange = css::uno::Reference  (xSelected->getByIndex(0), 
css::uno::UNO_QUERY_THROW);
+CPPUNIT_ASSERT_EQUAL(OUString(), xRange->getString());
+
+lcl_dispatchCommand(mxComponent, ".uno:Paste", {});
+
+xmlDocPtr pXml = parseLayoutDump();
+
+// Without the fix in place, this would fail with
+// - Expected: 3
+// - Actual  : 2
+assertXPath(pXml, "/root/page/body/section", 3);
+assertXPath(pXml, "/root/page/body/section[1]/txt/LineBreak", "Line",
+"<-- Start selection here. Section1");
+assertXPath(pXml, "/root/page/body/section[2]/txt/LineBreak", "Line",
+"Section2");
+assertXPath(pXml, "/root/page/body/section[3]/txt/LineBreak", "Line",
+"Section3. End selection here -->");
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/inc/sectfrm.hxx b/sw/source/core/inc/sectfrm.hxx
index 3b890b385e2a..9f75c83cac7b 100644
--- a/sw/source/core/inc/sectfrm.hxx
+++ b/sw/source/core/inc/sectfrm.hxx
@@ -96,7 +96,7 @@ public:
  * Splits the SectionFrame surrounding the pFrame up in two parts:
  * pFrame and the start of the 2nd part
  */
-bool SplitSect( SwFrame* pFrame, bool bApres );
+SwSectionFrame* SplitSect( SwFrame* pFrameStartAfter, Sw

[Libreoffice-commits] core.git: sc/source

2023-06-27 Thread Laurent Balland (via logerrit)
 sc/source/ui/dbgui/scuiasciiopt.cxx |   25 +++--
 sc/source/ui/inc/scuiasciiopt.hxx   |1 +
 2 files changed, 16 insertions(+), 10 deletions(-)

New commits:
commit 983644d061e1415c7c5554dd6fd51fe1043e9b9a
Author: Laurent Balland 
AuthorDate: Sat Jun 3 14:52:45 2023 +0200
Commit: Eike Rathke 
CommitDate: Tue Jun 27 17:41:43 2023 +0200

Import CSV: remove erroneous warning

If Fixed width is selected, clicking on any option in Other section 
generates a
warning about option not allowed, which is wrong. Only checkboxes in
Seprator section are not allowed

Change-Id: I3fc6fd6ac870e8c681aae8fd1d033b550d9bc20d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152573
Tested-by: Jenkins
Reviewed-by: Eike Rathke 

diff --git a/sc/source/ui/dbgui/scuiasciiopt.cxx 
b/sc/source/ui/dbgui/scuiasciiopt.cxx
index 61fa2d697251..601323a6586d 100644
--- a/sc/source/ui/dbgui/scuiasciiopt.cxx
+++ b/sc/source/ui/dbgui/scuiasciiopt.cxx
@@ -506,20 +506,21 @@ ScImportAsciiDlg::ScImportAsciiDlg(weld::Window* pParent, 
std::u16string_view aD
 mcTextSep = lcl_CharFromCombo(*mxCbTextSep, SCSTR_TEXTSEP);
 
 Link aSeparatorClickHdl =LINK( this, 
ScImportAsciiDlg, SeparatorClickHdl );
+Link aOtherOptionsClickHdl =LINK( this, 
ScImportAsciiDlg, OtherOptionsClickHdl );
 mxCbTextSep->connect_changed( LINK( this, ScImportAsciiDlg, 
SeparatorComboBoxHdl ) );
 mxCkbTab->connect_toggled( aSeparatorClickHdl );
 mxCkbSemicolon->connect_toggled( aSeparatorClickHdl );
 mxCkbComma->connect_toggled( aSeparatorClickHdl );
 mxCkbAsOnce->connect_toggled( aSeparatorClickHdl );
-mxCkbQuotedAsText->connect_toggled( aSeparatorClickHdl );
-mxCkbDetectNumber->connect_toggled( aSeparatorClickHdl );
-mxCkbDetectScientificNumber->connect_toggled( aSeparatorClickHdl );
-mxCkbEvaluateFormulas->connect_toggled( aSeparatorClickHdl );
-mxCkbSkipEmptyCells->connect_toggled( aSeparatorClickHdl );
 mxCkbSpace->connect_toggled( aSeparatorClickHdl );
 mxCkbRemoveSpace->connect_toggled( aSeparatorClickHdl );
 mxCkbOther->connect_toggled( aSeparatorClickHdl );
 mxEdOther->connect_changed(LINK(this, ScImportAsciiDlg, SeparatorEditHdl));
+mxCkbQuotedAsText->connect_toggled( aOtherOptionsClickHdl );
+mxCkbDetectNumber->connect_toggled( aOtherOptionsClickHdl );
+mxCkbDetectScientificNumber->connect_toggled( aOtherOptionsClickHdl );
+mxCkbEvaluateFormulas->connect_toggled( aOtherOptionsClickHdl );
+mxCkbSkipEmptyCells->connect_toggled( aOtherOptionsClickHdl );
 
 // *** text encoding ListBox ***
 // all encodings allowed, including Unicode, but subsets are excluded
@@ -837,12 +838,9 @@ IMPL_LINK( ScImportAsciiDlg, SeparatorEditHdl, 
weld::Entry&, rEdit, void )
 SeparatorHdl(&rEdit);
 }
 
-void ScImportAsciiDlg::SeparatorHdl(const weld::Widget* pCtrl)
+IMPL_LINK(ScImportAsciiDlg, OtherOptionsClickHdl, weld::Toggleable&, rCtrl, 
void)
 {
-OSL_ENSURE( pCtrl, "ScImportAsciiDlg::SeparatorHdl - missing sender" );
-OSL_ENSURE( !mxRbFixed->get_active(), "ScImportAsciiDlg::SeparatorHdl - 
not allowed in fixed width" );
-
-if (pCtrl == mxCkbDetectNumber.get())
+if (&rCtrl == mxCkbDetectNumber.get())
 {
 if (mxCkbDetectNumber->get_active())
 {
@@ -853,6 +851,13 @@ void ScImportAsciiDlg::SeparatorHdl(const weld::Widget* 
pCtrl)
 mxCkbDetectScientificNumber->set_sensitive(true);
 return;
 }
+}
+
+void ScImportAsciiDlg::SeparatorHdl(const weld::Widget* pCtrl)
+{
+OSL_ENSURE( pCtrl, "ScImportAsciiDlg::SeparatorHdl - missing sender" );
+OSL_ENSURE( !mxRbFixed->get_active(), "ScImportAsciiDlg::SeparatorHdl - 
not allowed in fixed width" );
+
 /*  #i41550# First update state of the controls. The GetSeparators()
 function needs final state of the check boxes. */
 if (pCtrl == mxCkbOther.get() && mxCkbOther->get_active())
diff --git a/sc/source/ui/inc/scuiasciiopt.hxx 
b/sc/source/ui/inc/scuiasciiopt.hxx
index a96f2f591320..309192477ecf 100644
--- a/sc/source/ui/inc/scuiasciiopt.hxx
+++ b/sc/source/ui/inc/scuiasciiopt.hxx
@@ -111,6 +111,7 @@ private:
 DECL_LINK( RbSepFixHdl, weld::Toggleable&, 
void );
 DECL_LINK( SeparatorEditHdl, weld::Entry&, 
void );
 DECL_LINK( SeparatorClickHdl, 
weld::Toggleable&, void );
+DECL_LINK( OtherOptionsClickHdl, 
weld::Toggleable&, void );
 DECL_LINK( SeparatorComboBoxHdl, 
weld::ComboBox&, void );
 void SeparatorHdl(const weld::Widget*);
 DECL_LINK( LbColTypeHdl, weld::ComboBox&, void 
);


[Libreoffice-commits] core.git: include/xmloff schema/libreoffice xmloff/source

2023-06-27 Thread Laurent Balland (via logerrit)
 include/xmloff/xmlnumfe.hxx |4 
 schema/libreoffice/OpenDocument-v1.3+libreoffice-schema.rng |   13 ++
 xmloff/source/style/xmlnumfe.cxx|   73 +++-
 xmloff/source/style/xmlnumfi.cxx|4 
 4 files changed, 61 insertions(+), 33 deletions(-)

New commits:
commit 8ef4d3a4160af967937e9bb7c60bee4a8eb71a1b
Author: Laurent Balland 
AuthorDate: Fri Apr 21 18:06:32 2023 +0200
Commit: Eike Rathke 
CommitDate: Tue Jun 27 17:26:22 2023 +0200

related tdf#153993 Embedded text in scientific numbers

Embedded text was limited to number:number. But scientific notation may
require embedded text like
0.000" "000E+00
This change extend ODF format to support embedded text in
number:scientific-number also

Change-Id: I4e3220b06efbd9228d722bf518e137d7707ccf4f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150804
Tested-by: Jenkins
Reviewed-by: Eike Rathke 

diff --git a/include/xmloff/xmlnumfe.hxx b/include/xmloff/xmlnumfe.hxx
index fd0711b3a0c3..43e1814dc26b 100644
--- a/include/xmloff/xmlnumfe.hxx
+++ b/include/xmloff/xmlnumfe.hxx
@@ -64,12 +64,14 @@ private:
 
 SAL_DLLPRIVATE void WriteColorElement_Impl( const Color& rColor );
 SAL_DLLPRIVATE void WriteIntegerElement_Impl( sal_Int32 nInteger, 
sal_Int32 nBlankInteger, bool bGrouping );
+SAL_DLLPRIVATE void WriteEmbeddedEntries_Impl( const 
SvXMLEmbeddedTextEntryArr& rEmbeddedEntries );
 SAL_DLLPRIVATE void WriteNumberElement_Impl( sal_Int32 nDecimals, 
sal_Int32 nMinDecimals,
 sal_Int32 nInteger, sal_Int32 
nBlankInteger, const OUString& rDashStr,
 bool bGrouping, sal_Int32 
nTrailingThousands,
 const SvXMLEmbeddedTextEntryArr& 
rEmbeddedEntries );
 SAL_DLLPRIVATE void WriteScientificElement_Impl( sal_Int32 nDecimals, 
sal_Int32 nMinDecimals, sal_Int32 nInteger, sal_Int32 nBlankInteger,
-bool bGrouping, sal_Int32 nExp, 
sal_Int32 nExpInterval, bool bExpSign );
+bool bGrouping, sal_Int32 nExp, 
sal_Int32 nExpInterval, bool bExpSign,
+const SvXMLEmbeddedTextEntryArr& 
rEmbeddedEntries );
 SAL_DLLPRIVATE void WriteFractionElement_Impl( sal_Int32 nInteger, 
sal_Int32 nBlankInteger, bool bGrouping,
const SvNumberformat& 
rFormat, sal_uInt16 nPart );
 SAL_DLLPRIVATE void WriteCurrencyElement_Impl( const OUString& rString,
diff --git a/schema/libreoffice/OpenDocument-v1.3+libreoffice-schema.rng 
b/schema/libreoffice/OpenDocument-v1.3+libreoffice-schema.rng
index f01e1c8533e7..6bb2c6972b7c 100644
--- a/schema/libreoffice/OpenDocument-v1.3+libreoffice-schema.rng
+++ b/schema/libreoffice/OpenDocument-v1.3+libreoffice-schema.rng
@@ -1995,6 +1995,19 @@ 
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.
   
 
 
+
+  
+
+
+
+
+
+  
+
+
+  
+
+

 
 
diff --git a/xmloff/source/style/xmlnumfe.cxx b/xmloff/source/style/xmlnumfe.cxx
index 59e9f7714916..fb767dc3a10d 100644
--- a/xmloff/source/style/xmlnumfe.cxx
+++ b/xmloff/source/style/xmlnumfe.cxx
@@ -550,6 +550,35 @@ void SvXMLNumFmtExport::WriteIntegerElement_Impl(
 }
 }
 
+void SvXMLNumFmtExport::WriteEmbeddedEntries_Impl( const 
SvXMLEmbeddedTextEntryArr& rEmbeddedEntries )
+{
+auto nEntryCount = rEmbeddedEntries.size();
+for (decltype(nEntryCount) nEntry=0; nEntry < nEntryCount; ++nEntry)
+{
+const SvXMLEmbeddedTextEntry *const pObj = &rEmbeddedEntries[nEntry];
+
+//  position attribute
+// position == 0 is between first integer digit and decimal separator
+// position < 0 is inside decimal part
+m_rExport.AddAttribute( XML_NAMESPACE_NUMBER, XML_POSITION,
+OUString::number( pObj->nFormatPos ) );
+SvXMLElementExport aChildElem( m_rExport, XML_NAMESPACE_NUMBER, 
XML_EMBEDDED_TEXT,
+  true, false );
+
+//  text as element content
+OUStringBuffer aContent( pObj->aText );
+while ( nEntry+1 < nEntryCount && 
rEmbeddedEntries[nEntry+1].nFormatPos == pObj->nFormatPos )
+{
+// The array can contain several elements for the same position in 
the number
+// (for example, literal text and space from underscores). They 
must be merged
+// into a single embedded-text element.
+aContent.append(rEmbeddedEntries[nEntry+1].aText);
+++nEntry;
+}
+m_rExport.Characters( aContent.makeStringAndClear() );
+}
+}
+
 void SvXMLNumFmtExport::WriteNumberElement_Impl(
 sal_Int32 nDecimals, sal_Int

[Libreoffice-commits] core.git: download.lst

2023-06-27 Thread Eike Rathke (via logerrit)
 download.lst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit bc82afbfd320ecf5e7ed5dc87d1606b97dd10821
Author: Eike Rathke 
AuthorDate: Tue Jun 27 13:39:13 2023 +0200
Commit: Eike Rathke 
CommitDate: Tue Jun 27 16:56:29 2023 +0200

Update language-subtag-registry to 2023-05-11

Change-Id: Ieb1c3eab66c06c8e7b3d9751d9e4548dbd7efc04
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153643
Reviewed-by: Eike Rathke 
Tested-by: Jenkins

diff --git a/download.lst b/download.lst
index d38c37f48cf3..c25d371f47e7 100644
--- a/download.lst
+++ b/download.lst
@@ -279,8 +279,8 @@ LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-LANGTAGREG_SHA256SUM := 
e2d9224e0e50fc8ad12a3cf47396bbcadf45b2515839d4770432653a88972c00
-LANGTAGREG_TARBALL := language-subtag-registry-2022-08-08.tar.bz2
+LANGTAGREG_SHA256SUM := 
9042b64cd473bf36073513b474046f13778107b57c2ac47fb2633104120d69da
+LANGTAGREG_TARBALL := language-subtag-registry-2023-05-11.tar.bz2
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-23.05' - 2 commits - include/oox oox/inc oox/source sd/qa

2023-06-27 Thread Tibor Nagy (via logerrit)
 include/oox/export/drawingml.hxx|4 +
 oox/inc/drawingml/fillproperties.hxx|2 
 oox/source/drawingml/fillproperties.cxx |   89 ++--
 oox/source/drawingml/shape.cxx  |5 +
 oox/source/export/drawingml.cxx |   78 
 oox/source/ppt/slidepersist.cxx |7 ++
 sd/qa/unit/data/odp/tdf153105.odp   |binary
 sd/qa/unit/data/pptx/tdf153466.pptx |binary
 sd/qa/unit/export-tests-ooxml3.cxx  |   18 ++
 sd/qa/unit/import-tests.cxx |   22 +++
 10 files changed, 209 insertions(+), 16 deletions(-)

New commits:
commit a1acb19ec4c239a24b23ec9c03ad52465895606d
Author: Tibor Nagy 
AuthorDate: Wed Mar 8 16:26:10 2023 +0100
Commit: Caolán McNamara 
CommitDate: Tue Jun 27 16:00:35 2023 +0200

tdf#153466 PPTX import: fix "Custom position/size" background image

Custom sized background with the value "tile" was imported as
"stretched", losing the preset size. Restore also the exported
preset positions, and map the other values to the preset positions
supported by OpenDocument/Impress.

Follow-up to commit 11451781d4c562f506a3aae3732e35b92387b4db
(tdf#153105 PPTX export: fix "Custom position/size" background image)

Change-Id: Ibf9b487ecd31b3ad7b06bda668c51e6b7a98c4af
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148482
Tested-by: László Németh 
Reviewed-by: László Németh 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153580
Reviewed-by: Jaume Pujantell 
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Caolán McNamara 

diff --git a/oox/inc/drawingml/fillproperties.hxx 
b/oox/inc/drawingml/fillproperties.hxx
index 828c858e12f2..3323907fcad8 100644
--- a/oox/inc/drawingml/fillproperties.hxx
+++ b/oox/inc/drawingml/fillproperties.hxx
@@ -24,6 +24,7 @@
 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -147,6 +148,7 @@ struct FillProperties
 const GraphicHelper& rGraphicHelper,
 sal_Int32 nShapeRotation = 0,
 ::Color nPhClr = API_RGB_TRANSPARENT,
+const css::awt::Size& rSize = {},
 sal_Int16 nPhClrTheme = -1,
 bool bFlipH = false,
 bool bFlipV = false,
diff --git a/oox/source/drawingml/fillproperties.cxx 
b/oox/source/drawingml/fillproperties.cxx
index 0a2e53928076..becc632fd923 100644
--- a/oox/source/drawingml/fillproperties.cxx
+++ b/oox/source/drawingml/fillproperties.cxx
@@ -400,9 +400,10 @@ Color FillProperties::getBestSolidColor() const
 return aSolidColor;
 }
 
-void FillProperties::pushToPropMap( ShapePropertyMap& rPropMap,
-const GraphicHelper& rGraphicHelper, sal_Int32 nShapeRotation, ::Color 
nPhClr, sal_Int16 nPhClrTheme,
-bool bFlipH, bool bFlipV, bool bIsCustomShape) const
+void FillProperties::pushToPropMap(ShapePropertyMap& rPropMap, const 
GraphicHelper& rGraphicHelper,
+   sal_Int32 nShapeRotation, ::Color nPhClr,
+   const css::awt::Size& rSize, sal_Int16 
nPhClrTheme, bool bFlipH,
+   bool bFlipV, bool bIsCustomShape) const
 {
 if( !moFillType.has_value() )
 return;
@@ -588,7 +589,6 @@ void FillProperties::pushToPropMap( ShapePropertyMap& 
rPropMap,
 {
 // bitmap mode (single, repeat, stretch)
 BitmapMode eBitmapMode = lclGetBitmapMode( 
maBlipProps.moBitmapMode.value_or( XML_TOKEN_INVALID ) );
-rPropMap.setProperty( ShapeProperty::FillBitmapMode, 
eBitmapMode );
 
 // additional settings for repeated bitmap
 if( eBitmapMode == BitmapMode_REPEAT )
@@ -636,21 +636,82 @@ void FillProperties::pushToPropMap( ShapePropertyMap& 
rPropMap,
 // Negative GraphicCrop values means "crop" here.
 bool bNeedCrop = aGraphCrop.Left <= 0 && 
aGraphCrop.Right <= 0 && aGraphCrop.Top <= 0 && aGraphCrop.Bottom <= 0;
 
-if(bIsCustomShape && bHasCropValues && bNeedCrop)
+if (bHasCropValues)
 {
-// Physically crop the image
-// In this case, don't set the 
PROP_GraphicCrop because that
-// would lead to applying the crop twice after 
roundtrip
-xGraphic = lclCropGraphic(xGraphic, 
CropQuotientsFromFillRect(aFillRect));
-if 
(rPropMap.supportsProperty(ShapeProperty::FillBitmapName))
-
rPropMap.setProperty(ShapeProperty::FillBitmapName, xGraphic);
+if (bIsCustomShape && bNeedCrop)
+ 

[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sw/uiconfig

2023-06-27 Thread Seth Chaiklin (via logerrit)
 sw/uiconfig/swriter/ui/navigatorpanel.ui |8 
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit 90935d855d67766ec2a94415baa211608fce019a
Author: Seth Chaiklin 
AuthorDate: Mon Jun 26 00:14:23 2023 +0200
Commit: Adolfo Jayme Barrientos 
CommitDate: Tue Jun 27 15:30:31 2023 +0200

tdf#153721  label change: "Move Chapter..." -> "Move Heading..."

Change-Id: I61fd56566f7a2726492db6fb93699c18dbd2d2ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153591
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos 
(cherry picked from commit fb3dfbd57d91307de383d401c1caf4bb0d9029b9)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153655

diff --git a/sw/uiconfig/swriter/ui/navigatorpanel.ui 
b/sw/uiconfig/swriter/ui/navigatorpanel.ui
index d34e58af1260..11ec47912f22 100644
--- a/sw/uiconfig/swriter/ui/navigatorpanel.ui
+++ b/sw/uiconfig/swriter/ui/navigatorpanel.ui
@@ -567,7 +567,7 @@
 
   
 True
-Promote outline level
+Promote Outline Level
 sw/res/sc20172.png
 
   
@@ -583,7 +583,7 @@
 
   
 True
-Demote outline level
+Demote Outline Level
 sw/res/sc20173.png
 
   
@@ -599,7 +599,7 @@
 
   
 True
-Move chapter up
+Move Heading Up
 sw/res/sc20174.png
 
   
@@ -615,7 +615,7 @@
 
   
 True
-Move chapter down
+Move Heading Down
 sw/res/sc20171.png
 
   


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sw/uiconfig

2023-06-27 Thread Seth Chaiklin (via logerrit)
 sw/uiconfig/swriter/ui/navigatorcontextmenu.ui |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 87e626fedc68418fd91d4fc18d020562a2044e7f
Author: Seth Chaiklin 
AuthorDate: Wed May 31 16:05:27 2023 +0200
Commit: Adolfo Jayme Barrientos 
CommitDate: Tue Jun 27 15:29:48 2023 +0200

tdf#153721  label change: "Move Chapter..." -> "Move Heading..."

Change-Id: Ice74663d3381b9e360cb8cb739bb5dc4103a0bec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152435
Tested-by: Jenkins
Reviewed-by: Seth Chaiklin 
(cherry picked from commit be19f007db146e9b22c1f01dacec0840e44929cb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153599
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/sw/uiconfig/swriter/ui/navigatorcontextmenu.ui 
b/sw/uiconfig/swriter/ui/navigatorcontextmenu.ui
index 9ef3a5bbc6d3..b3a02800fcdb 100644
--- a/sw/uiconfig/swriter/ui/navigatorcontextmenu.ui
+++ b/sw/uiconfig/swriter/ui/navigatorcontextmenu.ui
@@ -57,7 +57,7 @@
   
 True
 False
-Delete Chapter
+Delete Heading
 True
 
   
@@ -66,7 +66,7 @@
   
 True
 False
-Move Chapter Up
+Move Heading Up
 True
 
   
@@ -75,7 +75,7 @@
   
 True
 False
-Move Chapter Down
+Move Heading Down
 True
 
   


Multicolor gradients in Release Notes 7.6

2023-06-27 Thread Regina Henschel

Hi all,

LibreOffice 7.6 has the new feature "Multicolor gradient". I have added 
an item about that to the section Core/General in the Release Notes [1].


This text contains links to the files 
InfoPresentation_MultiColor_Gradients_LO76.odp and MacrosForMCGR.odp.


It would be nice if these two files are reviewed. Please improve any 
errors you find or notify me.


[1] https://wiki.documentfoundation.org/ReleaseNotes/7.6/en#Core_/_General

Kind regards,
Regina


Re: ESC budget ranking vote

2023-06-27 Thread Ilmari Lauhakangas

On 22.6.2023 21.47, Ilmari Lauhakangas wrote:
Per the decision in the ESC budget review meeting today, below is the 
ranking of budget items to be submitted to TDF board of directors.


Non-conflicted ESC members: please give your approval of the ranking by 
replying to this mail.


Unfortunately we have to suspend the vote as the way to do the ranking 
in bulk was not entirely in line with the new process. Hopefully with 
some tweaks we can still approve in a quick way. More to follow.


Ilmari


[Libreoffice-commits] core.git: sw/CppunitTest_sw_apitests.mk sw/qa

2023-06-27 Thread anfanite396 (via logerrit)
 sw/CppunitTest_sw_apitests.mk   |3 -
 sw/qa/api/SwXFootnoteProperties.cxx |   96 
 2 files changed, 98 insertions(+), 1 deletion(-)

New commits:
commit dab294beb861b651e02ff8598aa5b30fd852f5d3
Author: anfanite396 
AuthorDate: Mon Jun 26 17:16:30 2023 +0530
Commit: Tomaž Vajngerl 
CommitDate: Tue Jun 27 14:47:10 2023 +0200

Move SwXFootnotesSupplier Java tests to C++

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

diff --git a/sw/CppunitTest_sw_apitests.mk b/sw/CppunitTest_sw_apitests.mk
index e71270e4d4db..f3c0c76bc91a 100644
--- a/sw/CppunitTest_sw_apitests.mk
+++ b/sw/CppunitTest_sw_apitests.mk
@@ -19,7 +19,8 @@ $(eval $(call 
gb_CppunitTest_add_exception_objects,sw_apitests, \
 sw/qa/api/SwXBodyText \
 sw/qa/api/SwXDocumentIndex \
 sw/qa/api/SwXDocumentSettings \
-   sw/qa/api/SwXTextFrame \
+sw/qa/api/SwXFootnoteProperties \
+sw/qa/api/SwXTextFrame \
 sw/qa/api/SwXTextField \
 sw/qa/api/SwXTextTable \
 ))
diff --git a/sw/qa/api/SwXFootnoteProperties.cxx 
b/sw/qa/api/SwXFootnoteProperties.cxx
new file mode 100644
index ..e716181a5594
--- /dev/null
+++ b/sw/qa/api/SwXFootnoteProperties.cxx
@@ -0,0 +1,96 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include 
+#include 
+#include 
+#include 
+
+#include 
+
+#include 
+
+#include 
+#include 
+#include 
+#include 
+
+#include 
+
+using namespace css;
+using namespace css::uno;
+
+namespace
+{
+/**
+ * Initial tests for SwXFootnoteProperties.
+ */
+class SwXFootnoteProperties final : public test::BootstrapFixture,
+public unotest::MacrosTest,
+public apitest::XElementAccess,
+public apitest::XIndexAccess
+{
+public:
+SwXFootnoteProperties();
+virtual void setUp() override;
+void tearDown() override;
+
+Reference init() override;
+
+CPPUNIT_TEST_SUITE(SwXFootnoteProperties);
+CPPUNIT_TEST_SUITE_END();
+
+private:
+uno::Reference component_;
+};
+
+SwXFootnoteProperties::SwXFootnoteProperties()
+: XElementAccess(cppu::UnoType::get())
+, XIndexAccess(3)
+{
+}
+
+void SwXFootnoteProperties::setUp()
+{
+test::BootstrapFixture::setUp();
+mxDesktop.set(
+
frame::Desktop::create(comphelper::getComponentContext(getMultiServiceFactory(;
+}
+
+void SwXFootnoteProperties::tearDown()
+{
+if (component_.is())
+component_->dispose();
+
+test::BootstrapFixture::tearDown();
+}
+
+Reference SwXFootnoteProperties::init()
+{
+component_ = loadFromDesktop("private:factory/swriter", 
"com.sun.star.text.TextDocument");
+Reference xTextDocument(component_, UNO_QUERY_THROW);
+Reference xMSF(component_, UNO_QUERY_THROW);
+
+Reference 
xFootnote(xMSF->createInstance("com.sun.star.text.Footnote"),
+ UNO_QUERY_THROW);
+
+Reference xText = xTextDocument->getText();
+Reference xCursor = xText->createTextCursor();
+
+xText->insertTextContent(xCursor, xFootnote, false);
+
+Reference xFootnotesSupplier(xTextDocument, 
UNO_QUERY_THROW);
+
+return Reference(xFootnotesSupplier->getFootnoteSettings(), 
UNO_QUERY_THROW);
+}
+
+CPPUNIT_TEST_SUITE_REGISTRATION(SwXFootnoteProperties);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */


[Libreoffice-commits] core.git: svgio/inc svgio/Library_svgio.mk svgio/qa svgio/source

2023-06-27 Thread Xisco Fauli (via logerrit)
 svgio/Library_svgio.mk|3 
 svgio/inc/svgfeoffsetnode.hxx |   45 
 svgio/inc/svgtoken.hxx|3 
 svgio/qa/cppunit/SvgImportTest.cxx|   21 +
 svgio/qa/cppunit/data/filterFeOffset.svg  |   18 +
 svgio/source/svgreader/svgdocumenthandler.cxx |   17 +++-
 svgio/source/svgreader/svgfeoffsetnode.cxx|   92 ++
 svgio/source/svgreader/svgfilternode.cxx  |9 ++
 svgio/source/svgreader/svgtoken.cxx   |5 -
 9 files changed, 204 insertions(+), 9 deletions(-)

New commits:
commit c8caee61ff392db8bcf630309324b46d962886e1
Author: Xisco Fauli 
AuthorDate: Mon Jun 26 23:24:52 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 14:21:26 2023 +0200

tdf#156068: Add support for feOffset filter

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

diff --git a/svgio/Library_svgio.mk b/svgio/Library_svgio.mk
index 76c0e87123bb..3702806a311c 100644
--- a/svgio/Library_svgio.mk
+++ b/svgio/Library_svgio.mk
@@ -60,8 +60,9 @@ $(eval $(call gb_Library_add_exception_objects,svgio,\
 svgio/source/svgreader/svgellipsenode \
 svgio/source/svgreader/svggnode \
 svgio/source/svgreader/svganode \
-svgio/source/svgreader/svgfegaussianblurnode \
 svgio/source/svgreader/svgfecolormatrixnode \
+svgio/source/svgreader/svgfegaussianblurnode \
+svgio/source/svgreader/svgfeoffsetnode \
 svgio/source/svgreader/svgfilternode \
 svgio/source/svgreader/svggradientnode \
 svgio/source/svgreader/svggradientstopnode \
diff --git a/svgio/inc/svgfeoffsetnode.hxx b/svgio/inc/svgfeoffsetnode.hxx
new file mode 100644
index ..22bf212d7c20
--- /dev/null
+++ b/svgio/inc/svgfeoffsetnode.hxx
@@ -0,0 +1,45 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ *   Licensed to the Apache Software Foundation (ASF) under one or more
+ *   contributor license agreements. See the NOTICE file distributed
+ *   with this work for additional information regarding copyright
+ *   ownership. The ASF licenses this file to you under the Apache
+ *   License, Version 2.0 (the "License"); you may not use this file
+ *   except in compliance with the License. You may obtain a copy of
+ *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include "svgnode.hxx"
+#include "svgstyleattributes.hxx"
+
+namespace svgio::svgreader
+{
+class SvgFeOffsetNode final : public SvgNode
+{
+private:
+SvgNumber maDx;
+SvgNumber maDy;
+
+public:
+SvgFeOffsetNode(SvgDocument& rDocument, SvgNode* pParent);
+virtual ~SvgFeOffsetNode() override;
+
+virtual void parseAttribute(const OUString& rTokenName, SVGToken aSVGToken,
+const OUString& aContent) override;
+
+void apply(drawinglayer::primitive2d::Primitive2DContainer& rTarget) const;
+};
+
+} // end of namespace svgio::svgreader
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svgio/inc/svgtoken.hxx b/svgio/inc/svgtoken.hxx
index 9c28674b1cfb..fb2e04c278f4 100644
--- a/svgio/inc/svgtoken.hxx
+++ b/svgio/inc/svgtoken.hxx
@@ -80,8 +80,9 @@ namespace svgio::svgreader
 Color,
 ClipPathNode,
 ClipPathProperty,
-FeGaussianBlur,
 FeColorMatrix,
+FeGaussianBlur,
+FeOffset,
 Filter,
 Mask,
 ClipPathUnits,
diff --git a/svgio/qa/cppunit/SvgImportTest.cxx 
b/svgio/qa/cppunit/SvgImportTest.cxx
index c3bbc0f9c211..7e32e83faf3a 100644
--- a/svgio/qa/cppunit/SvgImportTest.cxx
+++ b/svgio/qa/cppunit/SvgImportTest.cxx
@@ -182,6 +182,27 @@ CPPUNIT_TEST_FIXTURE(Test, testFilterFeGaussianBlur)
 assertXPath(pDocument, "/primitive2D/transform/softedge", "radius", "5");
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testFilterFeOffset)
+{
+Primitive2DSequence aSequenceTdf132246 = 
parseSvg(u"/svgio/qa/cppunit/data/filterFeOffset.svg");
+CPPUNIT_ASSERT_EQUAL(1, static_cast(aSequenceTdf132246.getLength()));
+
+drawinglayer::Primitive2dXmlDump dumper;
+xmlDocUniquePtr pDocument = dumper.dumpAndParse(aSequenceTdf132246);
+
+CPPUNIT_ASSERT (pDocument);
+
+assertXPath(pDocument, "/primitive2D/transform/mask/transform", "xy11", 
"1");
+assertXPath(pDocument, "/primitive2D/transform/mask/transform", "xy12", 
"0");
+assertXPath(pDocument, "/primitive2D/transform/mask/transform", "xy13", 
"44");
+assertXPath(pDocument, "/pri

[Libreoffice-commits] core.git: sd/source

2023-06-27 Thread Regina Henschel (via logerrit)
 sd/source/ui/sidebar/SlideBackground.cxx |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit 9321f8602ec903e1e311b831da0504826e1e4f90
Author: Regina Henschel 
AuthorDate: Tue Jun 27 10:50:23 2023 +0200
Commit: Regina Henschel 
CommitDate: Tue Jun 27 14:20:20 2023 +0200

tdf#145130 Keep existing gradient geometry using sidebar

When setting the start or end color of a gradient of a slide using the
sidebar, the new colors were set to a default gradient instead of using
the existing one.

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

diff --git a/sd/source/ui/sidebar/SlideBackground.cxx 
b/sd/source/ui/sidebar/SlideBackground.cxx
index ebdbf0977505..6cd8d6b4c858 100644
--- a/sd/source/ui/sidebar/SlideBackground.cxx
+++ b/sd/source/ui/sidebar/SlideBackground.cxx
@@ -1133,7 +1133,8 @@ IMPL_LINK_NOARG(SlideBackground, FillColorHdl, 
ColorListBox&, void)
 break;
 case drawing::FillStyle_GRADIENT:
 {
-basegfx::BGradient aGradient(createColorStops());
+basegfx::BGradient aGradient = GetGradientSetOrDefault();
+aGradient.SetColorStops(createColorStops());
 
 // the name doesn't really matter, it'll be converted to unique 
one eventually,
 // but it has to be non-empty


[Libreoffice-commits] core.git: sc/qa sc/source

2023-06-27 Thread Tibor Nagy (via logerrit)
 sc/qa/uitest/calc_tests8/tdf54768.py |   32 
 sc/qa/uitest/data/tdf54768.ods   |binary
 sc/source/ui/view/drawvie4.cxx   |   16 
 3 files changed, 36 insertions(+), 12 deletions(-)

New commits:
commit f5bf91ea73bf8a7cd3abc0f343ab2bdceaad905a
Author: Tibor Nagy 
AuthorDate: Thu Jun 22 09:53:59 2023 +0200
Commit: László Németh 
CommitDate: Tue Jun 27 14:18:42 2023 +0200

tdf#54768 sc: fix resizing of cropped images to original size

This is a follow up to commit a4e12cbfc69cfe668fa30756a3c5843e911e22b1
(tdf#155863 sd: fix resizing of cropped images to original size)

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

diff --git a/sc/qa/uitest/calc_tests8/tdf54768.py 
b/sc/qa/uitest/calc_tests8/tdf54768.py
new file mode 100644
index ..a4342fb8e238
--- /dev/null
+++ b/sc/qa/uitest/calc_tests8/tdf54768.py
@@ -0,0 +1,32 @@
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+from uitest.framework import UITestCase
+from libreoffice.uno.propertyvalue import mkPropertyValues
+from uitest.uihelper.common import get_url_for_data_file
+
+class tdf54768(UITestCase):
+def test_tdf54768(self):
+# This document contains an image with an original size of 7.99cm x 
5.74cm.
+# The image has been cropped 2.73cm at the top.
+# Also, it has been resized to a width of 4.04cm.
+with self.ui_test.load_file(get_url_for_data_file("tdf54768.ods")) as 
document:
+xGridWin = self.xUITest.getTopFocusWindow().getChild("grid_window")
+
+# select the image
+xGridWin.executeAction("SELECT", 
mkPropertyValues({"OBJECT":"Image"}))
+
+# click "Original Size"
+self.xUITest.executeCommand(".uno:OriginalSize")
+
+# tdf#155863: Without the fix in place, the image stays cropped,
+# but stretches to the size of original image
+self.assertEqual(7988, 
document.DrawPages[0].getByIndex(0).Size.Width)
+self.assertEqual(3005, 
document.DrawPages[0].getByIndex(0).Size.Height)
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/qa/uitest/data/tdf54768.ods b/sc/qa/uitest/data/tdf54768.ods
new file mode 100644
index ..222481db8bb0
Binary files /dev/null and b/sc/qa/uitest/data/tdf54768.ods differ
diff --git a/sc/source/ui/view/drawvie4.cxx b/sc/source/ui/view/drawvie4.cxx
index 5cc1655b83c4..2bd329098206 100644
--- a/sc/source/ui/view/drawvie4.cxx
+++ b/sc/source/ui/view/drawvie4.cxx
@@ -476,9 +476,9 @@ void ScDrawView::SetMarkedOriginalSize()
 }
 else if (nIdent == SdrObjKind::Graphic)
 {
-const Graphic& rGraphic = 
static_cast(pObj)->GetGraphic();
+const SdrGrafObj* pSdrGrafObj = static_cast(pObj);
 
-MapMode aSourceMap = rGraphic.GetPrefMapMode();
+MapMode aSourceMap = pSdrGrafObj->GetGraphic().GetPrefMapMode();
 MapMode aDestMap( MapUnit::Map100thMM );
 if (aSourceMap.GetMapUnit() == MapUnit::MapPixel)
 {
@@ -488,16 +488,8 @@ void ScDrawView::SetMarkedOriginalSize()
 aDestMap.SetScaleX(aNormScaleX);
 aDestMap.SetScaleY(aNormScaleY);
 }
-if (pViewData)
-{
-vcl::Window* pActWin = pViewData->GetActiveWin();
-if (pActWin)
-{
-aOriginalSize = pActWin->LogicToLogic(
-rGraphic.GetPrefSize(), &aSourceMap, 
&aDestMap );
-bDo = true;
-}
-}
+aOriginalSize = pSdrGrafObj->getOriginalSize();
+bDo = true;
 }
 
 if ( bDo )


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-23.05' - include/oox oox/source sd/qa sd/source

2023-06-27 Thread Tibor Nagy (via logerrit)
 include/oox/export/drawingml.hxx |   27 -
 oox/source/export/drawingml.cxx  |   55 
 oox/source/export/shapes.cxx |6 +--
 sd/qa/unit/data/odp/tdf153107.odp|binary
 sd/qa/unit/export-tests-ooxml2.cxx   |   60 +++
 sd/source/filter/eppt/pptx-epptooxml.cxx |4 +-
 6 files changed, 112 insertions(+), 40 deletions(-)

New commits:
commit df482562d2532956c197468740e2a02499a89f55
Author: Tibor Nagy 
AuthorDate: Mon Jan 23 09:33:13 2023 +0100
Commit: Caolán McNamara 
CommitDate: Tue Jun 27 14:16:25 2023 +0200

tdf#153107 OOXML export: fix scale of tile of shape background

Relative scale values were exported as absolute values,
resulting broken shape background.

Change-Id: Ia38e125862e7f8ceff5d41754340723c3a9eb028
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145996
Tested-by: László Németh 
Reviewed-by: László Németh 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153576
Reviewed-by: Jaume Pujantell 
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Caolán McNamara 

diff --git a/include/oox/export/drawingml.hxx b/include/oox/export/drawingml.hxx
index cdfb31af9c7c..89fb0cab1128 100644
--- a/include/oox/export/drawingml.hxx
+++ b/include/oox/export/drawingml.hxx
@@ -380,16 +380,18 @@ public:
 
 void WriteGrabBagGradientFill( const css::uno::Sequence< 
css::beans::PropertyValue >& aGradientStops, const basegfx::BGradient& 
rGradient);
 
-void WriteBlipOrNormalFill( const css::uno::Reference< 
css::beans::XPropertySet >& rXPropSet,
-const OUString& rURLPropName );
-void WriteBlipFill( const css::uno::Reference< css::beans::XPropertySet >& 
rXPropSet,
-const OUString& sURLPropName );
-void WriteBlipFill( const css::uno::Reference< css::beans::XPropertySet >& 
rXPropSet,
- const OUString& sURLPropName, sal_Int32 nXmlNamespace 
);
+void WriteBlipOrNormalFill(const 
css::uno::Reference& rXPropSet,
+   const OUString& rURLPropName, const 
css::awt::Size& rSize = {});
+void WriteBlipFill(const css::uno::Reference& 
rXPropSet,
+   const OUString& sURLPropName, const css::awt::Size& 
rSize = {});
+void WriteBlipFill(const css::uno::Reference& 
rXPropSet,
+   const css::awt::Size& rSize, const OUString& 
sURLPropName,
+   sal_Int32 nXmlNamespace);
 
 void WriteXGraphicBlipFill(css::uno::Reference 
const & rXPropSet,
css::uno::Reference 
const & rxGraphic,
-   sal_Int32 nXmlNamespace, bool bWriteMode, bool 
bRelPathToMedia = false);
+   sal_Int32 nXmlNamespace, bool bWriteMode,
+   bool bRelPathToMedia = false, css::awt::Size 
const& rSize = {});
 
 void WritePattFill( const css::uno::Reference< css::beans::XPropertySet >& 
rXPropSet );
 void WritePattFill(const css::uno::Reference& 
rXPropSet,
@@ -408,7 +410,8 @@ public:
   css::uno::Reference 
const & rxGraphic);
 
 void WriteXGraphicTile(css::uno::Reference 
const& rXPropSet,
-   css::uno::Reference const& 
rxGraphic);
+   css::uno::Reference const& 
rxGraphic,
+   css::awt::Size const& rSize);
 
 void WriteLinespacing(const css::style::LineSpacing& rLineSpacing, float 
fFirstCharHeight);
 
@@ -418,8 +421,9 @@ public:
 
 void 
WriteImageBrightnessContrastTransparence(css::uno::Reference
 const & rXPropSet);
 
-void WriteXGraphicBlipMode(css::uno::Reference 
const & rXPropSet,
-   css::uno::Reference 
const & rxGraphic);
+void WriteXGraphicBlipMode(css::uno::Reference 
const& rXPropSet,
+   css::uno::Reference 
const& rxGraphic,
+   css::awt::Size const& rSize);
 
 void WriteShapeTransformation(const css::uno::Reference< 
css::drawing::XShape >& rXShape,
   sal_Int32 nXmlNamespace, bool bFlipH = false, bool bFlipV = 
false, bool bSuppressRotation = false, bool bSuppressFlipping = false, bool 
bFlippedBeforeRotation = false);
@@ -459,7 +463,8 @@ public:
 void WriteEmptyCustomGeometry();
 void WritePolyPolygon(const css::uno::Reference& 
rXShape,
   const bool bClosed);
-void WriteFill( const css::uno::Reference< css::beans::XPropertySet >& 
xPropSet );
+void WriteFill(const css::uno::Reference& 
xPropSet,
+   const css::awt::Size& rSize = {});
 void WriteShapeStyle( const css::uno::Reference< css::beans::XPropertySet 
>& rXPropSet );
 void WriteShapeEffects( const css::uno::Reference< 
css::beans::XPropertySet >& rXPropSet );
 void WriteShapeEffect( std::u16string_view sName, const 
css::uno::Sequence< css::beans::P

[Libreoffice-commits] core.git: sc/qa sc/source

2023-06-27 Thread Tibor Nagy (via logerrit)
 sc/qa/unit/data/xlsx/tdf156028.xlsx|binary
 sc/qa/unit/subsequent_filters_test.cxx |   11 +++
 sc/source/core/data/colorscale.cxx |2 +-
 3 files changed, 12 insertions(+), 1 deletion(-)

New commits:
commit 3e0537a6e746db6ea746af6b91f94aeb9d2b05d9
Author: Tibor Nagy 
AuthorDate: Mon Jun 26 11:35:38 2023 +0200
Commit: László Németh 
CommitDate: Tue Jun 27 14:09:27 2023 +0200

tdf#156028 sc: use color of the highest value if only one value

(in a single cell or the same value repeating in all cells of the
data set) on percentile color scale, like other spreadsheets do.

This is a follow up to commit 6a059f8d1b0a7a5b64bd272e1e7b8291979bcd56
(tdf#155321 sc: fix color of the highest value on percentile color scale
if the highest value occurs multiple times in the data set.)

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

diff --git a/sc/qa/unit/data/xlsx/tdf156028.xlsx 
b/sc/qa/unit/data/xlsx/tdf156028.xlsx
new file mode 100644
index ..6fc2fc814fe3
Binary files /dev/null and b/sc/qa/unit/data/xlsx/tdf156028.xlsx differ
diff --git a/sc/qa/unit/subsequent_filters_test.cxx 
b/sc/qa/unit/subsequent_filters_test.cxx
index f633073c85f9..d02ebc075e3e 100644
--- a/sc/qa/unit/subsequent_filters_test.cxx
+++ b/sc/qa/unit/subsequent_filters_test.cxx
@@ -134,6 +134,17 @@ CPPUNIT_TEST_FIXTURE(ScFiltersTest, 
testTdf155321_CondFormatColor_XLSX)
 CPPUNIT_ASSERT_EQUAL(Color(99, 190, 123), aColor);
 }
 
+CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf156028_ColorScale_XLSX)
+{
+createScDoc("xlsx/tdf156028.xlsx");
+
+ScDocument* pDoc = getScDoc();
+ScConditionalFormat* pCondFormat = pDoc->GetCondFormat(0, 0, 0);
+ScRefCellValue aCellA1(*pDoc, ScAddress(0, 0, 0));
+Color aColor = pCondFormat->GetData(aCellA1, ScAddress(0, 0, 
0)).mxColorScale.value();
+CPPUNIT_ASSERT_EQUAL(Color(99, 190, 123), aColor);
+}
+
 CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf138601_CondFormatXLSX)
 {
 createScDoc("xlsx/tdf138601.xlsx");
diff --git a/sc/source/core/data/colorscale.cxx 
b/sc/source/core/data/colorscale.cxx
index 4e61dbdbc228..20ea2b5186f6 100644
--- a/sc/source/core/data/colorscale.cxx
+++ b/sc/source/core/data/colorscale.cxx
@@ -647,7 +647,7 @@ std::optional ScColorScaleFormat::GetColor( const 
ScAddress& rAddr ) cons
 calcMinMax(nMin, nMax);
 
 // this check is for safety
-if(nMin >= nMax)
+if(nMin > nMax)
 return std::optional();
 
 ScColorScaleEntries::const_iterator itr = begin();


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - basegfx/source basegfx/test include/basegfx svgio/inc svgio/qa svgio/source

2023-06-27 Thread Xisco Fauli (via logerrit)
 basegfx/source/color/bcolormodifier.cxx  |   19 ---
 basegfx/test/BColorModifierTest.cxx  |   27 
 include/basegfx/color/bcolormodifier.hxx |   20 
 svgio/inc/svgfecolormatrixnode.hxx   |2 -
 svgio/inc/svgfegaussianblurnode.hxx  |2 -
 svgio/inc/svgfilternode.hxx  |6 ---
 svgio/qa/cppunit/SvgImportTest.cxx   |3 -
 svgio/qa/cppunit/data/filterFeGaussianBlur.svg   |2 -
 svgio/source/svgreader/svgfecolormatrixnode.cxx  |   21 -
 svgio/source/svgreader/svgfegaussianblurnode.cxx |   37 ++-
 10 files changed, 6 insertions(+), 133 deletions(-)

New commits:
commit 5e713ba80fcc7a4157cb7a7e7c3c3476c91f59d4
Author: Xisco Fauli 
AuthorDate: Mon Jun 26 22:16:12 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 13:39:38 2023 +0200

Revert "tdf#132246, tdf#155735: Add support for SourceAlpha"

This reverts commit 75399b8aad6c0f0998b9d0a6eddb2e29f8bc114c.

it was incomplete.
While at it, do not parse 'in' attribute for now, so only
in="SourceGraphic" is used.
Implementing the 'in' attribute is not trivial

Change-Id: I66c721c1144638f5e3759e0aa3a1c2c062499a90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153627
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
Signed-off-by: Xisco Fauli 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153632

diff --git a/basegfx/source/color/bcolormodifier.cxx 
b/basegfx/source/color/bcolormodifier.cxx
index 52f34a69f205..829b0abda659 100644
--- a/basegfx/source/color/bcolormodifier.cxx
+++ b/basegfx/source/color/bcolormodifier.cxx
@@ -69,25 +69,6 @@ namespace basegfx
 return "invert";
 }
 
-BColorModifier_alpha::~BColorModifier_alpha()
-{
-}
-
-bool BColorModifier_alpha::operator==(const BColorModifier& rCompare) const
-{
-return dynamic_cast< const BColorModifier_alpha* >(&rCompare) != 
nullptr;
-}
-
-::basegfx::BColor BColorModifier_alpha::getModifiedColor(const 
::basegfx::BColor& /*aSourceColor*/) const
-{
-return ::basegfx::BColor(0.0, 0.0, 0.0);
-}
-
-OUString BColorModifier_alpha::getModifierName() const
-{
-return "alpha";
-}
-
 BColorModifier_luminance_to_alpha::~BColorModifier_luminance_to_alpha()
 {
 }
diff --git a/basegfx/test/BColorModifierTest.cxx 
b/basegfx/test/BColorModifierTest.cxx
index ca811f67bd8a..17b6a0c22257 100755
--- a/basegfx/test/BColorModifierTest.cxx
+++ b/basegfx/test/BColorModifierTest.cxx
@@ -352,32 +352,6 @@ public:
 CPPUNIT_ASSERT(aBColorModifier->operator==(*aBColorModifier2));
 }
 
-void testAlpha()
-{
-const basegfx::BColorModifierSharedPtr aBColorModifier
-= std::make_shared();
-
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maWhite));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maGray));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maBlack));
-
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maRed));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maGreen));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maBlue));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maYellow));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maMagenta));
-CPPUNIT_ASSERT_EQUAL(maBlack, 
aBColorModifier->getModifiedColor(maCyan));
-
-CPPUNIT_ASSERT(aBColorModifier->operator==(*aBColorModifier));
-const basegfx::BColorModifierSharedPtr aBColorModifierInvert
-= std::make_shared();
-CPPUNIT_ASSERT(*aBColorModifier != *aBColorModifierInvert);
-
-const basegfx::BColorModifierSharedPtr aBColorModifier2
-= std::make_shared();
-CPPUNIT_ASSERT(aBColorModifier->operator==(*aBColorModifier2));
-}
-
 CPPUNIT_TEST_SUITE(bcolormodifier);
 CPPUNIT_TEST(testGray);
 CPPUNIT_TEST(testInvert);
@@ -388,7 +362,6 @@ public:
 CPPUNIT_TEST(testHueRotate);
 CPPUNIT_TEST(testMatrix);
 CPPUNIT_TEST(testIdentityMatrix);
-CPPUNIT_TEST(testAlpha);
 CPPUNIT_TEST_SUITE_END();
 };
 
diff --git a/include/basegfx/color/bcolormodifier.hxx 
b/include/basegfx/color/bcolormodifier.hxx
index a553ad18311f..ceffae841847 100644
--- a/include/basegfx/color/bcolormodifier.hxx
+++ b/include/basegfx/color/bcolormodifier.hxx
@@ -127,26 +127,6 @@ namespace basegfx
 SAL_DLLPRIVATE virtual OUString getModifierName() const override;
 };
 
-/**
- * convert to alpha
-*/
-class SAL_WARN_UNUSED BASEGFX_DLLPUBLIC BColorModifier_alpha final : 
public BColorModifier
-{
-public:
-BColorModifier_alpha()
-{
-}
-
-virtual ~BColorModifier_alpha() override;
-
-   

[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - download.lst external/pdfium

2023-06-27 Thread Miklos Vajna (via logerrit)
 download.lst  |4 
 external/pdfium/Library_pdfium.mk |1 
 external/pdfium/UnpackedTarball_pdfium.mk |8 -
 external/pdfium/abseil-trivial.patch  |   31 -
 external/pdfium/build.patch.1 |  170 +++---
 external/pdfium/include.patch |   11 -
 6 files changed, 89 insertions(+), 136 deletions(-)

New commits:
commit 8ad80d1f07cd2f8c483ef2f8678eee0b147e5b43
Author: Miklos Vajna 
AuthorDate: Wed May 24 20:13:48 2023 +0200
Commit: Michael Stahl 
CommitDate: Tue Jun 27 13:34:39 2023 +0200

Update pdfium to 5778

- external/pdfium/abseil-trivial.patch is no longer needed, upstream
  does what we did previously

- external/pdfium/build.patch.1: re-generate with 'patch -p1' + 'git
  diff'

- external/pdfium/include.patch is no longer needed, upstream does what
  we did previously

Change-Id: I39a6f721e436aa53914bbf43b78ac7d86e5eac59
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152244
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 
(cherry picked from commit dc69e7c52f12f57197f26b56c968139186d4ed5b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153653
Reviewed-by: Michael Stahl 

diff --git a/download.lst b/download.lst
index e53f974e1fe8..24b3ae91da00 100644
--- a/download.lst
+++ b/download.lst
@@ -434,8 +434,8 @@ PAGEMAKER_TARBALL := libpagemaker-0.0.4.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-PDFIUM_SHA256SUM := 
1a625b25562fb4c25c8bf4660c704111cdd306b8934b94dcd9b89329909ede55
-PDFIUM_TARBALL := pdfium-5636.tar.bz2
+PDFIUM_SHA256SUM := 
b1052ff24e9ffb11af017c444bb0f6ad508d64c9a0fb88cacb0e8210245dde06
+PDFIUM_TARBALL := pdfium-5778.tar.bz2
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
diff --git a/external/pdfium/Library_pdfium.mk 
b/external/pdfium/Library_pdfium.mk
index f137f851a0b2..bdab04c6861d 100644
--- a/external/pdfium/Library_pdfium.mk
+++ b/external/pdfium/Library_pdfium.mk
@@ -293,6 +293,7 @@ $(eval $(call 
gb_Library_add_generated_exception_objects,pdfium,\
 UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transferfunc \
 UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_basedcs \
 UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_indexedcs \
+UnpackedTarball/pdfium/core/fpdfapi/parser/object_tree_traversal_util \
 ))
 
 # fpdfdoc
diff --git a/external/pdfium/UnpackedTarball_pdfium.mk 
b/external/pdfium/UnpackedTarball_pdfium.mk
index 46c7a45ee798..79e93d24d439 100644
--- a/external/pdfium/UnpackedTarball_pdfium.mk
+++ b/external/pdfium/UnpackedTarball_pdfium.mk
@@ -14,14 +14,6 @@ pdfium_patches += build.patch.1
 # Avoids Windows 8 build dependency.
 pdfium_patches += windows7.patch.1
 pdfium_patches += c++20-comparison.patch
-# Use CoreGraphics.h instead of Carbon.h -- 
https://pdfium-review.googlesource.com/c/pdfium/+/99753
-# pdfium_patches += cg-instead-of-carbon.patch.1
-# Android NDK 19 - that is known to work well - does not have 2 defines -- 
https://pdfium-review.googlesource.com/c/pdfium/+/96530
-# pdfium_patches += AndroidNDK19.patch.1
-
-pdfium_patches += include.patch
-
-pdfium_patches += abseil-trivial.patch
 
 pdfium_patches += constexpr-template.patch
 
diff --git a/external/pdfium/abseil-trivial.patch 
b/external/pdfium/abseil-trivial.patch
deleted file mode 100644
index fa91fa6bbba9..
--- a/external/pdfium/abseil-trivial.patch
+++ /dev/null
@@ -1,31 +0,0 @@
 third_party/abseil-cpp/absl/meta/type_traits.h
-+++ third_party/abseil-cpp/absl/meta/type_traits.h
-@@ -501,27 +501,7 @@ struct is_trivially_move_assignable
- // operation that is not trivial. `is_trivially_copy_assignable` is simply
- // `is_trivially_assignable`.
- template 
--struct is_trivially_copy_assignable
--#ifdef ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE
--: std::is_trivially_copy_assignable {
--#else
--: std::integral_constant<
--  bool, __has_trivial_assign(typename std::remove_reference::type) 
&&
--absl::is_copy_assignable::value> {
--#endif
--#ifdef ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE
-- private:
--  static constexpr bool compliant =
--  std::is_trivially_copy_assignable::value ==
--  is_trivially_copy_assignable::value;
--  static_assert(compliant || std::is_trivially_copy_assignable::value,
--"Not compliant with std::is_trivially_copy_assignable; "
--"Standard: false, Implementation: true");
--  static_assert(compliant || !std::is_trivially_copy_assignable::value,
--"Not compliant with std::is_trivially_copy_assignable; "
--"Standard: true, Implementation: false");
--#endif  // ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE
--};
-+using is_trivially_copy_assignable = std::is_trivially_copy_assignable;
- 
- #if defined(__cpp_lib_remove_cvref) && __cpp_lib_remove_cvref >= 201711L
- template 
diff --git a/external/pdfium/build.pat

[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - 2 commits - download.lst external/pdfium

2023-06-27 Thread Miklos Vajna (via logerrit)
 download.lst   |4 ++--
 external/pdfium/inc/pch/precompiled_pdfium.hxx |2 ++
 2 files changed, 4 insertions(+), 2 deletions(-)

New commits:
commit 736906af5d16713dcc3aab96b9295e2fa2d09136
Author: Miklos Vajna 
AuthorDate: Fri Mar 10 17:21:42 2023 +0100
Commit: Michael Stahl 
CommitDate: Tue Jun 27 13:34:32 2023 +0200

Update pdfium to 5636

Some changes in the bundled libtiff, but it seems that would be for XFA
which we disable, so it doesn't affect us.

Change-Id: Ibadeecf20daec342fbfef6d1e89bd17f5f0095e9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148652
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 
(cherry picked from commit 47afcad0d599009c38b4597c27558ec2af58b7f8)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153651
Reviewed-by: Michael Stahl 

diff --git a/download.lst b/download.lst
index cd3c6ad8906d..e53f974e1fe8 100644
--- a/download.lst
+++ b/download.lst
@@ -434,8 +434,8 @@ PAGEMAKER_TARBALL := libpagemaker-0.0.4.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-PDFIUM_SHA256SUM := 
9fae5f8b3b90a4f7ca663f741e232e1e4c3f098fb7a18b0ad52e74ae172cf16c
-PDFIUM_TARBALL := pdfium-5522.tar.bz2
+PDFIUM_SHA256SUM := 
1a625b25562fb4c25c8bf4660c704111cdd306b8934b94dcd9b89329909ede55
+PDFIUM_TARBALL := pdfium-5636.tar.bz2
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
diff --git a/external/pdfium/inc/pch/precompiled_pdfium.hxx 
b/external/pdfium/inc/pch/precompiled_pdfium.hxx
index 315b5d81ec12..6258e8036360 100644
--- a/external/pdfium/inc/pch/precompiled_pdfium.hxx
+++ b/external/pdfium/inc/pch/precompiled_pdfium.hxx
@@ -310,6 +310,8 @@
 #include 
 #include 
 #include 
+#include 
+#include 
 #include 
 #include 
 #include 
commit 20b7d8463cb5e132a3aed49ae75a855c404a22b8
Author: Miklos Vajna 
AuthorDate: Thu Jan 12 20:12:37 2023 +0100
Commit: Michael Stahl 
CommitDate: Tue Jun 27 13:34:22 2023 +0200

Update pdfium to 5522

The internal libpng 1.6 is now dropped, but that doesn't really affect
us.

Change-Id: I777c024c76c17689c20bbe6453467ba5fb22baba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145417
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 
(cherry picked from commit 04fd7d0f53faa08c608034707ca4a459a162712d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153650
Reviewed-by: Michael Stahl 

diff --git a/download.lst b/download.lst
index d6338294c43f..cd3c6ad8906d 100644
--- a/download.lst
+++ b/download.lst
@@ -434,8 +434,8 @@ PAGEMAKER_TARBALL := libpagemaker-0.0.4.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-PDFIUM_SHA256SUM := 
7db59b1e91f2bc0ab4c5e19d1a4f881e6a47dbb0d3b7e980a7358225b12a0f35
-PDFIUM_TARBALL := pdfium-5408.tar.bz2
+PDFIUM_SHA256SUM := 
9fae5f8b3b90a4f7ca663f741e232e1e4c3f098fb7a18b0ad52e74ae172cf16c
+PDFIUM_TARBALL := pdfium-5522.tar.bz2
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts


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

2023-06-27 Thread Andrea Gelmini (via logerrit)
 include/vcl/cairo.hxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 6870e22ada9363d86ba8aa0908d49018d76037bb
Author: Andrea Gelmini 
AuthorDate: Tue Jun 27 12:38:22 2023 +0200
Commit: Julien Nabet 
CommitDate: Tue Jun 27 13:33:12 2023 +0200

Fix typo

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

diff --git a/include/vcl/cairo.hxx b/include/vcl/cairo.hxx
index 8a6042517534..9596b24ccb24 100644
--- a/include/vcl/cairo.hxx
+++ b/include/vcl/cairo.hxx
@@ -32,7 +32,7 @@
 
 /*
  For internal cairo we have the option --enable-cairo-rgba which is potentially
- useful for Andoid or Online to switch the rgb components. For Android cairo 
then
+ useful for Android or Online to switch the rgb components. For Android cairo 
then
  matches the OpenGL GL_RGBA format so we can use it there where we don't have
  GL_BGRA support. Similarly for Online we can then use cairo's pixel data
  without needing to swizzle it for use as a canvas ImageData.


[Libreoffice-commits] core.git: avmedia/source chart2/qa compilerplugins/clang cui/source dbaccess/source desktop/source drawinglayer/source fpicker/source jvmfwk/source l10ntools/source oox/qa oox/so

2023-06-27 Thread Noel Grandin (via logerrit)
 avmedia/source/framework/mediaitem.cxx |2 
 chart2/qa/extras/chart2geometry.cxx|   24 +-
 compilerplugins/clang/stringstatic.cxx |  118 +
 compilerplugins/clang/test/stringstatic.cxx|8 
 cui/source/dialogs/scriptdlg.cxx   |2 
 dbaccess/source/ui/dlg/dbadmin.cxx |4 
 dbaccess/source/ui/dlg/dbfindex.cxx|4 
 dbaccess/source/ui/misc/WCopyTable.cxx |2 
 desktop/source/lib/init.cxx|4 
 drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx |   10 -
 fpicker/source/office/fileview.cxx |2 
 jvmfwk/source/elements.cxx |2 
 l10ntools/source/merge.cxx |2 
 l10ntools/source/propmerge.cxx |4 
 oox/qa/unit/export.cxx |2 
 oox/qa/unit/mcgr.cxx   |8 
 oox/source/export/drawingml.cxx|2 
 oox/source/export/vmlexport.cxx|2 
 sc/qa/unit/ucalc.cxx   |2 
 sc/qa/unit/ucalc_formula2.cxx  |2 
 sc/source/filter/excel/xestream.cxx|2 
 sc/source/filter/lotus/lotform.cxx |4 
 sc/source/filter/xml/xmlexprt.cxx  |2 
 sc/source/filter/xml/xmlimprt.cxx  |3 
 sd/qa/unit/export-tests-ooxml1.cxx |   18 +
 sd/qa/unit/export-tests-ooxml2.cxx |8 
 sd/qa/unit/export-tests-ooxml3.cxx |   12 -
 sd/qa/unit/misc-tests.cxx  |   56 +++---
 sfx2/source/appl/sfxhelp.cxx   |2 
 sfx2/source/doc/guisaveas.cxx  |2 
 svl/qa/unit/items/test_IndexedStyleSheets.cxx  |2 
 svtools/source/misc/langhelp.cxx   |5 
 svx/source/svdraw/svdtrans.cxx |6 
 sw/qa/extras/tiledrendering/tiledrendering.cxx |8 
 sw/qa/extras/uiwriter/uiwriter6.cxx|3 
 sw/source/core/crsr/findtxt.cxx|2 
 test/source/screenshot_test.cxx|2 
 ucb/source/core/ucbstore.cxx   |8 
 unotools/source/config/fontcfg.cxx |   10 -
 vcl/qa/cppunit/text.cxx|2 
 vcl/source/filter/FilterConfigCache.cxx|   14 -
 vcl/source/filter/ipdf/pdfdocument.cxx |4 
 writerfilter/source/ooxml/OOXMLDocumentImpl.cxx|   12 -
 writerperfect/source/impress/KeynoteImportFilter.cxx   |4 
 writerperfect/source/writer/EPUBPackage.cxx|2 
 xmloff/source/core/xmlexp.cxx  |2 
 xmloff/source/draw/sdxmlimp.cxx|2 
 xmloff/source/draw/shapeexport.cxx |7 
 xmloff/source/text/XMLIndexTOCContext.cxx  |4 
 xmloff/source/text/txtstyli.cxx|8 
 50 files changed, 245 insertions(+), 177 deletions(-)

New commits:
commit e266d448f45348f27f8291ea5d0542747d7c8168
Author: Noel Grandin 
AuthorDate: Mon Jun 26 16:16:19 2023 +0200
Commit: Noel Grandin 
CommitDate: Tue Jun 27 13:10:44 2023 +0200

loplugin:stringstatic look for more strings

that can be initialised at compile-time instead of runtime

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

diff --git a/avmedia/source/framework/mediaitem.cxx 
b/avmedia/source/framework/mediaitem.cxx
index f177c8bea687..4699a0454359 100644
--- a/avmedia/source/framework/mediaitem.cxx
+++ b/avmedia/source/framework/mediaitem.cxx
@@ -469,7 +469,7 @@ bool EmbedMedia(uno::Reference const& xModel,
 uno::Reference const xStorage(
 xSBD->getDocumentStorage(), uno::UNO_SET_THROW);
 
-OUString const media("Media");
+static constexpr OUStringLiteral media(u"Media");
 uno::Reference const xSubStorage(
 xStorage->openStorageElement(media, embed::ElementModes::WRITE));
 
diff --git a/chart2/qa/extras/chart2geometry.cxx 
b/chart2/qa/extras/chart2geometry.cxx
index f560d46ba054..fdd4e6daa11d 100644
--- a/chart2/qa/extras/chart2geometry.cxx
+++ b/chart2/qa/extras/chart2geometry.cxx
@@ -80,9 +80,10 @@ void Chart2GeometryTest::testTdf135184RoundLineCap()
 xmlDocUniquePtr pXmlDoc = parseExport("Object 1/content.xml");
 CPPUNIT_ASSERT(pXmlDoc);
 
-const OSt

[Libreoffice-commits] core.git: configure.ac download.lst external/icu

2023-06-27 Thread Taichi Haradaguchi (via logerrit)
 configure.ac|4 +--
 download.lst|8 +++
 external/icu/README |2 -
 external/icu/UnpackedTarball_icu.mk |1 
 external/icu/icu4c-khmerbreakengine.patch.1 |   23 ++--
 external/icu/ubsan.patch.1  |   31 
 6 files changed, 19 insertions(+), 50 deletions(-)

New commits:
commit 05c6cdb144d1732ca51d463845fa6ddef7c08265
Author: Taichi Haradaguchi <20001...@ymail.ne.jp>
AuthorDate: Mon Jun 26 01:57:09 2023 +0900
Commit: Eike Rathke 
CommitDate: Tue Jun 27 13:08:34 2023 +0200

Update ICU to 73.2

Remove external/icu/ubsan.patch.1 that was applied upstream.

See https://icu.unicode.org/download/73

Change-Id: Ic2bc450b093f1c0ddb09ebe915a9c3e70d7e0964
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153574
Tested-by: Jenkins
Reviewed-by: Eike Rathke 

diff --git a/configure.ac b/configure.ac
index ece7c7d40db8..eca7a5ad5cad 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10769,8 +10769,8 @@ fi
 dnl ===
 dnl Check for system icu
 dnl ===
-ICU_MAJOR=72
-ICU_MINOR=1
+ICU_MAJOR=73
+ICU_MINOR=2
 ICU_CFLAGS_internal="-I${WORKDIR}/UnpackedTarball/icu/source/i18n 
-I${WORKDIR}/UnpackedTarball/icu/source/common"
 ICU_LIBS_internal="-L${WORKDIR}/UnpackedTarball/icu/source/lib"
 libo_CHECK_SYSTEM_MODULE([icu],[ICU],[icu-i18n >= 66])
diff --git a/download.lst b/download.lst
index fce7592c6370..d38c37f48cf3 100644
--- a/download.lst
+++ b/download.lst
@@ -242,10 +242,10 @@ HYPHEN_TARBALL := 
5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-ICU_SHA256SUM := 
a2d2d38217092a7ed56635e34467f92f976b370e20182ad325edea6681a71d68
-ICU_TARBALL := icu4c-72_1-src.tgz
-ICU_DATA_SHA256SUM := 
ee19f876507d6c23d9e0a2b631096f6b0eaa6fa61728c33a89efdb55e3385dea
-ICU_DATA_TARBALL := icu4c-72_1-data.zip
+ICU_SHA256SUM := 
818a80712ed3caacd9b652305e01afc7fa167e6f2e94996da44b90c2ab604ce1
+ICU_TARBALL := icu4c-73_2-src.tgz
+ICU_DATA_SHA256SUM := 
ca1ee076163b438461e484421a7679fc33a64cd0a54f9d4b401893fa1eb42701
+ICU_DATA_TARBALL := icu4c-73_2-data.zip
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
diff --git a/external/icu/README b/external/icu/README
index 484de1f41536..23cf5f0524ae 100644
--- a/external/icu/README
+++ b/external/icu/README
@@ -1 +1 @@
-Library providing Unicode support, from [http://site.icu-project.org/].
+Library providing Unicode support, from [https://icu.unicode.org/].
diff --git a/external/icu/UnpackedTarball_icu.mk 
b/external/icu/UnpackedTarball_icu.mk
index b5b072b1e1e6..655614447d53 100644
--- a/external/icu/UnpackedTarball_icu.mk
+++ b/external/icu/UnpackedTarball_icu.mk
@@ -33,7 +33,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,icu,\
external/icu/icu4c-clang-cl.patch.1 \
external/icu/gcc9.patch \
external/icu/c++20-comparison.patch.1 \
-   external/icu/ubsan.patch.1 \
external/icu/Wdeprecated-copy-dtor.patch \
external/icu/icu4c-windows-cygwin-cross.patch.1 \
external/icu/icu4c-emscripten-cross.patch.1 \
diff --git a/external/icu/icu4c-khmerbreakengine.patch.1 
b/external/icu/icu4c-khmerbreakengine.patch.1
index ea8f20f443ff..605914014e96 100644
--- a/external/icu/icu4c-khmerbreakengine.patch.1
+++ b/external/icu/icu4c-khmerbreakengine.patch.1
@@ -1,6 +1,6 @@
 diff -ur icu.org/source/common/dictbe.cpp icu/source/common/dictbe.cpp
 icu.org/source/common/dictbe.cpp   2022-04-08 00:41:55.0 +0200
-+++ icu/source/common/dictbe.cpp   2022-05-16 13:56:43.426870900 +0200
+--- icu.org/source/common/dictbe.cpp   2023-06-14 06:23:55.0 +0900
 icu/source/common/dictbe.cpp   2023-06-26 17:43:53.034173100 +0900
 @@ -35,7 +35,19 @@
   **
   */
@@ -211,8 +211,8 @@ diff -ur icu.org/source/common/dictbe.cpp 
icu/source/common/dictbe.cpp
  int32_t start = (int32_t)utext_getNativeIndex(text);
  if (start != offset) {
  offset = start;
--count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, NULL, &prefix);
-+count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, NULL, &prefix, ignoreSet, minLength);
+-count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, nullptr, &prefix);
++count = dict->matches(text, rangeEnd-start, UPRV_LENGTHOF(cuLengths), 
cuLengths, cpLengths, nullptr, &prefix, ignoreSet, minLength);
  // Dictionary leaves text after longest prefix, not longest word. 
Back up.
  if (count <= 0) {
  utext_setNativeIndex(text, start);
@@ 

[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - download.lst

2023-06-27 Thread Caolán McNamara (via logerrit)
 download.lst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 7ee59aea0d7c25e0a05722880e42da7551fca057
Author: Caolán McNamara 
AuthorDate: Sun Jun 25 20:04:39 2023 +0100
Commit: Michael Stahl 
CommitDate: Tue Jun 27 12:46:51 2023 +0200

upgrade libtiff to 4.5.1

Change-Id: Ia07f368a371930f655bdc3495e76295dad740d30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153570
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
(cherry picked from commit 3b302b98795310befdae4a4f925ab9921682b79c)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153608
Reviewed-by: Michael Stahl 

diff --git a/download.lst b/download.lst
index f41e0a8727b9..d6338294c43f 100644
--- a/download.lst
+++ b/download.lst
@@ -449,8 +449,8 @@ LIBPNG_TARBALL := libpng-1.6.39.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-LIBTIFF_SHA256SUM := 
dafac979c5e7b6c650025569c5a4e720995ba5f17bc17e6276d1f12427be267c
-LIBTIFF_TARBALL := tiff-4.5.0rc3.tar.xz
+LIBTIFF_SHA256SUM := 
3c080867114c26edab3129644a63b708028a90514b7fe3126e38e11d24f9f88a
+LIBTIFF_TARBALL := tiff-4.5.1.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts


[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - sc/qa sc/source

2023-06-27 Thread Czeber László Ádám (via logerrit)
 sc/qa/unit/ucalc_copypaste.cxx |   45 +
 sc/source/core/data/table1.cxx |9 ++--
 2 files changed, 52 insertions(+), 2 deletions(-)

New commits:
commit 0692344caa7b79b7bef980326ede85ce5867631c
Author: Czeber László Ádám 
AuthorDate: Wed May 24 09:05:16 2023 +0200
Commit: László Németh 
CommitDate: Tue Jun 27 12:34:59 2023 +0200

tdf#153437 sc: fix broken formatting at Undo of row/column insertion

Performance fix for the 16k rows resulted broken
formatting during Undo of row insertion, e.g. rows
with background color fell apart, highlighting partially
also the row under the deleted row removed by Undo, or
Undo of inserted/copied columns removed the background
coloring at the place of the removed columns.

Formatting was always deleted after the last column
containing data, because the row was only allocated until
then. When deleting row(s) or column(s), allocate the last
column before updating the references.

Regression from commit 2e86718626a07e1656661df3ad69a64848bf4614
"don't allocate unnecessary columns when inserting a row".

Change-Id: I8d74d59ff0051fdfe183e14a16d987edc71d55e6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152185
Tested-by: László Németh 
Reviewed-by: László Németh 
Signed-off-by: Xisco Fauli 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153493
Reviewed-by: Stéphane Guillou 
Tested-by: Jenkins

diff --git a/sc/qa/unit/ucalc_copypaste.cxx b/sc/qa/unit/ucalc_copypaste.cxx
index b6062cb04c72..e63353c860ec 100644
--- a/sc/qa/unit/ucalc_copypaste.cxx
+++ b/sc/qa/unit/ucalc_copypaste.cxx
@@ -27,6 +27,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 
@@ -135,6 +136,7 @@ public:
 
 // tdf#80137
 void testCopyPasteMatrixFormula();
+void testUndoBackgroundColor();
 
 CPPUNIT_TEST_SUITE(TestCopyPaste);
 
@@ -239,6 +241,7 @@ public:
 CPPUNIT_TEST(testMixDataWithFormulaTdf116413);
 
 CPPUNIT_TEST(testCopyPasteMatrixFormula);
+CPPUNIT_TEST(testUndoBackgroundColor);
 
 CPPUNIT_TEST_SUITE_END();
 
@@ -10905,6 +10908,48 @@ void TestCopyPaste::testCopyPasteMatrixFormula()
 m_pDoc->DeleteTab(0);
 }
 
+void TestCopyPaste::testUndoBackgroundColor()
+{
+m_pDoc->InsertTab(0, "Table1");
+
+ScDocument aClipDoc(SCDOCMODE_CLIP);
+ScMarkData aMark(m_pDoc->GetSheetLimits());
+
+// Set Values to B1, C2, D5
+m_pDoc->SetValue(ScAddress(1, 0, 0), 1.0); // B1
+m_pDoc->SetValue(ScAddress(2, 1, 0), 2.0); // C2
+m_pDoc->SetValue(ScAddress(3, 4, 0), 3.0); // D5
+
+// Add patterns
+ScPatternAttr aCellBlueColor(m_pDoc->GetPool());
+aCellBlueColor.GetItemSet().Put(SvxBrushItem(COL_BLUE, ATTR_BACKGROUND));
+m_pDoc->ApplyPatternAreaTab(0, 3, m_pDoc->MaxCol(), 3, 0, aCellBlueColor);
+
+// Insert a new row at row 3
+ScRange aRowOne(0, 2, 0, m_pDoc->MaxCol(), 2, 0);
+aMark.SetMarkArea(aRowOne);
+ScDocFunc& rFunc = m_xDocShell->GetDocFunc();
+rFunc.InsertCells(aRowOne, &aMark, INS_INSROWS_BEFORE, true, true);
+
+// Check patterns
+const SfxPoolItem* pItem = nullptr;
+m_pDoc->GetPattern(ScAddress(1000, 4, 
0))->GetItemSet().HasItem(ATTR_BACKGROUND, &pItem);
+CPPUNIT_ASSERT(pItem);
+CPPUNIT_ASSERT_EQUAL(COL_BLUE, static_cast(pItem)->GetColor());
+
+// Undo the new row
+m_pDoc->GetUndoManager()->Undo();
+
+// Check patterns
+// Failed if row 3 is not blue all the way through
+pItem = nullptr;
+m_pDoc->GetPattern(ScAddress(1000, 3, 
0))->GetItemSet().HasItem(ATTR_BACKGROUND, &pItem);
+CPPUNIT_ASSERT(pItem);
+CPPUNIT_ASSERT_EQUAL(COL_BLUE, static_cast(pItem)->GetColor());
+
+m_pDoc->DeleteTab(0);
+}
+
 CPPUNIT_TEST_SUITE_REGISTRATION(TestCopyPaste);
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index 78c49912bcc9..6cb5384c05f9 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -1851,8 +1851,13 @@ void ScTable::UpdateReference(
 }
 else
 {
-for( SCCOL col : GetAllocatedColumnsRange( 0, rDocument.MaxCol()))
-bUpdated |= aCol[col].UpdateReference(rCxt, pUndoDoc);
+// When deleting row(s) or column(s), allocate the last column
+// before updating the references
+if (nDx < 0 || nDy < 0)
+CreateColumnIfNotExists(rDocument.MaxCol());
+
+for (SCCOL col : GetColumnsRange(0, rDocument.MaxCol()))
+bUpdated |= CreateColumnIfNotExists(col).UpdateReference(rCxt, 
pUndoDoc);
 }
 
 if ( bIncludeDraw )


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - download.lst

2023-06-27 Thread Caolán McNamara (via logerrit)
 download.lst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit b2f1907013e5fec1f1e2b2c20cc5ca5c12e662d2
Author: Caolán McNamara 
AuthorDate: Sun Jun 25 20:04:39 2023 +0100
Commit: Michael Stahl 
CommitDate: Tue Jun 27 12:08:37 2023 +0200

upgrade libtiff to 4.5.1

Change-Id: Ia07f368a371930f655bdc3495e76295dad740d30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153570
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
(cherry picked from commit 3b302b98795310befdae4a4f925ab9921682b79c)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153609
Reviewed-by: Michael Stahl 

diff --git a/download.lst b/download.lst
index 7111b41795c9..b89efb00a776 100644
--- a/download.lst
+++ b/download.lst
@@ -453,8 +453,8 @@ LIBPNG_TARBALL := libpng-1.6.39.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts
-LIBTIFF_SHA256SUM := 
dafac979c5e7b6c650025569c5a4e720995ba5f17bc17e6276d1f12427be267c
-LIBTIFF_TARBALL := tiff-4.5.0rc3.tar.xz
+LIBTIFF_SHA256SUM := 
3c080867114c26edab3129644a63b708028a90514b7fe3126e38e11d24f9f88a
+LIBTIFF_TARBALL := tiff-4.5.1.tar.xz
 # three static lines
 # so that git cherry-pick
 # will not run into conflicts


[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - translations

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

New commits:
commit 1a023ab8d2f15083255174704355635cc88aaa58
Author: Christian Lohmaier 
AuthorDate: Tue Jun 27 11:39:46 2023 +0200
Commit: Gerrit Code Review 
CommitDate: Tue Jun 27 11:39:46 2023 +0200

Update git submodules

* Update translations from branch 'libreoffice-7-5'
  to 25499f95b8bbef13aeb34e1246cb59543f9a8e52
  - update translations for 7.5.5 rc1

and force-fix errors using pocheck

Change-Id: Iaa3bbcd4bcbe2d339c002ccdafd63d52e3914e77

diff --git a/translations b/translations
index f976c83958f5..25499f95b8bb 16
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit f976c83958f5546232fc3e8c812eae3030cdec04
+Subproject commit 25499f95b8bbef13aeb34e1246cb59543f9a8e52


[Libreoffice-commits] translations.git: Branch 'libreoffice-7-5' - source/ab source/af source/ar source/ast source/bg source/bo source/ca source/ckb source/da source/de source/dgo source/dsb source/el

2023-06-27 Thread Christian Lohmaier (via logerrit)
 source/ab/cui/messages.po  |   
14 
 source/ab/filter/messages.po   |   
93 
 source/ab/filter/source/config/fragments/internalgraphicfilters.po |   
 4 
 source/ab/librelogo/source/pythonpath.po   |   
 6 
 source/ab/sc/messages.po   |  
160 -
 source/ab/sd/messages.po   |  
329 +-
 source/ab/sfx2/messages.po |  
180 -
 source/ab/svtools/messages.po  |  
128 
 source/ab/svx/messages.po  |  
128 
 source/ab/vcl/messages.po  |  
160 -
 source/ab/wizards/source/resources.po  |   
24 
 source/af/sw/messages.po   |   
 6 
 source/ar/basctl/messages.po   |   
14 
 source/ar/chart2/messages.po   |   
22 
 source/ar/connectivity/registry/flat/org/openoffice/Office/DataAccess.po   |   
10 
 source/ar/connectivity/registry/mysqlc/org/openoffice/Office/DataAccess.po |   
10 
 source/ar/cui/messages.po  |  
140 
 source/ar/dbaccess/messages.po |   
24 
 source/ar/desktop/messages.po  |   
40 
 source/ar/dictionaries/fa_IR.po|   
12 
 source/ar/dictionaries/th_TH.po|   
10 
 source/ar/editeng/messages.po  |   
12 
 source/ar/extensions/messages.po   |   
30 
 source/ar/filter/messages.po   |   
10 
 source/ar/forms/messages.po|   
10 
 source/ar/instsetoo_native/inc_openoffice/windows/msi_languages.po |   
10 
 source/ar/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver.po|   
52 
 source/ar/nlpsolver/src/locale.po  |   
10 
 source/ar/officecfg/registry/data/org/openoffice/Office/UI.po  |  
102 
 source/ar/readlicense_oo/docs.po   |   
20 
 source/ar/reportdesign/messages.po |   
17 
 source/ar/sc/messages.po   |  
117 
 source/ar/scaddins/messages.po |   
10 
 source/ar/scp2/source/calc.po  |   
10 
 source/ar/scp2/source/draw.po  |   
10 
 source/ar/scp2/source/gnome.po |   
12 
 source/ar/scp2/source/impress.po   |   
10 
 source/ar/scp2/source/math.po  |   
10 
 source/ar/scp2/source/winexplorerext.po|   
10 
 source/ar/scp2/source/writer.po|   
10 
 source/ar/sd/messages.po   |   
36 
 source/ar/sfx2/messages.po |   
70 
 source/ar/starmath/messages.po |   
12 
 source/ar/svtools/messages.po  |   
16 
 source/ar/svx/messages.po  |  
116 
 source/ar/sw/messages.po   |  
504 +--
 source/ar/swext/mediawiki/help.po  |   
20 
 source/ar/uui/messages.po  |   
12 
 source/ar/vcl/messages.po  |   
10 
 source/ar/wizards/messages.po  |   
42 
 source/ar/wizards/source/resources.po  |   
22 
 source/ar/writerperfect/messages.po|   
10 
 source/ast/dbaccess/messages.po|   
10 
 source/ast/extensions/messages.po  |   
 4 
 source/ast/extras/source/autocorr/emoji.po |   
 4 
 source/ast/filter/source/config/fragments/filters.po   |   
 4 
 source/ast/helpcontent2/source/text/sbasic/guide.po|   
 4 
 source/ast/helpcontent2/source/text/sdatabase.po   |   
10 
 source/ast/helpcontent2/source/text/shared/guide.po 

[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - sw/qa sw/source

2023-06-27 Thread Michael Stahl (via logerrit)
 sw/qa/extras/layout/data/tox-update-wrong-pages.odt |binary
 sw/qa/extras/layout/layout.cxx  |   34 
 sw/source/core/inc/frmtool.hxx  |1 
 sw/source/core/layout/flowfrm.cxx   |   20 +++
 sw/source/core/layout/sectfrm.cxx   |3 +
 5 files changed, 57 insertions(+), 1 deletion(-)

New commits:
commit 425a252c3cc5e5a79a533965026dd4af6b8df739
Author: Michael Stahl 
AuthorDate: Fri May 12 17:45:45 2023 +0200
Commit: Thorsten Behrens 
CommitDate: Tue Jun 27 11:28:49 2023 +0200

tdf#155324 sw: layout: try not to MoveFwd onto a page created by page break

There is a ToX that is updated; it has about 4 pages worth of entries.

When the old entries are deleted, 2 of the pages become empty, and since
commit b9ef71476fd70bc13f50ebe80390e0730d1b7afb these pages are deleted.

While layouting the new entries, these are moved onto the page following
the ToX, which starts with a page break and contains lots of footnotes.

Now the footnotes reduce the space on the page available for the ToX
entries, and thus after CalcLayout() there are 5 ToX pages instead of 4.

Then the page numbers are inserted into the entries, and another layout
action deletes one of the ToX pages; now all the page numbers are too
large by 1.

Some ideas to fix this:
1) ignore a footnote when formatting a frame that is before the
   footnote anchor frame; similar to commit
   c79bf7865bff4e88cc201357370d8faeef8e6ad9
2) invalidate the last content on the page when moving forward the
   footnote container, similar to commit
   eb85de8e6b61fb3fcb6c03ae0145f7fe5478bccf; this doesn't look easy to
   do because as it turns out the footnote container is moved in
   SwLayoutFrame::Cut() 5 function calls inside MoveFwd() while the frame
   on which MoveFwd() is called is still on the page, so would probably
   somehow need to be detected in MoveFwd() itself?
3) don't move frames forward onto a page that was created by a page
   break - instead create a new frame.

Let's try 3) for now, only in SwFrame::GetNextSctLeaf().

(regression from commit b9ef71476fd70bc13f50ebe80390e0730d1b7afb)

Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151711
Tested-by: Jenkins
Reviewed-by: Michael Stahl 
(cherry picked from commit 325fe7ab507fd8f2ca17a3db32181edf30169525)

tdf#155324 sw: add unit test

Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151876
Tested-by: Jenkins
Reviewed-by: Michael Stahl 
(cherry picked from commit 247738a9afeeb2f0644fa0307b7023fe115fae83)

Change-Id: I641f586799a5ddb4e2a6ff8e9de784e422ecc214
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151889
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens 

diff --git a/sw/qa/extras/layout/data/tox-update-wrong-pages.odt 
b/sw/qa/extras/layout/data/tox-update-wrong-pages.odt
new file mode 100644
index ..40ceb7ac4bd2
Binary files /dev/null and 
b/sw/qa/extras/layout/data/tox-update-wrong-pages.odt differ
diff --git a/sw/qa/extras/layout/layout.cxx b/sw/qa/extras/layout/layout.cxx
index b4101e9f033e..59db7359bafe 100644
--- a/sw/qa/extras/layout/layout.cxx
+++ b/sw/qa/extras/layout/layout.cxx
@@ -5092,6 +5092,40 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter, 
testTdf54465_ColumnsWithFootnoteDoNotOccupy
 assertXPath(pXmlDoc, "/root/page", 1);
 }
 
+CPPUNIT_TEST_FIXTURE(SwLayoutWriter, testTdf155324)
+{
+createSwDoc("tox-update-wrong-pages.odt");
+
+dispatchCommand(mxComponent, ".uno:UpdateAllIndexes", {});
+
+xmlDocUniquePtr pXmlDoc = parseLayoutDump();
+
+// the problem was that the first entry was on page 7, 2nd on page 9 etc.
+assertXPath(pXmlDoc,
+
"/root/page[1]/body/section[2]/txt[1]/SwParaPortion/SwLineLayout/SwLinePortion[1]",
+"portion", "Foo");
+assertXPath(pXmlDoc,
+
"/root/page[1]/body/section[2]/txt[1]/SwParaPortion/SwLineLayout/SwLinePortion[2]",
+"portion", "5");
+assertXPath(pXmlDoc,
+
"/root/page[1]/body/section[2]/txt[2]/SwParaPortion/SwLineLayout/SwLinePortion[1]",
+"portion", "bar");
+assertXPath(pXmlDoc,
+
"/root/page[1]/body/section[2]/txt[2]/SwParaPortion/SwLineLayout/SwLinePortion[2]",
+"portion", "7");
+assertXPath(pXmlDoc,
+
"/root/page[1]/body/section[2]/txt[3]/SwParaPortion/SwLineLayout/SwLinePortion[1]",
+"portion", "Three");
+assertXPath(pXmlDoc,
+
"/root/page[1]/body/section[2]/txt[3]/SwParaPortion/SwLineLayout/SwLinePortion[2]",
+"portion", "7");
+
+// check first content page has the footnotes
+assertXPath(pXmlDoc, 
"/root/page[5]/body/txt[1]/SwParaPortion/SwLineLayout", "portion", "Foo");
+assertXPath(

[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - sfx2/source

2023-06-27 Thread Caolán McNamara (via logerrit)
 sfx2/source/doc/iframe.cxx |   16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)

New commits:
commit b8129f3df425b879a63239b35845b741ccc34dc3
Author: Caolán McNamara 
AuthorDate: Tue Jun 20 10:20:36 2023 +0100
Commit: Michael Stahl 
CommitDate: Tue Jun 27 11:21:11 2023 +0200

Resolves: tdf#155750 allow private:factory urls in floating frames

they create a new document so there isn't an associated location
which would trigger the prompt to allow it so just allow factory
urls

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

diff --git a/sfx2/source/doc/iframe.cxx b/sfx2/source/doc/iframe.cxx
index 4f3b414d5d69..150218b436e9 100644
--- a/sfx2/source/doc/iframe.cxx
+++ b/sfx2/source/doc/iframe.cxx
@@ -174,14 +174,18 @@ sal_Bool SAL_CALL IFrameObject::load(
 uno::Reference xParentFrame = 
xFrame->getCreator();
 SfxObjectShell* pDoc = SfxMacroLoader::GetObjectShell(xParentFrame);
 
-bool bUpdateAllowed(true);
-if (pDoc)
+const bool bIsFactoryURL = 
aTargetURL.Complete.startsWith("private:factory/");
+if (!bIsFactoryURL)
 {
-comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = 
pDoc->getEmbeddedObjectContainer();
-bUpdateAllowed = 
rEmbeddedObjectContainer.getUserAllowsLinkUpdate();
+bool bUpdateAllowed(true);
+if (pDoc)
+{
+comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer 
= pDoc->getEmbeddedObjectContainer();
+bUpdateAllowed = 
rEmbeddedObjectContainer.getUserAllowsLinkUpdate();
+}
+if (!bUpdateAllowed)
+return false;
 }
-if (!bUpdateAllowed)
-return false;
 
 OUString sReferer;
 if (pDoc && pDoc->HasName())


[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - vcl/source

2023-06-27 Thread Paris Oplopoios (via logerrit)
 vcl/source/filter/GraphicFormatDetector.cxx |7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

New commits:
commit e7c70b352c477afd9b9adab48c7e46a37b701202
Author: Paris Oplopoios 
AuthorDate: Sat Jun 24 03:48:32 2023 +0300
Commit: Michael Stahl 
CommitDate: Tue Jun 27 11:18:42 2023 +0200

tdf#156016 Fix bug where SVG check size would be 0

Change-Id: I1c4adf75bbfbce7cb6b779375714b1c1bc7ec50d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153543
Tested-by: Jenkins
Reviewed-by: Paris Oplopoios 
(cherry picked from commit 85013c57dd29e32ec0411c159ea72824ebca5aa9)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153528
Reviewed-by: Michael Stahl 

diff --git a/vcl/source/filter/GraphicFormatDetector.cxx 
b/vcl/source/filter/GraphicFormatDetector.cxx
index a0cdd2416c57..fc43cdd963ab 100644
--- a/vcl/source/filter/GraphicFormatDetector.cxx
+++ b/vcl/source/filter/GraphicFormatDetector.cxx
@@ -1249,7 +1249,7 @@ bool GraphicFormatDetector::checkSVG()
   SVG_CHECK_SIZE, 
nDecompressedSize);
 nCheckSize = std::min(nDecompressedSize, 256);
 bool bIsSvg(false);
-bool bIsGZip = (nDecompressedSize > 0);
+bool bIsGZip = mbWasCompressed;
 const char* pCheckArrayAsCharArray = reinterpret_cast(pCheckArray);
 // check for XML
 // #119176# SVG files which have no xml header at all have shown up this 
is optional
@@ -1279,11 +1279,11 @@ bool GraphicFormatDetector::checkSVG()
 
 if (bIsGZip)
 {
-nCheckSize = std::min(nDecompressedSize, 2048);
+nCheckSize = std::min(nDecompressedSize, 
SVG_CHECK_SIZE);
 }
 else
 {
-nCheckSize = std::min(mnStreamLength, 2048);
+nCheckSize = std::min(mnStreamLength, SVG_CHECK_SIZE);
 mrStream.Seek(mnStreamPosition);
 nCheckSize = mrStream.ReadBytes(sExtendedOrDecompressedFirstBytes, 
nCheckSize);
 }
@@ -1400,7 +1400,6 @@ sal_uInt8* 
GraphicFormatDetector::checkAndUncompressBuffer(sal_uInt8* aUncompres
 mbWasCompressed = true;
 return aUncompressedBuffer;
 }
-nRetSize = 0;
 mbWasCompressed = false;
 return maFirstBytes.data();
 }


[Libreoffice-commits] core.git: Branch 'libreoffice-7-5' - svx/source

2023-06-27 Thread Khaled Hosny (via logerrit)
 svx/source/svdraw/svdotextdecomposition.cxx |6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

New commits:
commit 83155f319f46dc348f6f90b23e816f87e80e65e1
Author: Khaled Hosny 
AuthorDate: Mon Jun 26 11:18:58 2023 +0300
Commit: Michael Stahl 
CommitDate: Tue Jun 27 11:17:06 2023 +0200

tdf#156050: Fix how misspelling line is calculated for RTL text

Partially revert:

commit 74b6c5ea3c333de7c5e7ef8636732edadd9083f2
Author: Khaled Hosny 
Date:   Thu Jun 8 16:41:18 2023 +0300

tdf#151968: Fix vertical position of RTL spelling wavy line

Instead of changing how fStart and fEnd are calculated, calculate them
like before then swap them. This seems to be more reliable, and matches
what we do in Writer.

Change-Id: Ia15408881666a86151a12fcf016cc81c1568f7e5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153572
Tested-by: Jenkins
Reviewed-by: خالد حسني 
(cherry picked from commit 2ef138de767c312188d41a7f206234eafac3108b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153597
Reviewed-by: Michael Stahl 

diff --git a/svx/source/svdraw/svdotextdecomposition.cxx 
b/svx/source/svdraw/svdotextdecomposition.cxx
index 6d9d5cd9d5f8..0955a8b23604 100644
--- a/svx/source/svdraw/svdotextdecomposition.cxx
+++ b/svx/source/svdraw/svdotextdecomposition.cxx
@@ -427,12 +427,14 @@ namespace
 // full portion width
 const double fTextWidth(aDXArray[aDXArray.size() - 1]);
 
+fStart = fTextWidth - fStart;
+fEnd = fTextWidth - fEnd;
+
 // tdf#151968
 // if start < end, OutputDevice::DrawWaveLine() will
 // think it is a rotated line, so we swap fStart and
 // fEnd to avoid this.
-fStart = fTextWidth - fEnd;
-fEnd = fTextWidth - fStart;
+std::swap(fStart, fEnd);
 }
 
 // need to take FontScaling out of values; it's already 
part of


[Libreoffice-commits] core.git: sc/inc sc/qa sc/source

2023-06-27 Thread Tomaž Vajngerl (via logerrit)
 sc/inc/CommonProperties.hxx   |   14 
 sc/inc/unonames.hxx   |5 +++
 sc/qa/extras/scstyleobj.cxx   |4 ++
 sc/qa/extras/sctablecolumnobj.cxx |4 ++
 sc/qa/extras/sctablerowobj.cxx|4 ++
 sc/source/filter/inc/stylesbuffer.hxx |4 ++
 sc/source/filter/oox/stylesbuffer.cxx |   11 ++
 sc/source/ui/unoobj/cellsuno.cxx  |   54 +++---
 sc/source/ui/unoobj/styleuno.cxx  |9 -
 9 files changed, 52 insertions(+), 57 deletions(-)

New commits:
commit 28e9f2bc390e10339859306ad5f733d377134ca8
Author: Tomaž Vajngerl 
AuthorDate: Fri Jun 23 20:03:27 2023 +0900
Commit: Tomaž Vajngerl 
CommitDate: Tue Jun 27 11:07:49 2023 +0200

sc: import and prop. theme color support for cell borders

Adds import for theme colors for cell borders and UNO properties
for the cell border theme (complex) colors.

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

diff --git a/sc/inc/CommonProperties.hxx b/sc/inc/CommonProperties.hxx
index 2c7d1e0a080b..4a2931753c79 100644
--- a/sc/inc/CommonProperties.hxx
+++ b/sc/inc/CommonProperties.hxx
@@ -17,4 +17,18 @@
 { SC_UNONAME_CCOLOR, ATTR_FONT_COLOR, cppu::UnoType::get(), 0, 
MID_COLOR_RGB }, \
 { SC_UNONAME_CHAR_COMPLEX_COLOR, ATTR_FONT_COLOR, 
cppu::UnoType::get(), 0, MID_COMPLEX_COLOR }, \
 
+#define CELL_BORDER_PROPERTIES \
+{ SC_UNONAME_BOTTBORDER, ATTR_BORDER, 
cppu::UnoType::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_BOTTBORDER2, ATTR_BORDER, 
cppu::UnoType::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_LEFTBORDER, ATTR_BORDER, 
cppu::UnoType::get(), 0, LEFT_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_LEFTBORDER2, ATTR_BORDER, 
cppu::UnoType::get(), 0, LEFT_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_RIGHTBORDER, ATTR_BORDER, 
cppu::UnoType::get(), 0, RIGHT_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_RIGHTBORDER2, ATTR_BORDER, 
cppu::UnoType::get(), 0, RIGHT_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_TOPBORDER, ATTR_BORDER, 
cppu::UnoType::get(), 0, TOP_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_TOPBORDER2, ATTR_BORDER, 
cppu::UnoType::get(), 0, TOP_BORDER | CONVERT_TWIPS }, \
+{ SC_UNONAME_BOTTOM_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType::get(), 0, MID_BORDER_BOTTOM_COLOR }, \
+{ SC_UNONAME_LEFT_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType::get(), 0, MID_BORDER_LEFT_COLOR }, \
+{ SC_UNONAME_RIGHT_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType::get(), 0, MID_BORDER_RIGHT_COLOR }, \
+{ SC_UNONAME_TOP_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType::get(), 0, MID_BORDER_TOP_COLOR }, \
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/inc/unonames.hxx b/sc/inc/unonames.hxx
index 7a7396a358e4..522582a36fb5 100644
--- a/sc/inc/unonames.hxx
+++ b/sc/inc/unonames.hxx
@@ -133,6 +133,11 @@ inline constexpr OUStringLiteral SC_UNONAME_LEFTBORDER2
  = u"LeftBorder2";
 inline constexpr OUStringLiteral SC_UNONAME_RIGHTBORDER2 = u"RightBorder2";
 inline constexpr OUStringLiteral SC_UNONAME_TOPBORDER2   = u"TopBorder2";
 
+inline constexpr OUStringLiteral SC_UNONAME_BOTTOM_BORDER_COMPLEX_COLOR = 
u"BottomBorderComplexColor";
+inline constexpr OUStringLiteral SC_UNONAME_LEFT_BORDER_COMPLEX_COLOR = 
u"LeftBorderComplexColor";
+inline constexpr OUStringLiteral SC_UNONAME_RIGHT_BORDER_COMPLEX_COLOR = 
u"RightBorderComplexColor";
+inline constexpr OUStringLiteral SC_UNONAME_TOP_BORDER_COMPLEX_COLOR = 
u"TopBorderComplexColor";
+
 inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_TLBR= u"DiagonalTLBR";
 inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_BLTR= u"DiagonalBLTR";
 
diff --git a/sc/qa/extras/scstyleobj.cxx b/sc/qa/extras/scstyleobj.cxx
index 813a59db944b..12b3b0ebde8d 100644
--- a/sc/qa/extras/scstyleobj.cxx
+++ b/sc/qa/extras/scstyleobj.cxx
@@ -61,6 +61,7 @@ ScStyleObj::ScStyleObj()
 , XNamed("ScStyleObj")
 , XPropertySet({ "BottomBorder",
  "BottomBorder2",
+ "BottomBorderComplexColor",
  "CellProtection",
  "CharLocale",
  "CharLocaleAsian",
@@ -75,14 +76,17 @@ ScStyleObj::ScStyleObj()
  "HoriJustify",
  "LeftBorder",
  "LeftBorder2",
+ "LeftBorderComplexColor",
  "NumberFormat",
  "Orientation",
  "RightBorder",
  "RightBorder2",
+ "RightBorderComplexColor",
  "ShadowFormat",
  "TableBorder",
  "TopBorder",
  "TopBorder2",
+ "TopBorderComplexColor",
  "UserDefinedAttributes",
   

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-23.05' - drawinglayer/source

2023-06-27 Thread Pranam Lashkari (via logerrit)
 drawinglayer/source/processor2d/vclprocessor2d.cxx |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit 6460c685c3bc3f4929263c7681080056b59948fe
Author: Pranam Lashkari 
AuthorDate: Mon Jun 26 22:28:06 2023 +0700
Commit: Caolán McNamara 
CommitDate: Tue Jun 27 10:58:10 2023 +0200

vcl: render scaled fonts for LOK

problem:
In  online calc when fonts are not scaled, text box disappears when not 
active

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

diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx 
b/drawinglayer/source/processor2d/vclprocessor2d.cxx
index 393c4c64d8e8..0fbeb692dd1a 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -23,6 +23,7 @@
 #include "vclhelperbufferdevice.hxx"
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -162,7 +163,7 @@ void 
VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D(
 
 // tdf#153092 Ideally we don't have to scale the font and dxarray, 
but we might have
 // to nevertheless if dealing with non integer sizes
-const bool bScaleFont(aFontSize.getY() != 
std::round(aFontSize.getY()));
+const bool bScaleFont(aFontSize.getY() != 
std::round(aFontSize.getY()) || comphelper::LibreOfficeKit::isActive());
 vcl::Font aFont;
 
 // Get the VCL font


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - sw/qa sw/source

2023-06-27 Thread László Németh (via logerrit)
 sw/qa/uitest/writer_tests/trackedChanges.py |   65 
 sw/source/uibase/inc/redlndlg.hxx   |3 +
 sw/source/uibase/misc/redlndlg.cxx  |   13 +
 3 files changed, 80 insertions(+), 1 deletion(-)

New commits:
commit 63d7157c52c945231d26192559e17e32d332
Author: László Németh 
AuthorDate: Thu Jun 22 17:33:16 2023 +0200
Commit: László Németh 
CommitDate: Tue Jun 27 10:19:23 2023 +0200

tdf#155847 sw tracked table column: fix crash in Manage Changes

In Manage Changes dialog window, accept/Reject multiple tracked
table columns need major tree list update because of not continuous
redline ranges in the child lists of the multiple tree list parents,
otherwise assert/crash could occur.

Follow-up to commit 4a40a42afc3ba551e6e58947fc2e44689979b629
"tdf#155847 sw tracked table column: manage multiple changes".

Change-Id: I3c7f61d35cbb433067c1f4fd28b80ad7da8ba12e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153464
Tested-by: László Németh 
Reviewed-by: László Németh 
(cherry picked from commit d2b3817fd3fc44179ff0606d4234cbe0ae66e375)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153512
Tested-by: Jenkins

diff --git a/sw/qa/uitest/writer_tests/trackedChanges.py 
b/sw/qa/uitest/writer_tests/trackedChanges.py
index 111571881b82..14aea9bcee0d 100644
--- a/sw/qa/uitest/writer_tests/trackedChanges.py
+++ b/sw/qa/uitest/writer_tests/trackedChanges.py
@@ -597,4 +597,69 @@ class trackedchanges(UITestCase):
 
 self.assertEqual(0, len(changesList.getChildren()))
 
+def test_tdf155847_multiple_tracked_columns_crash(self):
+with 
self.ui_test.load_file(get_url_for_data_file("TC-table-del-add.docx")) as 
document:
+
+xWriterDoc = self.xUITest.getTopFocusWindow()
+xWriterEdit = xWriterDoc.getChild("writer_edit")
+
+# accept all changes and insert new columns with change tracking
+self.xUITest.executeCommand(".uno:AcceptAllTrackedChanges")
+tables = document.getTextTables()
+self.assertEqual(2, len(tables))
+self.assertEqual(len(tables[0].getColumns()), 3)
+self.xUITest.executeCommand(".uno:InsertColumnsAfter")
+self.xUITest.executeCommand(".uno:DeleteColumns")
+self.assertEqual(len(tables[0].getColumns()), 4)
+
+xToolkit = 
self.xContext.ServiceManager.createInstance('com.sun.star.awt.Toolkit')
+xToolkit.processEventsToIdle()
+
+# check and reject changes
+with 
self.ui_test.execute_modeless_dialog_through_command(".uno:AcceptTrackedChanges",
 close_button="close") as xTrackDlg:
+changesList = xTrackDlg.getChild("writerchanges")
+
+# six changes, but only one visible in the Manage Changes 
dialog window
+state = get_state_as_dict(changesList)
+self.assertEqual(state['Children'], '6')
+
+# This was 4 (missing handling of multiple different columns)
+self.assertEqual(state['VisibleCount'], '2')
+# Now: 2 changes (deleted and inserted columns)
+self.assertEqual(2, len(changesList.getChildren()))
+
+# select second tracked table column in tree list
+xToolkit = 
self.xContext.ServiceManager.createInstance('com.sun.star.awt.Toolkit')
+changesList.executeAction("TYPE", mkPropertyValues({"KEYCODE": 
"DOWN"}))
+
+# while not empty, i.e. starts with CH_TXT_TRACKED_DUMMY_CHAR
+while len(get_state_as_dict(xWriterEdit)["SelectedText"]):
+xToolkit.processEventsToIdle()
+
+# reject column insertion
+
+xAccBtn = xTrackDlg.getChild("reject")
+# Without the fix in place, it would have crashed here
+xAccBtn.executeAction("CLICK", tuple())
+
+# inserted column is removed
+
+self.assertEqual(len(tables[0].getColumns()), 3)
+
+# single parent left in the dialog window
+self.assertEqual(1, len(changesList.getChildren()))
+
+# accept column deletion
+
+xAccBtn = xTrackDlg.getChild("accept")
+xAccBtn.executeAction("CLICK", tuple())
+
+# deleted column is removed
+
+self.assertEqual(len(tables[0].getColumns()), 2)
+
+# no changes in the dialog window
+
+self.assertEqual(0, len(changesList.getChildren()))
+
 # vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sw/source/uibase/inc/redlndlg.hxx 
b/sw/source/uibase/inc/redlndlg.hxx
index 7337f1fadce4..c8cfd8cc8262 100644
--- a/sw/source/uibase/inc/redlndlg.hxx
+++ b/sw/source/uibase/inc/redlndlg.hxx
@@ -77,6 +77,9 @@ class SW_DLLPUBLIC SwRedlineAcceptDlg final
 // prevent update dialog data during long

[no subject]

2023-06-27 Thread Mis Zenab
Is Mis Zenab. working with  Al Rayan Bank Of Britain I got your email from google search. I would like to discuss something very important with you about abandoned funds in my bank that I want us to benefit from. If you reply I will give you the full details.


[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - svgio/inc svgio/qa svgio/source

2023-06-27 Thread Xisco Fauli (via logerrit)
 svgio/inc/svgnode.hxx   |2 
 svgio/qa/cppunit/SvgImportTest.cxx  |   24 
 svgio/qa/cppunit/data/tdf156038.svg |   34 
 svgio/source/svgreader/svgnode.cxx  |   98 
 4 files changed, 158 insertions(+)

New commits:
commit 11746198e46909913a5085907dc9d1a8593a0b90
Author: Xisco Fauli 
AuthorDate: Mon Jun 26 19:15:03 2023 +0200
Commit: Xisco Fauli 
CommitDate: Tue Jun 27 10:05:01 2023 +0200

tdf#156038, tdf#78232: support css child combinator

Change-Id: I874c368f66db97017357030867f121996228
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153626
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
(cherry picked from commit 930eb99a712a3ad9b76e9edb68bbcea68af36656)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153604

diff --git a/svgio/inc/svgnode.hxx b/svgio/inc/svgnode.hxx
index a85958936d9e..0d8008d41c90 100644
--- a/svgio/inc/svgnode.hxx
+++ b/svgio/inc/svgnode.hxx
@@ -126,6 +126,8 @@ namespace svgio::svgreader
 void fillCssStyleVectorUsingHierarchyAndSelectors(
 const SvgNode& rCurrent,
 const OUString& aConcatenated);
+void fillCssStyleVectorUsingParent(
+const SvgNode& rCurrent);
 
 public:
 SvgNode(
diff --git a/svgio/qa/cppunit/SvgImportTest.cxx 
b/svgio/qa/cppunit/SvgImportTest.cxx
index 651e1341521f..a433fe89c020 100644
--- a/svgio/qa/cppunit/SvgImportTest.cxx
+++ b/svgio/qa/cppunit/SvgImportTest.cxx
@@ -340,6 +340,30 @@ CPPUNIT_TEST_FIXTURE(Test, testTdf156034)
 assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[4]", 
"color", "#008000");
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testTdf156038)
+{
+Primitive2DSequence aSequence = 
parseSvg(u"/svgio/qa/cppunit/data/tdf156038.svg");
+CPPUNIT_ASSERT_EQUAL(1, static_cast(aSequence.getLength()));
+
+drawinglayer::Primitive2dXmlDump dumper;
+xmlDocUniquePtr pDocument = dumper.dumpAndParse(aSequence);
+
+CPPUNIT_ASSERT (pDocument);
+
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[1]", 
"color", "#ff");
+
+// Without the fix in place, this test would have failed with
+// - Expected: #008000
+// - Actual  : #ff
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[2]", 
"color", "#008000");
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[3]", 
"color", "#ff");
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[4]", 
"color", "#008000");
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[5]", 
"color", "#ff");
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[6]", 
"color", "#008000");
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[7]", 
"color", "#ff");
+assertXPath(pDocument, "/primitive2D/transform/polypolygoncolor[8]", 
"color", "#008000");
+}
+
 CPPUNIT_TEST_FIXTURE(Test, testTdf156018)
 {
 Primitive2DSequence aSequence = 
parseSvg(u"/svgio/qa/cppunit/data/tdf156018.svg");
diff --git a/svgio/qa/cppunit/data/tdf156038.svg 
b/svgio/qa/cppunit/data/tdf156038.svg
new file mode 100644
index ..9835453e7fdd
--- /dev/null
+++ b/svgio/qa/cppunit/data/tdf156038.svg
@@ -0,0 +1,34 @@
+http://www.w3.org/2000/svg"; 
xmlns:xlink="http://www.w3.org/1999/xlink"; viewBox="-0 0 800 800">
+
+
+.g1 > rect {fill:green;}
+#g3 > rect {fill:green;}
+.g4 > #r1 {fill:green;}
+#g3 > .r5 {fill:green;}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/svgio/source/svgreader/svgnode.cxx 
b/svgio/source/svgreader/svgnode.cxx
index 399b92231543..37b34deff0f6 100644
--- a/svgio/source/svgreader/svgnode.cxx
+++ b/svgio/source/svgreader/svgnode.cxx
@@ -184,6 +184,100 @@ namespace {
 }
 }
 
+void SvgNode::fillCssStyleVectorUsingParent(const SvgNode& rCurrent)
+{
+const SvgDocument& rDocument = getDocument();
+
+if(!rDocument.hasGlobalCssStyleAttributes())
+return;
+
+const SvgNode* pParent = rCurrent.getParent();
+
+if (!pParent)
+return;
+
+OUString sParentId;
+if (pParent->getId().has_value())
+{
+sParentId = pParent->getId().value();
+}
+std::vector  aParentClasses = parseClass(*pParent);
+OUString sParentType(SVGTokenToStr(pParent->getType()));
+
+if(rCurrent.getId())
+{
+const OUString& rId = *rCurrent.getId();
+
+if(!rId.isEmpty())
+{
+if (!sParentId.isEmpty())
+{
+const OUString aConcatenated("#" + sP

[Libreoffice-commits] core.git: config_host/config_cairo_rgba.h.in config_host.mk.in configure.ac desktop/source distro-configs/CPLinux-LOKit.conf distro-configs/LibreOfficeOnline.conf external/cairo

2023-06-27 Thread Caolán McNamara (via logerrit)
 config_host.mk.in |1 
 config_host/config_cairo_rgba.h.in|6 
 configure.ac  |   21 +++-
 desktop/source/lib/init.cxx   |5 +++
 distro-configs/CPLinux-LOKit.conf |1 
 distro-configs/LibreOfficeOnline.conf |1 
 external/cairo/UnpackedTarball_cairo.mk   |3 --
 include/vcl/cairo.hxx |   16 
 libreofficekit/qa/tilebench/tilebench.cxx |   38 --
 vcl/headless/CairoCommon.cxx  |2 -
 10 files changed, 68 insertions(+), 26 deletions(-)

New commits:
commit 22ab4f30ac2125579c43ad889f7b8b45b1dda3e3
Author: Caolán McNamara 
AuthorDate: Mon Jun 26 16:56:21 2023 +0100
Commit: Caolán McNamara 
CommitDate: Tue Jun 27 10:04:36 2023 +0200

add an --enable-cairo-rgba to set the order of pixels for internal cairo

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

diff --git a/config_host.mk.in b/config_host.mk.in
index 0ab0e2f747c4..233e2247816c 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -145,6 +145,7 @@ export ENABLE_AVAHI=@ENABLE_AVAHI@
 export ENABLE_BREAKPAD=@ENABLE_BREAKPAD@
 export DEFAULT_CRASHDUMP_VALUE=@DEFAULT_CRASHDUMP_VALUE@
 export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@
+export ENABLE_CAIRO_RGBA=@ENABLE_CAIRO_RGBA@
 export ENABLE_CIPHER_OPENSSL_BACKEND=@ENABLE_CIPHER_OPENSSL_BACKEND@
 export ENABLE_CLUCENE=@ENABLE_CLUCENE@
 export ENABLE_LIBCMIS=@ENABLE_LIBCMIS@
diff --git a/config_host/config_cairo_rgba.h.in 
b/config_host/config_cairo_rgba.h.in
new file mode 100644
index ..bdbecfbbc0e1
--- /dev/null
+++ b/config_host/config_cairo_rgba.h.in
@@ -0,0 +1,6 @@
+#ifndef CONFIG_CAIRO_RGBA_H
+#define CONFIG_CAIRO_RGBA_H
+
+#define ENABLE_CAIRO_RGBA 0
+
+#endif
diff --git a/configure.ac b/configure.ac
index 04dcacc85a66..ece7c7d40db8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2482,6 +2482,10 @@ AC_ARG_WITH(system-hunspell,
 [Use libhunspell already on system.]),,
 [with_system_hunspell="$with_system_libs"])
 
+libo_FUZZ_ARG_ENABLE(cairo-rgba,
+AS_HELP_STRING([--enable-cairo-rgba],
+[Use RGBA order, instead of default BRGA. Not possible with 
--with-system-cairo]))
+
 libo_FUZZ_ARG_ENABLE(zxing,
 AS_HELP_STRING([--disable-zxing],
[Disable use of zxing external library.]))
@@ -13610,6 +13614,20 @@ fi
 AC_SUBST(USE_XINERAMA)
 AC_SUBST(XINERAMA_LINK)
 
+AC_MSG_CHECKING([whether to use non-standard RGBA32 cairo pixel order])
+if test -z "$enable_cairo_rgba" -a "$_os" = "Android"; then
+enable_cairo_rgba=yes
+fi
+if test "$enable_cairo_rgba" = yes; then
+AC_DEFINE(ENABLE_CAIRO_RGBA)
+ENABLE_CAIRO_RGBA=TRUE
+AC_MSG_RESULT([yes])
+else
+ENABLE_CAIRO_RGBA=
+AC_MSG_RESULT([no])
+fi
+AC_SUBST(ENABLE_CAIRO_RGBA)
+
 dnl ===
 dnl Test whether to build cairo or rely on the system version
 dnl ===
@@ -13618,7 +13636,7 @@ if test "$test_cairo" = "yes"; then
 AC_MSG_CHECKING([whether to use the system cairo])
 
 : ${with_system_cairo:=$with_system_libs}
-if test "$with_system_cairo" = "yes"; then
+if test "$with_system_cairo" = "yes" -a "$enable_cairo_rgba" != "yes"; then
 SYSTEM_CAIRO=TRUE
 AC_MSG_RESULT([yes])
 
@@ -14924,6 +14942,7 @@ AC_CONFIG_HEADERS([config_host/config_dconf.h])
 AC_CONFIG_HEADERS([config_host/config_eot.h])
 AC_CONFIG_HEADERS([config_host/config_extensions.h])
 AC_CONFIG_HEADERS([config_host/config_cairo_canvas.h])
+AC_CONFIG_HEADERS([config_host/config_cairo_rgba.h])
 AC_CONFIG_HEADERS([config_host/config_cxxabi.h])
 AC_CONFIG_HEADERS([config_host/config_dbus.h])
 AC_CONFIG_HEADERS([config_host/config_features.h])
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index 074a5b81b1ad..4311b501ad16 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -9,6 +9,7 @@
 
 #include 
 #include 
+#include 
 #include 
 
 #include 
@@ -4229,7 +4230,11 @@ static void doc_paintPartTile(LibreOfficeKitDocument* 
pThis,
 static int doc_getTileMode(SAL_UNUSED_PARAMETER LibreOfficeKitDocument* 
/*pThis*/)
 {
 SetLastExceptionMsg();
+#if ENABLE_CAIRO_RGBA
+return LOK_TILEMODE_RGBA;
+#else
 return LOK_TILEMODE_BGRA;
+#endif
 }
 
 static void doc_getDocumentSize(LibreOfficeKitDocument* pThis,
diff --git a/distro-configs/CPLinux-LOKit.conf 
b/distro-configs/CPLinux-LOKit.conf
index 5873d12a2522..f545bb4b8199 100644
--- a/distro-configs/CPLinux-LOKit.conf
+++ b/distro-configs/CPLinux-LOKit.conf
@@ -6,6 +6,7 @@
 --with-myspell-dicts
 --with-system-zlib
 --disable-poppler
+--enable-cairo-rgba
 --without-system-cairo
 --without-system-fontconfig
 --without-system-freetype
diff --git a/distro-con

[Libreoffice-commits] core.git: Branch 'libreoffice-7-6' - include/unotools officecfg/registry sw/inc sw/qa sw/source sw/uiconfig unotools/source

2023-06-27 Thread Vojtěch Doležal (via logerrit)
 include/unotools/compatibility.hxx|1 
 officecfg/registry/schema/org/openoffice/Office/Compatibility.xcs |6 
 sw/inc/IDocumentSettingAccess.hxx |2 
 sw/qa/core/text/data/tdf41652_legacy.fodt |  300 
-
 sw/qa/core/text/data/tdf41652_variableNBSPdisabled.fodt   |  301 
--
 sw/qa/core/text/data/tdf41652_variableNBSPenabled.fodt|  301 
--
 sw/qa/core/text/text.cxx  |   71 --
 sw/source/core/doc/DocumentSettingManager.cxx |   17 
 sw/source/core/inc/DocumentSettingManager.hxx |1 
 sw/source/core/text/porexp.cxx|   17 
 sw/source/filter/xml/xmlimp.cxx   |1 
 sw/source/ui/config/optcomp.cxx   |   17 
 sw/source/uibase/uno/SwXDocumentSettings.cxx  |   16 
 sw/uiconfig/swriter/ui/optcompatpage.ui   |1 
 unotools/source/config/compatibility.cxx  |2 
 15 files changed, 8 insertions(+), 1046 deletions(-)

New commits:
commit a344f4ef39e59b8be5007531b6dd776d156c297e
Author: Vojtěch Doležal 
AuthorDate: Thu Jun 22 19:13:48 2023 +0200
Commit: Mike Kaganski 
CommitDate: Tue Jun 27 09:45:47 2023 +0200

Revert variable width NBSP for 7.6

As discussed some time ago, the implementation is experimental and not 
ready for 7.6 at the moment.

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

diff --git a/include/unotools/compatibility.hxx 
b/include/unotools/compatibility.hxx
index ed7b0f9d52f3..d336ff3c2475 100644
--- a/include/unotools/compatibility.hxx
+++ b/include/unotools/compatibility.hxx
@@ -60,7 +60,6 @@ class SvtCompatibilityEntry
 MsWordTrailingBlanks,
 SubtractFlysAnchoredAtFlys,
 EmptyDbFieldHidesPara,
-UseVariableWidthNBSP,
 
 /// special entry: optcomp.cxx converts the other values to
 /// integers but not this one because it doesn't have its own
diff --git a/officecfg/registry/schema/org/openoffice/Office/Compatibility.xcs 
b/officecfg/registry/schema/org/openoffice/Office/Compatibility.xcs
index fc0919ae2a3a..68b369ba09fc 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Compatibility.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Compatibility.xcs
@@ -128,12 +128,6 @@
 
 true
   
-  
-
-  Render NBSP as having variable size, instead of having a fixed 
size
-
-false
-  
 
   
   
diff --git a/sw/inc/IDocumentSettingAccess.hxx 
b/sw/inc/IDocumentSettingAccess.hxx
index f14ffb543b30..60f5bc7d9468 100644
--- a/sw/inc/IDocumentSettingAccess.hxx
+++ b/sw/inc/IDocumentSettingAccess.hxx
@@ -125,8 +125,6 @@ enum class DocumentSettingId
 // drop cap punctuation: smaller dashes, bullet, asterisks, quotation 
marks etc.
 // by extending the rounding box of the glyph to the baseline
 DROP_CAP_PUNCTUATION,
-// render NBSP as standard-space-width (prettier when justified)
-USE_VARIABLE_WIDTH_NBSP,
 };
 
 /** Provides access to settings of a document
diff --git a/sw/qa/core/text/data/tdf41652_legacy.fodt 
b/sw/qa/core/text/data/tdf41652_legacy.fodt
deleted file mode 100644
index 07761f24be72..
--- a/sw/qa/core/text/data/tdf41652_legacy.fodt
+++ /dev/null
@@ -1,300 +0,0 @@
-
-
-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:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
xmlns:ooo="http://openoffice.org/2004/office"; 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" 
xmlns:ooow="http://openoffice.org/2004/writer"; 
xmlns:xlink="http://www.w3.org/1999/xlink"; 
xmlns:drawooo="http://openoffice.org/2010/draw"; 
xmlns:oooc="http://openoffice.org/2004/calc"; 
xmlns:dc="http://purl.org/dc/elements/1.1/"; xmlns:c
 alcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" 
xmlns:tableooo="http://openoffice.org/2009/table"; 
xmlns:draw="urn:oasis:name