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

2022-05-31 Thread Miklos Vajna (via logerrit)
 sw/qa/extras/ooxmlexport/ooxmlexport13.cxx |   37 ++---
 1 file changed, 18 insertions(+), 19 deletions(-)

New commits:
commit de6cd24c4c6de0b05a486b138bf46a1c91f17d50
Author: Miklos Vajna 
AuthorDate: Tue May 31 20:18:59 2022 +0200
Commit: Miklos Vajna 
CommitDate: Wed Jun 1 08:26:33 2022 +0200

CppunitTest_sw_ooxmlexport13: avoid mustTestImportOf()

Can use CPPUNIT_TEST_FIXTURE() instead.

See commit a226cec52e536c46e03f57a5f1f7931abbeb0cdd
(CppunitTest_sw_rtfimport: convert one testcase to use
CPPUNIT_TEST_FIXTURE(), 2019-11-05) for motivation.

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

diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
index e3525b5991ab..b97b6c241093 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
@@ -33,16 +33,6 @@ class Test : public SwModelTestBase
 {
 public:
 Test() : SwModelTestBase("/sw/qa/extras/ooxmlexport/data/", "Office Open 
XML Text") {}
-
-protected:
-/**
- * Denylist handling
- */
-bool mustTestImportOf(const char* filename) const override {
-// If the testcase is stored in some other format, it's pointless to 
test.
-return o3tl::ends_with(filename, ".docx")
-|| filename == std::string_view("ooo39250-1-min.rtf");
-}
 };
 
 // TODO: the re-import doesn't work just yet, but that isn't a regression...
@@ -68,8 +58,9 @@ DECLARE_OOXMLEXPORT_TEST(testTdf126994_lostPageBreak, 
"tdf126994_lostPageBreak.d
 CPPUNIT_ASSERT_EQUAL_MESSAGE( "Number of Pages", 3, getPages() );
 }
 
-DECLARE_OOXMLEXPORT_TEST(testTdf121374_sectionHF, "tdf121374_sectionHF.odt")
+CPPUNIT_TEST_FIXTURE(Test, testTdf121374_sectionHF)
 {
+loadAndReload("tdf121374_sectionHF.odt");
 uno::Reference 
xPageStyle(getStyles("PageStyles")->getByName("Standard"), uno::UNO_QUERY);
 uno::Reference xFooterText = getProperty< 
uno::Reference >(xPageStyle, "FooterText");
 CPPUNIT_ASSERT_EQUAL( OUString("footer"), xFooterText->getString() );
@@ -78,8 +69,9 @@ DECLARE_OOXMLEXPORT_TEST(testTdf121374_sectionHF, 
"tdf121374_sectionHF.odt")
 CPPUNIT_ASSERT_EQUAL_MESSAGE( "Number of Pages", 6, getPages() );
 }
 
-DECLARE_OOXMLEXPORT_TEST(testTdf121374_sectionHF2, "tdf121374_sectionHF2.doc")
+CPPUNIT_TEST_FIXTURE(Test, testTdf121374_sectionHF2)
 {
+loadAndReload("tdf121374_sectionHF2.doc");
 uno::Reference 
xPageStyle(getStyles("PageStyles")->getByName("Standard"), uno::UNO_QUERY);
 uno::Reference xHeaderText = getProperty< 
uno::Reference >(xPageStyle, "HeaderText");
 CPPUNIT_ASSERT( xHeaderText->getString().startsWith("virkamatka-anomus") );
@@ -343,8 +335,9 @@ DECLARE_OOXMLEXPORT_TEST(testBtlrShape, "btlr-textbox.docx")
  rFormats[1]->GetAttrSet().GetFrameDir().GetValue());
 }
 
-DECLARE_OOXMLEXPORT_TEST(testTdf127316_autoEscapement, 
"tdf127316_autoEscapement.odt")
+CPPUNIT_TEST_FIXTURE(Test, testTdf127316_autoEscapement)
 {
+loadAndReload("tdf127316_autoEscapement.odt");
 CPPUNIT_ASSERT_EQUAL(1, getPages());
 // This should be roughly .8*35% of the ORIGINAL(non-reduced) size. 
However, during export the
 // proportional height has to be changed into direct formatting, which 
then changes the relative percent.
@@ -385,8 +378,9 @@ DECLARE_OOXMLEXPORT_TEST(testTdf99602_charStyleSubscript, 
"tdf99602_charStyleSub
 CPPUNIT_ASSERT_EQUAL( sal_Int16(DFLT_ESC_PROP), 
getProperty(getRun(xPara, 2), "CharEscapementHeight") );
 }
 
-DECLARE_OOXMLEXPORT_TEST(testTdf99602_charStyleSubscript2, 
"tdf99602_charStyleSubscript2.odt")
+CPPUNIT_TEST_FIXTURE(Test, testTdf99602_charStyleSubscript2)
 {
+loadAndReload("tdf99602_charStyleSubscript2.odt");
 CPPUNIT_ASSERT_EQUAL(1, getPages());
 // *_In styles_*, don't let the proportionality/escapement affect the 
fontsize - otherwise it starts doubling up,
 // so instead just throw away the values and use the default settings 
instead - meaning fontsize is unaffected.
@@ -496,8 +490,9 @@ DECLARE_OOXMLEXPORT_TEST(testTdf118947_tableStyle2, 
"tdf118947_tableStyle2.docx"
  
static_cast(getProperty(xPara, 
"ParaAdjust")));
 }
 
-DECLARE_OOXMLEXPORT_TEST(tdf123912_protectedForm, 
"tdf123912_protectedForm.odt")
+CPPUNIT_TEST_FIXTURE(Test, tdf123912_protectedForm)
 {
+loadAndReload("tdf123912_protectedForm.odt");
 CPPUNIT_ASSERT_EQUAL(1, getPages());
 SwXTextDocument* pTextDoc = dynamic_cast(mxComponent.get());
 CPPUNIT_ASSERT(pTextDoc);
@@ -553,8 +548,9 @@ CPPUNIT_TEST_FIXTURE(Test, testDateControl)
 CPPUNIT_ASSERT_EQUAL(OUString(""), sCurrentDate);
 }
 
-DECLARE_OOXMLEXPORT_TEST(testTdf121867, "tdf121867.odt")
+CPPUNIT_TEST_FIXTURE(Test, testTdf121867)
 {
+loadAndReload("tdf121867.odt");
 CPPUNIT

[Libreoffice-commits] core.git: officecfg/registry

2022-05-31 Thread Seth Chaiklin (via logerrit)
 officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu |   10 
--
 1 file changed, 8 insertions(+), 2 deletions(-)

New commits:
commit f2d2334b032780d97f7a95aacb8283008e91c529
Author: Seth Chaiklin 
AuthorDate: Fri May 27 00:08:33 2022 +0200
Commit: Seth Chaiklin 
CommitDate: Wed Jun 1 02:50:23 2022 +0200

tdf#121367 (related: tdf#120550) consistent labeling between modules

  There is a slight difference in the label used by Writer
  and the label used by Draw/Impress to refer to:
  .uno:SetMinimalRowHeight and  uno:SetMinimalColumnWidth.
  This patch changes the label in Writer so that it uses the
  same label as Draw/Impress.

Change-Id: I0469b32350bf9a57903b03929675d3b7e8abe287
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135005
Reviewed-by: Seth Chaiklin 
Reviewed-by: Heiko Tietze 
Tested-by: Jenkins

diff --git 
a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
index 7c7dede5e219..a79fef9d8b5e 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
@@ -2536,7 +2536,10 @@
   
   
 
-  Minimize Column Width
+  Minimal Column Width
+
+
+  Minimal Column Width: Adjust width of 
selected columns to fit content
 
 
   1
@@ -2557,7 +2560,10 @@
   
   
 
-  Minimize Row Height
+  Minimal Row Height
+
+
+  Minimal Row Height: Adjust height of 
selected rows to fit content
 
 
   1


[Libreoffice-commits] core.git: cui/inc cui/uiconfig sd/inc

2022-05-31 Thread Seth Chaiklin (via logerrit)
 cui/inc/strings.hrc |2 +-
 cui/uiconfig/ui/querychangelineenddialog.ui |6 +++---
 cui/uiconfig/ui/querydeletelineenddialog.ui |4 ++--
 sd/inc/strings.hrc  |2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

New commits:
commit 5423dfb8549743bd5045b6e3b1ebad7980e62965
Author: Seth Chaiklin 
AuthorDate: Fri Apr 22 21:51:33 2022 +0100
Commit: Seth Chaiklin 
CommitDate: Wed Jun 1 01:16:28 2022 +0200

tdf#148736 improve labels for Arrow style popup dialogs

Change-Id: Ifc43650a3008cbd96cac8f994675e680368a215b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133287
Tested-by: Jenkins
Reviewed-by: Seth Chaiklin 

diff --git a/cui/inc/strings.hrc b/cui/inc/strings.hrc
index b0dccedc413f..cea0b183e33a 100644
--- a/cui/inc/strings.hrc
+++ b/cui/inc/strings.hrc
@@ -319,7 +319,7 @@
 #define RID_CUISTR_ADD  NC_("RID_SVXSTR_ADD", 
"Add")
 #define RID_CUISTR_DESC_COLOR   
NC_("RID_SVXSTR_DESC_COLOR", "Please enter a name for the new color:")
 #define RID_CUISTR_TABLENC_("RID_SVXSTR_TABLE", 
"Table")
-#define RID_CUISTR_DESC_LINEEND 
NC_("RID_SVXSTR_DESC_LINEEND", "Please enter a name for the new arrowhead:")
+#define RID_CUISTR_DESC_LINEEND 
NC_("RID_SVXSTR_DESC_LINEEND", "Please enter a name for the new arrow style:")
 #define RID_CUISTR_CHARNAME_NOSTYLE 
NC_("RID_SVXSTR_CHARNAME_NOSTYLE", "No %1")
 #define RID_CUISTR_CHARNAME_FAMILY  
NC_("RID_SVXSTR_CHARNAME_FAMILY", "Family:")
 #define RID_CUISTR_CHARNAME_FONT
NC_("RID_SVXSTR_CHARNAME_FONT", "Font:")
diff --git a/cui/uiconfig/ui/querychangelineenddialog.ui 
b/cui/uiconfig/ui/querychangelineenddialog.ui
index 6057416728a1..5ec1567001b0 100644
--- a/cui/uiconfig/ui/querychangelineenddialog.ui
+++ b/cui/uiconfig/ui/querychangelineenddialog.ui
@@ -4,15 +4,15 @@
   
   
 False
-Save 
Arrowhead?
+Save Arrow 
Style?
 False
 True
 dialog
 True
 warning
 yes-no
-The arrowhead was 
modified without saving.
-Would you like to 
save the arrowhead now?
+The arrow style was 
modified without saving.
+Would you like to 
save the arrow style now?
 
   
 False
diff --git a/cui/uiconfig/ui/querydeletelineenddialog.ui 
b/cui/uiconfig/ui/querydeletelineenddialog.ui
index eb1e771a246f..6917fc62422a 100644
--- a/cui/uiconfig/ui/querydeletelineenddialog.ui
+++ b/cui/uiconfig/ui/querydeletelineenddialog.ui
@@ -4,14 +4,14 @@
   
   
 False
-Delete 
Arrowhead?
+Delete Arrow 
Style?
 False
 True
 dialog
 True
 question
 yes-no
-Do you really want to 
delete the arrowhead?
+Do you really want to 
delete the arrow style?
 This action cannot be 
undone.
 
   
diff --git a/sd/inc/strings.hrc b/sd/inc/strings.hrc
index c67d1c9d1579..05326f9e461a 100644
--- a/sd/inc/strings.hrc
+++ b/sd/inc/strings.hrc
@@ -64,7 +64,7 @@
 #define STR_AUTOLAYOUT_NOTES
NC_("STR_AUTOLAYOUT_NOTES", "Notes")
 #define STR_TRANSFORM   NC_("STR_TRANSFORM", 
"Transform")
 #define STR_LINEEND NC_("STR_LINEEND", 
"Line Ends")
-#define STR_DESC_LINEEND
NC_("STR_DESC_LINEEND", "Please enter a name for the new arrowhead:")
+#define STR_DESC_LINEEND
NC_("STR_DESC_LINEEND", "Please enter a name for the new arrow style:")
 #define STR_WARN_NAME_DUPLICATE 
NC_("STR_WARN_NAME_DUPLICATE", "The name chosen already exists. \nPlease enter 
another name.")
 #define STR_UNDO_ANIMATION  
NC_("STR_UNDO_ANIMATION", "Animation parameters")
 #define STR_UNDO_COPYOBJECTS
NC_("STR_UNDO_COPYOBJECTS", "Duplicate")


[Libreoffice-commits] core.git: helpcontent2

2022-05-31 Thread Seth Chaiklin (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit c2670f45252aa3642ea4fbb70a48e03e284eb60c
Author: Seth Chaiklin 
AuthorDate: Wed Jun 1 00:29:49 2022 +0200
Commit: Gerrit Code Review 
CommitDate: Wed Jun 1 00:29:49 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to b30109758ad6b6bcb8b82d6a646fc055cd3a2402
  - refactor some embedvars that give a translation problem for some

Change-Id: Ibb67c7dd61fe55892232bebc2280fb3faed0db37
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/135168
Reviewed-by: Seth Chaiklin 
Tested-by: Jenkins

diff --git a/helpcontent2 b/helpcontent2
index 4bbaecd77c87..b30109758ad6 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 4bbaecd77c87afee5453dc89a9e033d4048c909e
+Subproject commit b30109758ad6b6bcb8b82d6a646fc055cd3a2402


[Libreoffice-commits] help.git: source/text

2022-05-31 Thread Seth Chaiklin (via logerrit)
 source/text/shared/00/0005.xhp  |3 ++-
 source/text/swriter/guide/anchor_object.xhp |2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

New commits:
commit b30109758ad6b6bcb8b82d6a646fc055cd3a2402
Author: Seth Chaiklin 
AuthorDate: Tue May 31 23:23:23 2022 +0200
Commit: Seth Chaiklin 
CommitDate: Wed Jun 1 00:29:48 2022 +0200

refactor some embedvars that give a translation problem for some

Change-Id: Ibb67c7dd61fe55892232bebc2280fb3faed0db37
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/135168
Reviewed-by: Seth Chaiklin 
Tested-by: Jenkins

diff --git a/source/text/shared/00/0005.xhp 
b/source/text/shared/00/0005.xhp
index 4866ec144..bb23d6002 100644
--- a/source/text/shared/00/0005.xhp
+++ b/source/text/shared/00/0005.xhp
@@ -199,7 +199,8 @@
 
OLE
Object 
Linking and Embedding (OLE) objects can be linked to a target document or may 
also be embedded. Embedding inserts a copy of the object and details of the 
source program in the target document. If you want to edit the object, simply 
activate the source program by double-clicking on the object.
-   If an OLE object is 
linked to a target document, then the target document must be available in the 
location specified in the link. Deleting or moving the target document will 
make it impossible to open the linked OLE object. You can use the  option 
in the General section of Load/Save Options to 
configure your system to save links relative to your filesystem.
+   If an OLE object is 
linked to a target document, then the target document must be available in the 
location specified in the link. Deleting or moving the target document will 
make it impossible to open the linked OLE object. You can use the Save URLs relative to file system 
option in the General section of Load/Save 
Options to configure your system to save links relative to your filesystem.
+  
   
   
 
diff --git a/source/text/swriter/guide/anchor_object.xhp 
b/source/text/swriter/guide/anchor_object.xhp
index 5cca8c8cf..11e43ee29 100644
--- a/source/text/swriter/guide/anchor_object.xhp
+++ b/source/text/swriter/guide/anchor_object.xhp
@@ -104,7 +104,7 @@
 
 
 Changing an Anchor
-To change the anchoring 
options of an object, right-click the object, and then choose an option from 
the  submenu.
+To change the anchoring 
options of an object, right-click the object, and then choose an option from 
the Anchor submenu.
 
 
 


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

2022-05-31 Thread Jan-Marek Glogowski (via logerrit)
 vcl/qt5/QtWidget.cxx |   47 ++-
 1 file changed, 22 insertions(+), 25 deletions(-)

New commits:
commit cd2ea94969b9c63b24e35e9b8e546cea0f62340e
Author: Jan-Marek Glogowski 
AuthorDate: Tue May 31 21:03:39 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Wed Jun 1 00:16:32 2022 +0200

Qt just resize the backing store on size change

... and if there is no need to create a Cairo surface if it
doesn't exists, there is no need for a fresh QImage either.

Change-Id: If607e03d246f3c31d66953b1e07a7af55659e64b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135209
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/vcl/qt5/QtWidget.cxx b/vcl/qt5/QtWidget.cxx
index 74adcc4e974c..b2451123e7e6 100644
--- a/vcl/qt5/QtWidget.cxx
+++ b/vcl/qt5/QtWidget.cxx
@@ -98,38 +98,35 @@ void QtWidget::resizeEvent(QResizeEvent* pEvent)
 
 if (m_rFrame.m_bUseCairo)
 {
-if (m_rFrame.m_pSvpGraphics)
+if (m_rFrame.m_pSurface)
 {
-cairo_surface_t* pSurface
-= cairo_image_surface_create(CAIRO_FORMAT_ARGB32, nWidth, 
nHeight);
-cairo_surface_set_user_data(pSurface, 
SvpSalGraphics::getDamageKey(),
-&m_rFrame.m_aDamageHandler, nullptr);
-m_rFrame.m_pSvpGraphics->setSurface(pSurface, 
basegfx::B2IVector(nWidth, nHeight));
-UniqueCairoSurface old_surface(m_rFrame.m_pSurface.release());
-m_rFrame.m_pSurface.reset(pSurface);
-
-int min_width = 
qMin(cairo_image_surface_get_width(old_surface.get()), nWidth);
-int min_height = 
qMin(cairo_image_surface_get_height(old_surface.get()), nHeight);
-
-SalTwoRect rect(0, 0, min_width, min_height, 0, 0, min_width, 
min_height);
-
-m_rFrame.m_pSvpGraphics->copySource(rect, old_surface.get());
+const int nOldWidth = 
cairo_image_surface_get_width(m_rFrame.m_pSurface.get());
+const int nOldHeight = 
cairo_image_surface_get_height(m_rFrame.m_pSurface.get());
+if (nOldWidth != nWidth || nOldHeight != nHeight)
+{
+cairo_surface_t* pSurface
+= cairo_image_surface_create(CAIRO_FORMAT_ARGB32, nWidth, 
nHeight);
+cairo_surface_set_user_data(pSurface, 
SvpSalGraphics::getDamageKey(),
+&m_rFrame.m_aDamageHandler, 
nullptr);
+m_rFrame.m_pSvpGraphics->setSurface(pSurface, 
basegfx::B2IVector(nWidth, nHeight));
+UniqueCairoSurface old_surface(m_rFrame.m_pSurface.release());
+m_rFrame.m_pSurface.reset(pSurface);
+
+const int nMinWidth = qMin(nOldWidth, nWidth);
+const int nMinHeight = qMin(nOldHeight, nHeight);
+SalTwoRect rect(0, 0, nMinWidth, nMinHeight, 0, 0, nMinWidth, 
nMinHeight);
+m_rFrame.m_pSvpGraphics->copySource(rect, old_surface.get());
+}
 }
 }
 else
 {
-QImage* pImage = nullptr;
-
-if (m_rFrame.m_pQImage)
-pImage = new QImage(m_rFrame.m_pQImage->copy(0, 0, nWidth, 
nHeight));
-else
+if (m_rFrame.m_pQImage && m_rFrame.m_pQImage->size() != QSize(nWidth, 
nHeight))
 {
-pImage = new QImage(nWidth, nHeight, Qt_DefaultFormat32);
-pImage->fill(Qt::transparent);
+QImage* pImage = new QImage(m_rFrame.m_pQImage->copy(0, 0, nWidth, 
nHeight));
+m_rFrame.m_pQtGraphics->ChangeQImage(pImage);
+m_rFrame.m_pQImage.reset(pImage);
 }
-
-m_rFrame.m_pQtGraphics->ChangeQImage(pImage);
-m_rFrame.m_pQImage.reset(pImage);
 }
 
 m_rFrame.CallCallback(SalEvent::Resize, nullptr);


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

2022-05-31 Thread Eike Rathke (via logerrit)
 sc/source/ui/view/tabview3.cxx |7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

New commits:
commit c30306ad19f7ba022628f4f88ba5b92b8a1af402
Author: Eike Rathke 
AuthorDate: Tue May 31 22:48:28 2022 +0200
Commit: Eike Rathke 
CommitDate: Wed Jun 1 00:08:25 2022 +0200

MoveCursorAbs: it is cheaper to check for marks first and then formula mode

... so repeated travelling with cell cursor will be less affected.

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

diff --git a/sc/source/ui/view/tabview3.cxx b/sc/source/ui/view/tabview3.cxx
index b261f04e0119..ae960b0a8c1f 100644
--- a/sc/source/ui/view/tabview3.cxx
+++ b/sc/source/ui/view/tabview3.cxx
@@ -1236,13 +1236,14 @@ void ScTabView::MoveCursorAbs( SCCOL nCurX, SCROW 
nCurY, ScFollowMode eMode,
 }
 else
 {
-if (!bShift && !SC_MOD()->IsFormulaMode())
+if (!bShift)
 {
 // Remove all marked data on cursor movement unless the Shift is
-// locked or while editing a formula.
+// locked or while editing a formula. It is cheaper to check for
+// marks first and then formula mode.
 ScMarkData& rMark = aViewData.GetMarkData();
 bool bMarked = rMark.IsMarked() || rMark.IsMultiMarked();
-if (bMarked)
+if (bMarked && !SC_MOD()->IsFormulaMode())
 {
 rMark.ResetMark();
 DoneBlockMode();


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

2022-05-31 Thread Jan-Marek Glogowski (via logerrit)
 vcl/win/window/salmenu.cxx |   30 ++
 1 file changed, 2 insertions(+), 28 deletions(-)

New commits:
commit 483f3125ecd4744cbcc2f8fd3cdf243d81a601ff
Author: Jan-Marek Glogowski 
AuthorDate: Tue May 31 21:14:00 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Tue May 31 22:45:40 2022 +0200

WIN drop effectively empty ImplDrawMenuBar

.. as VisibleMenuBar() just always returns false.

Change-Id: Ie793d84d57970cbf08b81b6ec0350b9b5fd4192c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135210
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/vcl/win/window/salmenu.cxx b/vcl/win/window/salmenu.cxx
index 6f8dc8bff283..91a15284aeb5 100644
--- a/vcl/win/window/salmenu.cxx
+++ b/vcl/win/window/salmenu.cxx
@@ -96,19 +96,6 @@ std::unique_ptr WinSalInstance::CreateMenuItem( 
const SalItemParams
 return std::unique_ptr(pSalMenuItem);
 }
 
-static void ImplDrawMenuBar( SalMenu *pMenu )
-{
-if( pMenu->VisibleMenuBar() )
-{
-// redrawing the menubar all the time actually seems to be unnecessary 
(it just flickers)
-/*
-WinSalMenu *pMenuBar = ImplFindMenuBar( pMenu );
-if( pMenuBar && pMenuBar->mhWnd )
-::DrawMenuBar( pMenuBar->mhWnd );
-*/
-}
-}
-
 /*
  * WinSalMenu
  */
@@ -166,10 +153,7 @@ void WinSalMenu::InsertItem( SalMenuItem* pSalMenuItem, 
unsigned nPos )
 if(!::InsertMenuItemW( mhMenu, nPos, TRUE, &pWItem->mInfo ))
 myerr = GetLastError();
 else
-{
 pWItem->mpSalMenu = this;
-ImplDrawMenuBar( this );
-}
 }
 }
 
@@ -194,7 +178,6 @@ void WinSalMenu::RemoveItem( unsigned nPos )
 {
 if( pSalMenuItem )
 pSalMenuItem->mpSalMenu = nullptr;
-ImplDrawMenuBar( this );
 }
 }
 }
@@ -220,7 +203,6 @@ static void ImplRemoveItemById( WinSalMenu *pSalMenu, 
unsigned nItemId )
 {
 if( pSalMenuItem )
 pSalMenuItem->mpSalMenu = nullptr;
-ImplDrawMenuBar( pSalMenu );
 }
 }
 
@@ -247,21 +229,17 @@ void WinSalMenu::SetSubMenu( SalMenuItem* pSalMenuItem, 
SalMenu* pSubMenu, unsig
 
 if(!::SetMenuItemInfoW( mhMenu, nPos, TRUE, &pWMenuItem->mInfo ) )
 myerr = GetLastError();
-else
-ImplDrawMenuBar( this );
 }
 }
 
 void WinSalMenu::CheckItem( unsigned nPos, bool bCheck )
 {
-if( static_cast( -1 ) != ::CheckMenuItem( mhMenu, nPos, 
MF_BYPOSITION|(bCheck ? MF_CHECKED : MF_UNCHECKED) ) )
-ImplDrawMenuBar( this );
+::CheckMenuItem(mhMenu, nPos, MF_BYPOSITION|(bCheck ? MF_CHECKED : 
MF_UNCHECKED));
 }
 
 void WinSalMenu::EnableItem( unsigned nPos, bool bEnable )
 {
-if( -1 != ::EnableMenuItem( mhMenu, nPos, MF_BYPOSITION|(bEnable ? 
MF_ENABLED : (MF_DISABLED|MF_GRAYED) ) ) )
-ImplDrawMenuBar( this );
+::EnableMenuItem(mhMenu, nPos, MF_BYPOSITION|(bEnable ? MF_ENABLED : 
(MF_DISABLED|MF_GRAYED)));
 }
 
 void WinSalMenu::SetItemImage( unsigned /*nPos*/, SalMenuItem* pSalMenuItem, 
const Image& rImage )
@@ -298,8 +276,6 @@ void WinSalMenu::SetItemText( unsigned nPos, SalMenuItem* 
pSalMenuItem, const OU
 
 if(!::SetMenuItemInfoW( mhMenu, nPos, TRUE, &pWItem->mInfo ))
 myerr = GetLastError();
-else
-ImplDrawMenuBar( this );
 }
 }
 
@@ -323,8 +299,6 @@ void WinSalMenu::SetAccelerator( unsigned nPos, 
SalMenuItem* pSalMenuItem, const
 
 if(!::SetMenuItemInfoW( mhMenu, nPos, TRUE, &pWItem->mInfo ))
 myerr = GetLastError();
-else
-ImplDrawMenuBar( this );
 }
 }
 


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 basic/source/sbx/sbxarray.cxx |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit bd279d30025e13125e9c5736f7baa9b00484156d
Author: Stephan Bergmann 
AuthorDate: Tue May 31 20:40:55 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 22:42:34 2022 +0200

Use more appropriate index variable type

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

diff --git a/basic/source/sbx/sbxarray.cxx b/basic/source/sbx/sbxarray.cxx
index 4bd933b126ad..ec95e5e10602 100644
--- a/basic/source/sbx/sbxarray.cxx
+++ b/basic/source/sbx/sbxarray.cxx
@@ -24,6 +24,7 @@
 #include 
 #include 
 
+#include 
 #include 
 
 struct SbxVarEntry
@@ -562,7 +563,7 @@ bool SbxDimArray::StoreData( SvStream& rStrm ) const
 {
 assert(m_vDimensions.size() <= 
sal::static_int_cast(std::numeric_limits::max()));
 rStrm.WriteInt16( m_vDimensions.size() );
-for( sal_Int32 i = 1; i <= static_cast(m_vDimensions.size()); 
i++ )
+for( std::size_t i = 1; i <= m_vDimensions.size(); i++ )
 {
 sal_Int32 lb32, ub32;
 GetDim(i, lb32, ub32);


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 animations/source/animcore/animcore.cxx |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit d1cdf9a24de0d87f22e283f5cb2ed93ff6e83ee6
Author: Stephan Bergmann 
AuthorDate: Tue May 31 20:35:26 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 22:42:14 2022 +0200

Also assert that nNodeType is non-negative

...given that nNodeType aka AnimationNode::mnNodeType is later used as an 
index
into the AnimationNode::mpTypes array

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

diff --git a/animations/source/animcore/animcore.cxx 
b/animations/source/animcore/animcore.cxx
index c02ba3ca2878..737da604a594 100644
--- a/animations/source/animcore/animcore.cxx
+++ b/animations/source/animcore/animcore.cxx
@@ -55,6 +55,7 @@
 
 #include 
 
+#include 
 #include 
 #include 
 #include 
@@ -446,7 +447,7 @@ AnimationNode::AnimationNode( sal_Int16 nNodeType )
 mnIterateType( css::presentation::ShapeAnimationSubType::AS_WHOLE ),
 mfIterateInterval(0.0)
 {
-assert(nNodeType < int(mpTypes.size()));
+assert(nNodeType >= 0 && o3tl::make_unsigned(nNodeType) < mpTypes.size());
 }
 
 AnimationNode::AnimationNode( const AnimationNode& rNode )


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

2022-05-31 Thread Eike Rathke (via logerrit)
 sc/source/ui/view/tabview3.cxx |5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

New commits:
commit 93a3f142bf46eb7b4309cd168354fe2a971e196d
Author: Eike Rathke 
AuthorDate: Tue May 31 20:25:37 2022 +0200
Commit: Eike Rathke 
CommitDate: Tue May 31 22:40:23 2022 +0200

MoveCursorAbs: do not reset selection marks while editing a formula

i.e. when moving the cursor for reference selection, so an
existing mark is preserved for Alt+Enter or Shift+Ctrl+Enter.

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

diff --git a/sc/source/ui/view/tabview3.cxx b/sc/source/ui/view/tabview3.cxx
index 5c706bab5f11..b261f04e0119 100644
--- a/sc/source/ui/view/tabview3.cxx
+++ b/sc/source/ui/view/tabview3.cxx
@@ -1236,9 +1236,10 @@ void ScTabView::MoveCursorAbs( SCCOL nCurX, SCROW nCurY, 
ScFollowMode eMode,
 }
 else
 {
-if (!bShift)
+if (!bShift && !SC_MOD()->IsFormulaMode())
 {
-// Remove all marked data on cursor movement unless the Shift is 
locked.
+// Remove all marked data on cursor movement unless the Shift is
+// locked or while editing a formula.
 ScMarkData& rMark = aViewData.GetMarkData();
 bool bMarked = rMark.IsMarked() || rMark.IsMultiMarked();
 if (bMarked)


[Libreoffice-commits] core.git: compilerplugins/clang vcl/inc vcl/jsdialog

2022-05-31 Thread Szymon Kłos (via logerrit)
 compilerplugins/clang/badstatics.cxx |1 
 vcl/inc/jsdialog/jsdialogbuilder.hxx |9 +
 vcl/jsdialog/jsdialogbuilder.cxx |   56 +--
 3 files changed, 64 insertions(+), 2 deletions(-)

New commits:
commit 09847cdbd435c1f6ac8c0ac0256f8be488edd194
Author: Szymon Kłos 
AuthorDate: Wed May 18 23:28:30 2022 +0200
Commit: Szymon Kłos 
CommitDate: Tue May 31 22:09:42 2022 +0200

jsdialog: introduce popup management

Popup windows are managed by vcl (some moving between parents
happens on show/hide popup).

We need to access correct popup window to correctly close
popup in LOK. So remember popup instances.

Change-Id: I9e1ba18ded5a1bf675f95bd7178043eebd9bbd5a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134576
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Mert Tumer 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134675
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135197
Tested-by: Jenkins
Reviewed-by: Szymon Kłos 

diff --git a/compilerplugins/clang/badstatics.cxx 
b/compilerplugins/clang/badstatics.cxx
index 9539559f699e..3b80278a2f4f 100644
--- a/compilerplugins/clang/badstatics.cxx
+++ b/compilerplugins/clang/badstatics.cxx
@@ -208,6 +208,7 @@ public:
 .Class("ScDocument").GlobalNamespace()) // not owning
 || name == "s_aLOKWindowsMap" // LOK only, guarded by assert, 
and LOK never tries to perform a VCL cleanup
 || name == "s_aLOKWeldBuildersMap" // LOK only, similar case 
as above
+|| name == "s_aLOKPopupsMap" // LOK only, similar case as above
 || name == "m_pNotebookBarWeldedWrapper" // LOK only, warning 
about map's key, no VCL cleanup performed
 || name == "gStaticManager" // vcl/source/graphic/Manager.cxx 
- stores non-owning pointers
 || name == "aThreadedInterpreterPool"// 
ScInterpreterContext(Pool), not owning
diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index 0b0289240bf6..a25aeac55c10 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -304,6 +304,11 @@ public:
weld::Widget* pWidget);
 static void RemoveWindowWidget(const std::string& nWindowId);
 
+// we need to remember original popup window to close it properly (its 
handled by vcl)
+static void RememberPopup(const std::string& nWindowId, 
VclPtr pWidget);
+static void ForgetPopup(const std::string& nWindowId);
+static vcl::Window* FindPopup(const std::string& nWindowId);
+
 private:
 const std::string& GetTypeOfJSON() const;
 VclPtr& GetContentWindow();
@@ -700,6 +705,8 @@ public:
 
 class JSPopover : public JSWidget
 {
+vcl::LOKWindowId mnWindowId;
+
 public:
 JSPopover(JSDialogSender* pSender, DockingWindow* pPopover, 
SalInstanceBuilder* pBuilder,
   bool bTakeOwnership);
@@ -707,6 +714,8 @@ public:
 virtual void popup_at_rect(weld::Widget* pParent, const tools::Rectangle& 
rRect,
weld::Placement ePlace = 
weld::Placement::Under) override;
 virtual void popdown() override;
+
+void set_window_id(vcl::LOKWindowId nWindowId) { mnWindowId = nWindowId; }
 };
 
 class JSBox : public JSWidget
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index b1ca111a07f7..3648d33b3ebc 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -27,6 +27,14 @@
 #include 
 #include 
 
+static std::map& GetLOKPopupsMap()
+{
+// Map to remember the LOKWindowId <-> vcl popup binding.
+static std::map s_aLOKPopupsMap;
+
+return s_aLOKPopupsMap;
+}
+
 namespace
 {
 void response_help(vcl::Window* pWindow)
@@ -670,6 +678,8 @@ JSInstanceBuilder::~JSInstanceBuilder()
   [it](std::string& sId) { 
it->second.erase(sId.c_str()); });
 }
 }
+
+GetLOKPopupsMap().erase(std::to_string(m_nWindowId));
 }
 
 std::map& JSInstanceBuilder::GetLOKWeldWidgetsMap()
@@ -762,6 +772,28 @@ void JSInstanceBuilder::RemoveWindowWidget(const 
std::string& nWindowId)
 }
 }
 
+void JSInstanceBuilder::RememberPopup(const std::string& nWindowId, 
VclPtr pWidget)
+{
+GetLOKPopupsMap()[nWindowId] = pWidget;
+}
+
+void JSInstanceBuilder::ForgetPopup(const std::string& nWindowId)
+{
+auto it = GetLOKPopupsMap().find(nWindowId);
+if (it != GetLOKPopupsMap().end())
+GetLOKPopupsMap().erase(it);
+}
+
+vcl::Window* JSInstanceBuilder::FindPopup(const std::string& nWindowId)
+{
+const auto it = GetLOKPopupsMap().find(nWindowId);
+
+if (it != GetLOKPopupsMap().end())
+return it->second;
+
+return nullptr;
+}
+
 const std::string& JSInstanceBuilder::GetTypeOfJSON() const { return 
m_sTypeOfJSON; }
 
 VclPtr& JSInstanceBuilder::GetContentWindow()
@@ -1048,8 +1080,9 @@ std::unique_ptr 
JSInst

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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 basic/source/classes/image.cxx |4 ++--
 basic/source/inc/image.hxx |3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)

New commits:
commit b19a2dfafa366f5fea1b70a1bae2d39a76a54a8e
Author: Stephan Bergmann 
AuthorDate: Tue May 31 20:39:43 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 22:03:42 2022 +0200

Use more appropriate type for SbiImage::nStringIdx

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

diff --git a/basic/source/classes/image.cxx b/basic/source/classes/image.cxx
index 229dc8058518..677e0a68c8f1 100644
--- a/basic/source/classes/image.cxx
+++ b/basic/source/classes/image.cxx
@@ -578,7 +578,7 @@ void SbiImage::MakeStrings( short nSize )
 // growing in 1K-Steps
 void SbiImage::AddString( const OUString& r )
 {
-if( nStringIdx >= short(mvStringOffsets.size()) )
+if( nStringIdx >= mvStringOffsets.size() )
 {
 bError = true;
 }
@@ -606,7 +606,7 @@ void SbiImage::AddString( const OUString& r )
 memcpy( pStrings.get() + nStringOff, r.getStr(), len * sizeof( 
sal_Unicode ) );
 nStringOff = nStringOff + len;
 // Last String? The update the size of the buffer
-if( nStringIdx >= short(mvStringOffsets.size()) )
+if( nStringIdx >= mvStringOffsets.size() )
 {
 nStringSize = nStringOff;
 }
diff --git a/basic/source/inc/image.hxx b/basic/source/inc/image.hxx
index b33009c1e029..4bd4201a46f9 100644
--- a/basic/source/inc/image.hxx
+++ b/basic/source/inc/image.hxx
@@ -23,6 +23,7 @@
 #include 
 #include "filefmt.hxx"
 #include 
+#include 
 #include 
 
 // This class reads in the image that's been produced by the compiler
@@ -56,7 +57,7 @@ class SbiImage {
 sal_uInt16 nDimBase;// OPTION BASE value
 rtl_TextEncoding eCharSet;
 // temporary management-variable:
-short  nStringIdx;
+std::size_tnStringIdx;
 sal_uInt32 nStringOff;  // current Pos in the stringbuffer
 // routines for the compiler:
 void MakeStrings( short );  // establish StringPool


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 slideshow/source/engine/animationnodes/basecontainernode.cxx |7 ---
 slideshow/source/engine/shapes/appletshape.cxx   |7 ---
 slideshow/source/engine/shapes/backgroundshape.cxx   |7 ---
 slideshow/source/engine/shapes/drawshape.cxx |7 ---
 slideshow/source/engine/shapes/mediashape.cxx|7 ---
 5 files changed, 20 insertions(+), 15 deletions(-)

New commits:
commit 4c60697daaecc8be0a00e900ba1b4b62713e43df
Author: Stephan Bergmann 
AuthorDate: Tue May 31 20:47:59 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 22:03:22 2022 +0200

The return value of std::count_if is guaranteed to be non-negative

...so use o3tl::make_unsigned when comparing it against an expression of
unsigned integer type, instead of casting that expression to a signed type

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

diff --git a/slideshow/source/engine/animationnodes/basecontainernode.cxx 
b/slideshow/source/engine/animationnodes/basecontainernode.cxx
index cde434f3d7bd..709f5392ac8a 100644
--- a/slideshow/source/engine/animationnodes/basecontainernode.cxx
+++ b/slideshow/source/engine/animationnodes/basecontainernode.cxx
@@ -24,6 +24,7 @@
 #include 
 #include "nodetools.hxx"
 #include 
+#include 
 #include 
 
 #include 
@@ -80,10 +81,10 @@ bool BaseContainerNode::init_children()
 mnFinishedChildren = 0;
 
 // initialize all children
-return (std::count_if(
+return (o3tl::make_unsigned(std::count_if(
 maChildren.begin(), maChildren.end(),
-std::mem_fn(&AnimationNode::init) ) ==
-static_cast(maChildren.size()));
+std::mem_fn(&AnimationNode::init) )) ==
+maChildren.size());
 }
 
 void BaseContainerNode::deactivate_st( NodeState eDestState )
diff --git a/slideshow/source/engine/shapes/appletshape.cxx 
b/slideshow/source/engine/shapes/appletshape.cxx
index 102dc6aaf3f4..ba7c6243b30b 100644
--- a/slideshow/source/engine/shapes/appletshape.cxx
+++ b/slideshow/source/engine/shapes/appletshape.cxx
@@ -23,6 +23,7 @@
 #include "viewappletshape.hxx"
 #include 
 
+#include 
 #include 
 
 #include 
@@ -210,12 +211,12 @@ namespace slideshow::internal
 bool AppletShape::implRender( const ::basegfx::B2DRange& rCurrBounds ) 
const
 {
 // redraw all view shapes, by calling their update() method
-if( ::std::count_if( maViewAppletShapes.begin(),
+if( o3tl::make_unsigned(::std::count_if( 
maViewAppletShapes.begin(),
  maViewAppletShapes.end(),
  [&rCurrBounds]
  ( const ViewAppletShapeSharedPtr& pShape )
- { return pShape->render( rCurrBounds ); } )
-!= 
static_cast(maViewAppletShapes.size()) )
+ { return pShape->render( rCurrBounds ); } ))
+!= maViewAppletShapes.size() )
 {
 // at least one of the ViewShape::update() calls did return
 // false - update failed on at least one ViewLayer
diff --git a/slideshow/source/engine/shapes/backgroundshape.cxx 
b/slideshow/source/engine/shapes/backgroundshape.cxx
index b107fe4af038..d304b9f901e6 100644
--- a/slideshow/source/engine/shapes/backgroundshape.cxx
+++ b/slideshow/source/engine/shapes/backgroundshape.cxx
@@ -21,6 +21,7 @@
 #include 
 
 #include 
+#include 
 #include 
 
 #include 
@@ -258,11 +259,11 @@ namespace slideshow::internal
 }
 
 // redraw all view shapes, by calling their render() method
-if( ::std::count_if( maViewShapes.begin(),
+if( o3tl::make_unsigned(::std::count_if( maViewShapes.begin(),
  maViewShapes.end(),
  [this]( const ViewBackgroundShapeSharedPtr& 
pBgShape )
- { return pBgShape->render( this->mpMtf ); } )
-!= 
static_cast(maViewShapes.size()) )
+ { return pBgShape->render( this->mpMtf ); } ))
+!= maViewShapes.size() )
 {
 // at least one of the ViewBackgroundShape::render() calls did 
return
 // false - update failed on at least one ViewLayer
diff --git a/slideshow/source/engine/shapes/drawshape.cxx 
b/slideshow/source/engine/shapes/drawshape.cxx
index f8e03ebff36f..22b65bf28e21 100644
--- a/slideshow/source/engine/shapes/drawshape.cxx
+++ b/slideshow/source/engine/shapes/drawshape.cxx
@@ -21,6 +21,7 @@
 
 #include 
 #include 
+#include 
 
 #include 
 #include 
@@ -146,15 +147,15 @@ namespace slideshow::internal
 // redraw all view shapes, by calling their update() method
 ViewShape::Ren

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

2022-05-31 Thread Noel Grandin (via logerrit)
 drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx  |   18 +-
 include/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx |2 -
 2 files changed, 3 insertions(+), 17 deletions(-)

New commits:
commit a77b8b75f015fba74e2553c3cff58fcba298b9ed
Author: Noel Grandin 
AuthorDate: Tue May 31 18:25:35 2022 +0200
Commit: Noel Grandin 
CommitDate: Tue May 31 21:18:18 2022 +0200

elide temporary vector in TextDecoratedPortionPrimitive2D

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

diff --git a/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx 
b/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx
index f92529fe50d7..0db26fbeb28d 100644
--- a/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx
@@ -30,7 +30,7 @@
 namespace drawinglayer::primitive2d
 {
 void TextDecoratedPortionPrimitive2D::impCreateGeometryContent(
-std::vector< Primitive2DReference >& rTarget,
+Primitive2DContainer& rTarget,
 basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose const & 
rDecTrans,
 const OUString& rText,
 sal_Int32 nTextPosition,
@@ -170,7 +170,6 @@ namespace drawinglayer::primitive2d
 // decompose local entity
 }
 }
-std::vector< Primitive2DReference > aNewPrimitives;
 basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose 
aDecTrans(getTextTransform());
 Primitive2DContainer aRetval;
 
@@ -190,20 +189,7 @@ namespace drawinglayer::primitive2d
 getFontAttribute().getBiDiStrong());
 
 // handle as one word
-impCreateGeometryContent(aNewPrimitives, aDecTrans, getText(), 
getTextPosition(), getTextLength(), getDXArray(), aNewFontAttribute);
-
-// convert to Primitive2DSequence
-const sal_uInt32 nMemberCount(aNewPrimitives.size());
-
-if(nMemberCount)
-{
-aRetval.resize(nMemberCount);
-
-for(sal_uInt32 a(0); a < nMemberCount; a++)
-{
-aRetval[a] = aNewPrimitives[a];
-}
-}
+impCreateGeometryContent(aRetval, aDecTrans, getText(), 
getTextPosition(), getTextLength(), getDXArray(), aNewFontAttribute);
 
 // Handle Shadow, Outline and TextRelief
 if(!aRetval.empty())
diff --git a/include/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx 
b/include/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
index 8ff500b77efe..1a4d821c7e60 100644
--- a/include/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
@@ -57,7 +57,7 @@ namespace drawinglayer::primitive2d
 
 /// helper methods
 void impCreateGeometryContent(
-std::vector< Primitive2DReference >& rTarget,
+Primitive2DContainer& rTarget,
 basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose const & 
rDecTrans,
 const OUString& rText,
 sal_Int32 nTextPosition,


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 include/vcl/glyphitemcache.hxx  |2 +-
 vcl/source/gdi/impglyphitem.cxx |2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

New commits:
commit e1bac51546138aa5b138f73fd61430cb8582b9c6
Author: Stephan Bergmann 
AuthorDate: Tue May 31 16:50:34 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 20:32:37 2022 +0200

clang-cl wants VCL_DLLPUBLIC SalLayoutGlyphsCache::clear not to be inline

...to avoid

> [build DEP] LNK:CppunitTest/test_vcl_text.dll.d
> complextext.o : error LNK2019: unresolved external symbol "public: 
unsigned __int64 __cdecl SalLayoutGlyphsCache::GlyphsCost::operator()(class 
SalLayoutGlyphs const &)const " 
(??RGlyphsCost@SalLayoutGlyphsCache@@QEBA_KAEBVSalLayoutGlyphs@@@Z) referenced 
in function "private: void __cdecl o3tl::lru_map,struct 
SalLayoutGlyphsCache::GlyphsCost>::removeSize(class SalLayoutGlyphs const &)" 
(?removeSize@?$lru_map@UCachedGlyphsKey@SalLayoutGlyphsCache@@VSalLayoutGlyphs@@UCachedGlyphsHash@2@U?$equal_to@UCachedGlyphsKey@SalLayoutGlyphsCache@@@std@@UGlyphsCost@2@@o3tl@@AEAAXAEBVSalLayoutGlyphs@@@Z)

(Not sure why MSVC itself doesn't complain; maybe LLVM 15 trunk clang-cl
accidentally diverges from the MSVC semantics here.)

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

diff --git a/include/vcl/glyphitemcache.hxx b/include/vcl/glyphitemcache.hxx
index 28c38d42ed07..30921e6920a0 100644
--- a/include/vcl/glyphitemcache.hxx
+++ b/include/vcl/glyphitemcache.hxx
@@ -55,7 +55,7 @@ public:
const OUString& text, sal_Int32 
nIndex, sal_Int32 nLen,
tools::Long nLogicWidth = 0,
const vcl::text::TextLayoutCache* 
layoutCache = nullptr);
-void clear() { mCachedGlyphs.clear(); }
+void clear();
 
 static SalLayoutGlyphsCache* self();
 SalLayoutGlyphsCache(int size) // needs to be public for 
vcl::DeleteOnDeinit
diff --git a/vcl/source/gdi/impglyphitem.cxx b/vcl/source/gdi/impglyphitem.cxx
index 39c01699ea4e..124ae16f2e20 100644
--- a/vcl/source/gdi/impglyphitem.cxx
+++ b/vcl/source/gdi/impglyphitem.cxx
@@ -230,6 +230,8 @@ bool SalLayoutGlyphsImpl::IsValid() const
 return true;
 }
 
+void SalLayoutGlyphsCache::clear() { mCachedGlyphs.clear(); }
+
 SalLayoutGlyphsCache* SalLayoutGlyphsCache::self()
 {
 static vcl::DeleteOnDeinit cache(


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

2022-05-31 Thread Andreas Heinisch (via logerrit)
 basic/qa/cppunit/test_compiler_checks.cxx |   40 ++
 basic/source/comp/scanner.cxx |2 +
 2 files changed, 42 insertions(+)

New commits:
commit 73e46d86335e60f1b11a91b23522402cd34466a8
Author: Andreas Heinisch 
AuthorDate: Wed May 25 12:42:23 2022 +0200
Commit: Xisco Fauli 
CommitDate: Tue May 31 19:55:38 2022 +0200

tdf#149157 - Break multiline continuation in a comment after a new line

Change-Id: I3dd875152a6f2cfafb67f13f597c36f01a4759b4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135018
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch 
(cherry picked from commit b94275f6d2cb4dc28d1563fd7994251042b6d51a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135164
Reviewed-by: Xisco Fauli 

diff --git a/basic/qa/cppunit/test_compiler_checks.cxx 
b/basic/qa/cppunit/test_compiler_checks.cxx
index 24b380ed2a9a..e2882f3f694c 100644
--- a/basic/qa/cppunit/test_compiler_checks.cxx
+++ b/basic/qa/cppunit/test_compiler_checks.cxx
@@ -33,4 +33,44 @@ CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, 
testDoubleArgument)
 CPPUNIT_ASSERT_EQUAL(ERRCODE_BASIC_VAR_DEFINED, 
aMacro.getError().StripDynamic());
 }
 
+CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, testTdf149157)
+{
+MacroSnippet aMacro("Function extentComment() As Integer\n"
+"  ' _\n"
+"  If Not extentComment Then\n"
+" extentComment = 1\n"
+"  End If\n"
+"End Function\n");
+aMacro.Compile();
+CPPUNIT_ASSERT(!aMacro.HasError());
+}
+
+CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, testTdf149157_compatible)
+{
+MacroSnippet aMacro("Option Compatible\n"
+"Function extentComment() As Integer\n"
+"  ' _\n"
+"\n"
+"  If Not extentComment Then\n"
+" extentComment = 1\n"
+"  End If\n"
+"End Function\n");
+aMacro.Compile();
+CPPUNIT_ASSERT(!aMacro.HasError());
+}
+
+CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, testTdf149157_vba)
+{
+MacroSnippet aMacro("Option VBASupport 1\n"
+"Function extentComment() As Integer\n"
+"  ' _\n"
+"\n"
+"  If Not extentComment Then\n"
+" extentComment = 1\n"
+"  End If\n"
+"End Function\n");
+aMacro.Compile();
+CPPUNIT_ASSERT(!aMacro.HasError());
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s 
cinkeys+=0=break: */
diff --git a/basic/source/comp/scanner.cxx b/basic/source/comp/scanner.cxx
index a0d9b9ab6c76..d391e7b6dff2 100644
--- a/basic/source/comp/scanner.cxx
+++ b/basic/source/comp/scanner.cxx
@@ -701,6 +701,8 @@ eoln:
 aSym = "\n";
 nColLock = 0;
 bClosingUnderscore = false;
+// tdf#149157 - break multiline continuation in a comment after a new 
line
+bPrevLineExtentsComment = false;
 return true;
 }
 }


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

2022-05-31 Thread Szymon Kłos (via logerrit)
 desktop/source/lib/init.cxx |   17 -
 1 file changed, 16 insertions(+), 1 deletion(-)

New commits:
commit 81df11b1e5af610133874d925895a07364bc
Author: Szymon Kłos 
AuthorDate: Wed Apr 20 10:33:03 2022 +0200
Commit: Szymon Kłos 
CommitDate: Tue May 31 19:18:04 2022 +0200

lok: don't render active textbox on all slides

when we render tiles for slide previews we use
viewid = 0 (first session)

so when first session edits any textbox and in other
session we request slide previews (eg. after new slide was added)
then we received tile with additional text from the first session

this is caused by:
commit bee4ff508a456a1552aacdf6fc838b8b7cffb9ec
desktop lok: avoid unnecessary setPart() in paintPartTile()

If possible, switch views, not parts, that way started Impress text
edits don't end as a side-effect.

but later there was a fix which doesn't trigger closing of texbox
editing when switching parts:

commit ce7bf351972bbfd64ca99e8d2fb4c5f77591c9e0
impress: don't exit textbox editing when new slide was added

so we don't need that in all cases...
to fix issue described above: still switch views instead of parts
when possible - but avoid views where editing is active

Change-Id: Ib6e66a85b9ca68d6e67e3d9cb17060aa42b85220
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133202
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Pranam Lashkari 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133650
Reviewed-by: Andras Timar 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135196
Tested-by: Jenkins

diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index ec97510b40e4..e5b0412d7cef 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -3588,6 +3588,7 @@ static void doc_paintPartTile(LibreOfficeKitDocument* 
pThis,
 int nOrigPart = 0;
 const bool isText = (doc_getDocumentType(pThis) == LOK_DOCTYPE_TEXT);
 int nViewId = nOrigViewId;
+int nLastNonEditorView = nViewId;
 if (!isText)
 {
 // Check if just switching to another view is enough, that has
@@ -3597,9 +3598,15 @@ static void doc_paintPartTile(LibreOfficeKitDocument* 
pThis,
 SfxViewShell* pViewShell = SfxViewShell::GetFirst();
 while (pViewShell)
 {
-if (pViewShell->getPart() == nPart)
+bool bIsInEdit = pViewShell->GetDrawView() &&
+pViewShell->GetDrawView()->GetTextEditOutliner();
+if (!bIsInEdit)
+nLastNonEditorView = 
pViewShell->GetViewShellId().get();
+
+if (pViewShell->getPart() == nPart && !bIsInEdit)
 {
 nViewId = pViewShell->GetViewShellId().get();
+nLastNonEditorView = nViewId;
 doc_setView(pThis, nViewId);
 break;
 }
@@ -3607,6 +3614,14 @@ static void doc_paintPartTile(LibreOfficeKitDocument* 
pThis,
 }
 }
 
+// if not found view with correct part - at least avoid rendering 
active textbox
+SfxViewShell* pCurrentViewShell = SfxViewShell::Current();
+if (pCurrentViewShell && pCurrentViewShell->GetDrawView() &&
+pCurrentViewShell->GetDrawView()->GetTextEditOutliner())
+{
+doc_setView(pThis, nLastNonEditorView);
+}
+
 nOrigPart = doc_getPart(pThis);
 if (nPart != nOrigPart)
 {


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 vbahelper/source/msforms/vbacontrol.cxx |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

New commits:
commit 3a06db0af05294e0b5db6f07daf35bec7371d4cc
Author: Stephan Bergmann 
AuthorDate: Tue May 31 15:38:29 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 19:14:49 2022 +0200

Use a range-based for loop

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

diff --git a/vbahelper/source/msforms/vbacontrol.cxx 
b/vbahelper/source/msforms/vbacontrol.cxx
index 937793c3ec23..5cbea01a4dd3 100644
--- a/vbahelper/source/msforms/vbacontrol.cxx
+++ b/vbahelper/source/msforms/vbacontrol.cxx
@@ -465,11 +465,11 @@ PointerStyles const styles[] = {
 static tools::Long lcl_loPointerToMsoPointer( PointerStyle eType )
 {
 tools::Long nRet = msforms::fmMousePointer::fmMousePointerDefault;
-for ( int i = 0; i < int(SAL_N_ELEMENTS( styles )); ++i )
+for ( auto const & i: styles )
 {
-if ( styles[ i ].loPointStyle == eType )
+if ( i.loPointStyle == eType )
 {
-nRet = styles[ i ].msoPointerStyle;
+nRet = i.msoPointerStyle;
 break;
 }
 }
@@ -479,11 +479,11 @@ static tools::Long lcl_loPointerToMsoPointer( 
PointerStyle eType )
 static PointerStyle lcl_msoPointerToLOPointer( tools::Long msoPointerStyle )
 {
 PointerStyle aPointer( PointerStyle::Arrow );
-for ( int i = 0; i < int(SAL_N_ELEMENTS( styles )); ++i )
+for ( auto const & i: styles )
 {
-if ( styles[ i ].msoPointerStyle == msoPointerStyle )
+if ( i.msoPointerStyle == msoPointerStyle )
 {
-aPointer = styles[ i ].loPointStyle;
+aPointer = i.loPointStyle;
 break;
 }
 }


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 chart2/source/controller/dialogs/DataBrowserModel.cxx |8 
 chart2/source/tools/CommonConverters.cxx  |8 
 chart2/source/view/axes/VCartesianAxis.cxx|4 ++--
 3 files changed, 10 insertions(+), 10 deletions(-)

New commits:
commit 66500b5041135dbca62f10c8b20ce000a2ae43ff
Author: Stephan Bergmann 
AuthorDate: Tue May 31 15:26:00 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 19:08:24 2022 +0200

Use some range-based for loops

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

diff --git a/chart2/source/controller/dialogs/DataBrowserModel.cxx 
b/chart2/source/controller/dialogs/DataBrowserModel.cxx
index b11411cac41b..44e1413befe0 100644
--- a/chart2/source/controller/dialogs/DataBrowserModel.cxx
+++ b/chart2/source/controller/dialogs/DataBrowserModel.cxx
@@ -791,10 +791,10 @@ void DataBrowserModel::updateFromModel()
 const std::vector< rtl::Reference< ChartType > > aChartTypes( 
coords->getChartTypes2());
 sal_Int32 nXAxisNumberFormat = 
DataSeriesHelper::getNumberFormatKeyFromAxis( nullptr, coords, 0, 0 );
 
-for( sal_Int32 nCTIdx=0; nCTIdx < 
static_cast(aChartTypes.size()); ++nCTIdx )
+for( auto const & CT: aChartTypes )
 {
-rtl::Reference< ChartType > xSeriesCnt( aChartTypes[nCTIdx] );
-OUString aRoleForDataLabelNumberFormat = 
ChartTypeHelper::getRoleOfSequenceForDataLabelNumberFormatDetection( 
aChartTypes[nCTIdx] );
+rtl::Reference< ChartType > xSeriesCnt( CT );
+OUString aRoleForDataLabelNumberFormat = 
ChartTypeHelper::getRoleOfSequenceForDataLabelNumberFormatDetection( CT );
 
 const std::vector< rtl::Reference< DataSeries > > & aSeries( 
xSeriesCnt->getDataSeries2());
 lcl_tSharedSeqVec aSharedSequences( lcl_getSharedSequences( 
aSeries ));
@@ -871,7 +871,7 @@ void DataBrowserModel::updateFromModel()
 
 m_aHeaders.emplace_back(
 dataSeries,
-aChartTypes[nCTIdx],
+CT,
 bSwapXAndYAxis,
 nHeaderStart,
 nHeaderEnd - 1 );
diff --git a/chart2/source/tools/CommonConverters.cxx 
b/chart2/source/tools/CommonConverters.cxx
index b68cd17e20c3..e10c22cc7d55 100644
--- a/chart2/source/tools/CommonConverters.cxx
+++ b/chart2/source/tools/CommonConverters.cxx
@@ -397,17 +397,17 @@ basegfx::B2DPolyPolygon PolyToB2DPolyPolygon(
 {
 basegfx::B2DPolyPolygon aRetval;
 
-for(sal_Int32 nN = 0; nN < static_cast(rPolyPolygon.size()); 
nN++)
+for(auto const & nN: rPolyPolygon)
 {
 basegfx::B2DPolygon aNewPolygon;
-sal_Int32 nInnerLength = rPolyPolygon[nN].size();
+sal_Int32 nInnerLength = nN.size();
 if(nInnerLength)
 {
 aNewPolygon.reserve(nInnerLength);
 for( sal_Int32 nM = 0; nM < nInnerLength; nM++)
 {
-auto X = 
static_cast(rPolyPolygon[nN][nM].PositionX);
-auto Y = 
static_cast(rPolyPolygon[nN][nM].PositionY);
+auto X = static_cast(nN[nM].PositionX);
+auto Y = static_cast(nN[nM].PositionY);
 aNewPolygon.append(basegfx::B2DPoint(X, Y));
 }
 // check for closed state flag
diff --git a/chart2/source/view/axes/VCartesianAxis.cxx 
b/chart2/source/view/axes/VCartesianAxis.cxx
index b14ea4e18878..0ea37f9a7848 100644
--- a/chart2/source/view/axes/VCartesianAxis.cxx
+++ b/chart2/source/view/axes/VCartesianAxis.cxx
@@ -1580,11 +1580,11 @@ sal_Int32 
VCartesianAxis::estimateMaximumAutoMainIncrementCount()
 FixedNumberFormatter 
aFixedNumberFormatterTest(m_xNumberFormatsSupplier, 
m_aAxisLabelProperties.m_nNumberFormatKey);
 OUString sPreviousValueLabel;
 sal_Int32 nSameLabel = 0;
-for (sal_Int32 nLabel = 0; nLabel < 
static_cast(m_aAllTickInfos[0].size()); ++nLabel)
+for (auto const & nLabel: m_aAllTickInfos[0])
 {
 Color nColor = COL_AUTO;
 bool bHasColor = false;
-OUString sValueLabel = 
aFixedNumberFormatterTest.getFormattedString(m_aAllTickInfos[0][nLabel].fScaledTickValue,
 nColor, bHasColor);
+OUString sValueLabel = 
aFixedNumberFormatterTest.getFormattedString(nLabel.fScaledTickValue, nColor, 
bHasColor);
 if (sValueLabel == sPreviousValueLabel)
 {
 nSameLabel++;


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 framework/source/xml/imagesdocumenthandler.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 52da30cd18990c47b5cea0e789f3d1f76c2a9e1b
Author: Stephan Bergmann 
AuthorDate: Tue May 31 15:51:09 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 19:07:51 2022 +0200

Drop unnecessary cast to int

...when iterating over the enumerators of enum Image_XML_Entry

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

diff --git a/framework/source/xml/imagesdocumenthandler.cxx 
b/framework/source/xml/imagesdocumenthandler.cxx
index 30f178416cae..ebdd5366f240 100644
--- a/framework/source/xml/imagesdocumenthandler.cxx
+++ b/framework/source/xml/imagesdocumenthandler.cxx
@@ -98,7 +98,7 @@ OReadImagesDocumentHandler::OReadImagesDocumentHandler( 
ImageItemDescriptorList&
 m_rImageList( rItems )
 {
 // create hash map to speed up lookup
-for ( int i = 0; i < int(IMG_XML_ENTRY_COUNT); i++ )
+for ( int i = 0; i < IMG_XML_ENTRY_COUNT; i++ )
 {
 OUStringBuffer temp( 20 );
 


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 sw/source/ui/vba/vbafont.cxx |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 5dd2ef5c783d9079bc70e7b07aea0178a31f4fc2
Author: Stephan Bergmann 
AuthorDate: Tue May 31 15:37:30 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 18:52:21 2022 +0200

Use a range-based for loop

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

diff --git a/sw/source/ui/vba/vbafont.cxx b/sw/source/ui/vba/vbafont.cxx
index 6a6442544a0e..c36efb4c471f 100644
--- a/sw/source/ui/vba/vbafont.cxx
+++ b/sw/source/ui/vba/vbafont.cxx
@@ -73,10 +73,10 @@ class UnderLineMapper
 private:
 UnderLineMapper()
 {
-for ( sal_Int32 index=0; index

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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 sc/qa/unit/ucalc_sort.cxx|6 +++---
 sc/source/core/data/documen7.cxx |6 +++---
 sc/source/ui/view/viewdata.cxx   |   18 +-
 3 files changed, 15 insertions(+), 15 deletions(-)

New commits:
commit 6573ade5cf0cd63ff283446822e3bc87cd8a749b
Author: Stephan Bergmann 
AuthorDate: Tue May 31 15:36:24 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 18:51:58 2022 +0200

Use some range-based for loops

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

diff --git a/sc/qa/unit/ucalc_sort.cxx b/sc/qa/unit/ucalc_sort.cxx
index bdf2e82d2932..27839c28e1d0 100644
--- a/sc/qa/unit/ucalc_sort.cxx
+++ b/sc/qa/unit/ucalc_sort.cxx
@@ -573,9 +573,9 @@ void TestSort::testSortInFormulaGroup()
 
 m_pDoc->InsertTab(0, "sorttest");
 
-for ( SCROW i = 0; i < SCROW(SAL_N_ELEMENTS( aEntries )); ++i )
-m_pDoc->SetString( aEntries[i].nCol, aEntries[i].nRow, 0,
-   OUString::createFromAscii( aEntries[i].pData) );
+for ( auto const & i: aEntries )
+m_pDoc->SetString( i.nCol, i.nRow, 0,
+   OUString::createFromAscii( i.pData) );
 
 ScSortParam aSortData;
 aSortData.nCol1 = 0;
diff --git a/sc/source/core/data/documen7.cxx b/sc/source/core/data/documen7.cxx
index 28941db7c6d9..61f6b68f0543 100644
--- a/sc/source/core/data/documen7.cxx
+++ b/sc/source/core/data/documen7.cxx
@@ -588,9 +588,9 @@ void ScDocument::TrackFormulas( SfxHintId nHintId )
 void ScDocument::StartAllListeners()
 {
 sc::StartListeningContext aCxt(*this);
-for ( SCTAB i = 0; i < static_cast(maTabs.size()); ++i )
-if ( maTabs[i] )
-maTabs[i]->StartListeners(aCxt, true);
+for ( auto const & i: maTabs )
+if ( i )
+i->StartListeners(aCxt, true);
 }
 
 void ScDocument::UpdateBroadcastAreas( UpdateRefMode eUpdateRefMode,
diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx
index ac31e522ac79..88d57f106a3b 100644
--- a/sc/source/ui/view/viewdata.cxx
+++ b/sc/source/ui/view/viewdata.cxx
@@ -1004,10 +1004,10 @@ void ScViewData::SetZoomType( SvxZoomType eNew, 
std::vector< SCTAB >& tabs )
 
 if ( bAll )
 {
-for ( SCTAB i = 0; i < static_cast(maTabData.size()); ++i )
+for ( auto & i: maTabData )
 {
-if ( maTabData[i] )
-maTabData[i]->eZoomType = eNew;
+if ( i )
+i->eZoomType = eNew;
 }
 eDefZoomType = eNew;
 }
@@ -1046,19 +1046,19 @@ void ScViewData::SetZoom( const Fraction& rNewX, const 
Fraction& rNewY, std::vec
 
 if ( bAll )
 {
-for ( SCTAB i = 0; i < static_cast(maTabData.size()); ++i )
+for ( auto & i: maTabData )
 {
-if ( maTabData[i] )
+if ( i )
 {
 if ( bPagebreak )
 {
-maTabData[i]->aPageZoomX = rNewX;
-maTabData[i]->aPageZoomY = rNewY;
+i->aPageZoomX = rNewX;
+i->aPageZoomY = rNewY;
 }
 else
 {
-maTabData[i]->aZoomX = rNewX;
-maTabData[i]->aZoomY = rNewY;
+i->aZoomX = rNewX;
+i->aZoomY = rNewY;
 }
 }
 }


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 cui/source/options/fontsubs.cxx |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 12348430e0139b4f2e72984e8a1619baca842df6
Author: Stephan Bergmann 
AuthorDate: Tue May 31 15:29:53 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 18:51:39 2022 +0200

Use a range-based for loop

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

diff --git a/cui/source/options/fontsubs.cxx b/cui/source/options/fontsubs.cxx
index 67a34dec489e..b5c98b76663b 100644
--- a/cui/source/options/fontsubs.cxx
+++ b/cui/source/options/fontsubs.cxx
@@ -204,10 +204,10 @@ void  SvxFontSubstTabPage::Reset( const SfxItemSet* )
 
 std::vector aFontSubs = 
svtools::GetFontSubstitutions();
 std::unique_ptr xIter(m_xCheckLB->make_iterator());
-for (sal_Int32  i = 0; i < static_cast(aFontSubs.size()); ++i)
+for (auto const & i: aFontSubs)
 {
 m_xCheckLB->append(xIter.get());
-const SubstitutionStruct* pSubs = &aFontSubs[i];
+const SubstitutionStruct* pSubs = &i;
 m_xCheckLB->set_toggle(*xIter, pSubs->bReplaceAlways ? TRISTATE_TRUE : 
TRISTATE_FALSE, 0);
 m_xCheckLB->set_toggle(*xIter, pSubs->bReplaceOnScreenOnly ? 
TRISTATE_TRUE : TRISTATE_FALSE, 1);
 m_xCheckLB->set_text(*xIter, pSubs->sFont, 2);


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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 uui/source/iahndl.cxx |   10 --
 uui/source/iahndl.hxx |   11 +++
 uui/source/interactionhandler.cxx |   17 +++--
 3 files changed, 10 insertions(+), 28 deletions(-)

New commits:
commit 259a1ebd879f1cfe7e9db9af97d3842fcd51f640
Author: Stephan Bergmann 
AuthorDate: Tue May 31 14:59:09 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 18:51:06 2022 +0200

Rework UUIInteractionHelper construction

...to remove the need to construct a fresh m_pImpl in
UUIInteractionHandler::initialize

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

diff --git a/uui/source/iahndl.cxx b/uui/source/iahndl.cxx
index 251a642e509f..9f6a3d34b9d6 100644
--- a/uui/source/iahndl.cxx
+++ b/uui/source/iahndl.cxx
@@ -120,16 +120,6 @@ public:
 
 } /* namespace */
 
-UUIInteractionHelper::UUIInteractionHelper(
-uno::Reference< uno::XComponentContext > const & rxContext,
-uno::Reference< awt::XWindow > const & rxWindowParam,
-const OUString & rContextParam)
-:   m_xContext(rxContext),
-m_xWindowParam(rxWindowParam),
-m_aContextParam(rContextParam)
-{
-}
-
 UUIInteractionHelper::UUIInteractionHelper(
 uno::Reference< uno::XComponentContext > const & rxContext)
 :  m_xContext(rxContext)
diff --git a/uui/source/iahndl.hxx b/uui/source/iahndl.hxx
index df2bdd054b47..a43122b7adb4 100644
--- a/uui/source/iahndl.hxx
+++ b/uui/source/iahndl.hxx
@@ -73,22 +73,20 @@ class UUIInteractionHelper
 private:
 css::uno::Reference< css::uno::XComponentContext >  m_xContext;
 css::uno::Reference< css::awt::XWindow >m_xWindowParam;
-const OUString  m_aContextParam;
+OUStringm_aContextParam;
 StringHashMap   
m_aTypedCustomHandlers;
 UUIInteractionHelper(UUIInteractionHelper const &) = delete;
 UUIInteractionHelper& operator =(UUIInteractionHelper const &) = delete;
 
 public:
-UUIInteractionHelper(
-css::uno::Reference< css::uno::XComponentContext > const & rxContext,
-css::uno::Reference< css::awt::XWindow > const & rxWindow,
-const OUString & rContextParam);
 explicit UUIInteractionHelper(
 css::uno::Reference< css::uno::XComponentContext > const & rxContext);
 
 const css::uno::Reference & GetParentWindow() const { 
return m_xWindowParam; }
 void SetParentWindow(const css::uno::Reference& 
rWindow) { m_xWindowParam = rWindow; }
 
+void setContext(OUString const & context) { m_aContextParam = context; }
+
 ~UUIInteractionHelper();
 
 bool handleRequest( css::uno::Reference< css::task::XInteractionRequest > 
const & rRequest);
@@ -103,9 +101,6 @@ public:
 const OUString& aMessage,
 std::vector< OUString > const & rArguments );
 
-const css::uno::Reference< css::uno::XComponentContext >&
-getORB() const
-{ return m_xContext; }
 private:
 bool
 handleRequest_impl(
diff --git a/uui/source/interactionhandler.cxx 
b/uui/source/interactionhandler.cxx
index b9e3f4d788a1..ea6ebf6d36a4 100644
--- a/uui/source/interactionhandler.cxx
+++ b/uui/source/interactionhandler.cxx
@@ -34,7 +34,6 @@
 #include 
 #include 
 #include 
-#include 
 
 using namespace com::sun::star;
 
@@ -47,7 +46,7 @@ class UUIInteractionHandler:
 css::beans::XPropertySet>
 {
 private:
-std::optional m_pImpl;
+UUIInteractionHelper m_pImpl;
 
 public:
 explicit UUIInteractionHandler(css::uno::Reference< 
css::uno::XComponentContext > const & rxContext);
@@ -114,7 +113,7 @@ public:
 {
 css::uno::Reference xWindow;
 rValue >>= xWindow;
-m_pImpl->SetParentWindow(xWindow);
+m_pImpl.SetParentWindow(xWindow);
 return;
 }
 throw css::beans::UnknownPropertyException(rPropertyName);
@@ -124,7 +123,7 @@ public:
 {
 if (rPropertyName == "ParentWindow")
 {
-return uno::Any(m_pImpl->GetParentWindow());
+return uno::Any(m_pImpl.GetParentWindow());
 }
 throw css::beans::UnknownPropertyException(rPropertyName);
 }
@@ -161,9 +160,6 @@ void SAL_CALL
 UUIInteractionHandler::initialize(
 uno::Sequence< uno::Any > const & rArguments)
 {
-uno::Reference xContext = m_pImpl->getORB();
-m_pImpl.reset();
-
 // The old-style InteractionHandler service supported a sequence of
 // PropertyValue, while the new-style service now uses constructors to pass
 // in Parent and Context values; for backwards compatibility, keep support
@@ -185,7 +181,8 @@ UUIInteractionHandler::initialize(
 }
 }
 
-m_pImpl.emplace( xContext, xWindow, aContext );
+m_pImpl.SetParentWindow(xWin

[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - scripting/java

2022-05-31 Thread Stephan Bergmann (via logerrit)
 scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java  
   |4 
 
scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
 |   91 --
 2 files changed, 43 insertions(+), 52 deletions(-)

New commits:
commit f167224bd9643824393039a57b3d4cd6654dbb4c
Author: Stephan Bergmann 
AuthorDate: Tue May 31 09:27:20 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 18:49:56 2022 +0200

tdf#145527 Revert "Related tdf#116767: Call URLClassLoader.close"

This reverts commit 418533f0af7cd303d559c8fb136c49e7e9fb0d79.  Turned out 
that
closing the given URLClassLoader once the script's main class has been 
loaded
prevents the script from loading further classes located next to that main
class.  So abandon the Coverity suggestion that such class loaders should be
closed promptly to avoid resource leaks.

Change-Id: I1bcf83117836cfe317eac9850d413f2c3767bd8e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135158
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 
(cherry picked from commit 2a263cbdaf16c723a93af020ebc11b3e07210242)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135165

diff --git 
a/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java 
b/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
index 0974b8874110..b5e6e3085bd2 100644
--- 
a/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
+++ 
b/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
@@ -33,7 +33,7 @@ public class ClassLoaderFactory {
 
 private ClassLoaderFactory() {}
 
-public static URLClassLoader getURLClassLoader(ScriptMetaData scriptData) {
+public static ClassLoader getURLClassLoader(ScriptMetaData scriptData) {
 ClassLoader parent = scriptData.getClass().getClassLoader();
 URL[] classPath = scriptData.getClassPath();
 LogUtils.DEBUG("Classpath has length " + classPath.length);
@@ -45,7 +45,7 @@ public class ClassLoaderFactory {
 return getURLClassLoader(parent, classPath);
 }
 
-public static URLClassLoader getURLClassLoader(final ClassLoader parent,
+public static ClassLoader getURLClassLoader(final ClassLoader parent,
 final URL[] classpath) {
 return AccessController.doPrivileged(
 new PrivilegedAction() {
diff --git 
a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
 
b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
index 63dc3169f759..eeea0d49ebe5 100644
--- 
a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
+++ 
b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
@@ -45,8 +45,6 @@ import com.sun.star.uno.Any;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.XComponentContext;
 
-import java.io.IOException;
-import java.net.URLClassLoader;
 import java.util.ArrayList;
 
 public class ScriptProviderForJava {
@@ -184,63 +182,56 @@ class ScriptImpl implements XScript {
 ScriptDescriptor scriptDesc =
 new ScriptDescriptor(metaData.getLanguageName());
 
+LogUtils.DEBUG("Classloader starting...");
+
+ClassLoader scriptLoader =
+ClassLoaderFactory.getURLClassLoader(metaData);
+
+LogUtils.DEBUG("Classloader finished...");
+
+ArrayList invocationArgList = new ArrayList();
 Object[] invocationArgs = null;
-ScriptProxy script = null;
 
-LogUtils.DEBUG("Classloader starting...");
+LogUtils.DEBUG("Parameter Mapping...");
 
-try (URLClassLoader scriptLoader = 
ClassLoaderFactory.getURLClassLoader(metaData)) {
-LogUtils.DEBUG("Classloader finished...");
+// Setup Context Object
+XScriptContext xSc =
+ScriptContext.createContext(m_xModel, m_xInvocContext,
+m_xContext, m_xMultiComponentFactory);
 
-ArrayList invocationArgList = new ArrayList();
+scriptDesc.addArgumentType(XScriptContext.class);
+invocationArgList.add(xSc);
 
-LogUtils.DEBUG("Parameter Mapping...");
+for (int i = 0; i < params.length; i++) {
+scriptDesc.addArgumentType(params[ i ].getClass());
+invocationArgList.add(params[ i ]);
+}
 
-// Setup Context Object
-XScriptContext xSc =
-ScriptContext.createContext(m_xModel, m_xInvocContext,
-m_xContext, 
m_xMultiComponentFactory);
+if (!invocationArgList.isEmpty()) {
+invocationArgs = invocationArgList.toArray();
+}
 
-scriptDesc.addArgumentType(XScriptContext.class);
-invocationArgList.add(xSc);
+LogUtils.DEBUG("ScriptProxy starting... ");
+Scr

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

2022-05-31 Thread Armin Le Grand (Allotropia) (via logerrit)
 include/svx/diagram/IDiagramHelper.hxx   |   19 +
 include/svx/sdr/primitive2d/svx_primitivetypes2d.hxx |1 
 sd/source/ui/func/fusel.cxx  |   26 +
 svx/source/diagram/IDiagramHelper.cxx|  360 ---
 4 files changed, 359 insertions(+), 47 deletions(-)

New commits:
commit 391cb44d415e2126f668ecf62387d5e98ffa6f5c
Author: Armin Le Grand (Allotropia) 
AuthorDate: Tue May 31 11:48:32 2022 +0200
Commit: Armin Le Grand 
CommitDate: Tue May 31 18:39:24 2022 +0200

Advanced Diagram support: UI visualization & simple interactions

Added visualization to show an imminently recognizable additional
visualization for DynamicDiagrams that can also be used to
show/hide the DiagramDialog by the user. It is also used as
additional drag/move handle for the object.

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

diff --git a/include/svx/diagram/IDiagramHelper.hxx 
b/include/svx/diagram/IDiagramHelper.hxx
index c0bf0539050d..e93056f70049 100644
--- a/include/svx/diagram/IDiagramHelper.hxx
+++ b/include/svx/diagram/IDiagramHelper.hxx
@@ -22,6 +22,7 @@
 #include 
 #include 
 #include 
+#include 
 
 // Forward declarations
 class SdrObjGroup;
@@ -29,6 +30,24 @@ class SdrHdlList;
 
 namespace svx { namespace diagram {
 
+// Helper class to visualize an imminently recognizable
+// additional visualization for DynamicDiagrams that can also
+// be used to show/hide the DiagramDialog by the user
+// Note: is also used as additional drag/move handle
+class SVXCORE_DLLPUBLIC DiagramFrameHdl final : public SdrHdl
+{
+// object dimensions
+basegfx::B2DHomMatrix maTransformation;
+
+// create marker for this kind
+virtual void CreateB2dIAObject() override;
+
+public:
+DiagramFrameHdl(const basegfx::B2DHomMatrix& rTransformation);
+
+static void clicked(const Point& rPnt);
+};
+
 class DiagramDataState;
 
 // Helper class to allow administer advanced Diagram related
diff --git a/include/svx/sdr/primitive2d/svx_primitivetypes2d.hxx 
b/include/svx/sdr/primitive2d/svx_primitivetypes2d.hxx
index d6cb948a6bf6..0af20f04d710 100644
--- a/include/svx/sdr/primitive2d/svx_primitivetypes2d.hxx
+++ b/include/svx/sdr/primitive2d/svx_primitivetypes2d.hxx
@@ -48,6 +48,7 @@
 #define PRIMITIVE2D_ID_SDRAUTOFITTEXTPRIMITIVE2D
(PRIMITIVE2D_ID_RANGE_SVX| 22)
 #define PRIMITIVE2D_ID_SDRCHAINEDTEXTPRIMITIVE2D
(PRIMITIVE2D_ID_RANGE_SVX| 23)
 #define PRIMITIVE2D_ID_SDRFRAMEBORDERTPRIMITIVE2D   
(PRIMITIVE2D_ID_RANGE_SVX| 24)
+#define PRIMITIVE2D_ID_OVERLAYDIAGRAMPRIMITIVE2D
(PRIMITIVE2D_ID_RANGE_SVX| 25)
 
 
 #endif // INCLUDED_SVX_SDR_PRIMITIVE2D_SVX_PRIMITIVETYPES2D_HXX
diff --git a/sd/source/ui/func/fusel.cxx b/sd/source/ui/func/fusel.cxx
index 5b5e37ab5779..bd82a7a97da0 100644
--- a/sd/source/ui/func/fusel.cxx
+++ b/sd/source/ui/func/fusel.cxx
@@ -55,6 +55,7 @@
 #include 
 
 #include 
+#include 
 
 #include 
 #include 
@@ -674,7 +675,7 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
 }
 
 mpView->SetDragWithCopy(bDragWithCopy);
-mpView->EndDragObj( mpView->IsDragWithCopy() );
+bool bWasDragged(mpView->EndDragObj( mpView->IsDragWithCopy() ));
 
 mpView->ForceMarkedToAnotherPage();
 
@@ -695,9 +696,8 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
 mpView->MarkObj(pObj,pPV);
 return true;
 }
-/**
-* Toggle between selection and rotation
-**/
+
+// check for single object selected
 SdrObject* pSingleObj = nullptr;
 
 if (mpView->GetMarkedObjectList().GetMarkCount()==1)
@@ -705,6 +705,24 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
 pSingleObj = 
mpView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
 }
 
+// Check for klick on svx::diagram::DiagramFrameHdl
+// - if we hit a SdrHdl
+// - if it was not moved
+// - if single object is selected
+//   - and it is a Diagram
+if(pHdl && !bWasDragged && nullptr != pSingleObj && 
pSingleObj->isDiagram())
+{
+svx::diagram::DiagramFrameHdl* 
pDiagramFrameHdl(dynamic_cast(pHdl));
+if(nullptr != pDiagramFrameHdl)
+{
+// let the DiagramFrameHdl decide what to do
+svx::diagram::DiagramFrameHdl::clicked(aPnt);
+}
+}
+
+/**

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

2022-05-31 Thread Andras Timar (via logerrit)
 sw/uiconfig/swriter/ui/calendar.ui |3 ---
 1 file changed, 3 deletions(-)

New commits:
commit 726019784580f67ec9e52ea063b839a7c8e389bb
Author: Andras Timar 
AuthorDate: Mon May 30 22:58:11 2022 +0200
Commit: Xisco Fauli 
CommitDate: Tue May 31 18:20:11 2022 +0200

date picker should rather show the current date instead of February 14, 2019

Change-Id: Ie449873aad40b6f02198a8a44a7eae1aaba1cfae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135148
Tested-by: Jenkins
Reviewed-by: Andras Timar 
(cherry picked from commit 090ed6199ec8ed805d645b62387bc89df01b9564)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135166
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/sw/uiconfig/swriter/ui/calendar.ui 
b/sw/uiconfig/swriter/ui/calendar.ui
index 5c8d3eb43bfd..e5355f723621 100644
--- a/sw/uiconfig/swriter/ui/calendar.ui
+++ b/sw/uiconfig/swriter/ui/calendar.ui
@@ -15,9 +15,6 @@
   
 True
 True
-2019
-1
-14
   
   
 False


[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-4' - filter/source forms/source fpicker/source include/svtools include/svx include/vcl io/source sot/source svx/source sw/source xmlsec

2022-05-31 Thread Michael Stahl (via logerrit)
 filter/source/xsltdialog/xmlfilterjar.hxx  |   
 1 +
 forms/source/component/EventThread.hxx |   
 1 +
 fpicker/source/office/contentenumeration.hxx   |   
 2 ++
 include/svtools/imageresourceaccess.hxx|   
 2 ++
 include/svx/hexcolorcontrol.hxx|   
 2 ++
 include/vcl/BitmapBuffer.hxx   |   
 2 ++
 io/source/acceptor/acc_pipe.cxx|   
 2 ++
 io/source/acceptor/acc_socket.cxx  |   
 1 +
 io/source/connector/connector.cxx  |   
 2 ++
 sot/source/unoolestorage/xolesimplestorage.hxx |   
 2 ++
 svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx |   
 1 +
 sw/source/uibase/docvw/OverlayRanges.hxx   |   
 1 +
 sw/source/uibase/docvw/ShadowOverlayObject.hxx |   
 2 ++
 xmlsecurity/source/gpg/SEInitializer.cxx   |   
 2 ++
 xmlsecurity/source/gpg/SecurityEnvironment.hxx |   
 2 ++
 xmlsecurity/source/helper/ooxmlsecparser.hxx   |   
 1 +
 xmlsecurity/source/helper/xsecparser.hxx   |   
 1 +
 17 files changed, 27 insertions(+)

New commits:
commit 9adf252639bb748173eec66c76422032a56a67cd
Author: Michael Stahl 
AuthorDate: Tue May 31 18:01:46 2022 +0200
Commit: Michael Stahl 
CommitDate: Tue May 31 18:01:46 2022 +0200

include memory for GCC12

Change-Id: Idd92510b66f63b68faa8a8d4fef01a18874e9905

diff --git a/filter/source/xsltdialog/xmlfilterjar.hxx 
b/filter/source/xsltdialog/xmlfilterjar.hxx
index d9e20cd05847..d4a760366626 100644
--- a/filter/source/xsltdialog/xmlfilterjar.hxx
+++ b/filter/source/xsltdialog/xmlfilterjar.hxx
@@ -23,6 +23,7 @@
 #include 
 #include 
 
+#include 
 #include 
 
 class filter_info_impl;
diff --git a/forms/source/component/EventThread.hxx 
b/forms/source/component/EventThread.hxx
index eb3062080d73..bb8d01c48a0b 100644
--- a/forms/source/component/EventThread.hxx
+++ b/forms/source/component/EventThread.hxx
@@ -22,6 +22,7 @@
 
 #include 
 
+#include 
 #include 
 
 #include 
diff --git a/fpicker/source/office/contentenumeration.hxx 
b/fpicker/source/office/contentenumeration.hxx
index 920a6d8f2b08..0f6e37277376 100644
--- a/fpicker/source/office/contentenumeration.hxx
+++ b/fpicker/source/office/contentenumeration.hxx
@@ -26,6 +26,8 @@
 #include 
 #include 
 
+#include 
+
 namespace svt
 {
 
diff --git a/include/svtools/imageresourceaccess.hxx 
b/include/svtools/imageresourceaccess.hxx
index 6adff39ae4aa..b9135f2ccf6d 100644
--- a/include/svtools/imageresourceaccess.hxx
+++ b/include/svtools/imageresourceaccess.hxx
@@ -24,6 +24,8 @@
 
 #include 
 
+#include 
+
 namespace com :: sun :: star :: io { class XInputStream; }
 namespace com :: sun :: star :: uno { class XComponentContext; }
 
diff --git a/include/svx/hexcolorcontrol.hxx b/include/svx/hexcolorcontrol.hxx
index 63b44992d370..fc72f493a61d 100644
--- a/include/svx/hexcolorcontrol.hxx
+++ b/include/svx/hexcolorcontrol.hxx
@@ -24,6 +24,8 @@
 #include 
 #include 
 
+#include 
+
 namespace weld { class Entry; }
 
 struct ImplSVEvent;
diff --git a/include/vcl/BitmapBuffer.hxx b/include/vcl/BitmapBuffer.hxx
index 2a064951c447..3686e5fcb508 100644
--- a/include/vcl/BitmapBuffer.hxx
+++ b/include/vcl/BitmapBuffer.hxx
@@ -25,6 +25,8 @@
 #include 
 #include 
 
+#include 
+
 struct SalTwoRect;
 
 struct VCL_DLLPUBLIC BitmapBuffer
diff --git a/io/source/acceptor/acc_pipe.cxx b/io/source/acceptor/acc_pipe.cxx
index ad9ce09a20cb..0af2ae14a32c 100644
--- a/io/source/acceptor/acc_pipe.cxx
+++ b/io/source/acceptor/acc_pipe.cxx
@@ -27,6 +27,8 @@
 #include 
 #include 
 
+#include 
+
 using namespace ::osl;
 using namespace ::cppu;
 using namespace ::com::sun::star::uno;
diff --git a/io/source/acceptor/acc_socket.cxx 
b/io/source/acceptor/acc_socket.cxx
index a72179ecb356..66a70a7c2d0e 100644
--- a/io/source/acceptor/acc_socket.cxx
+++ b/io/source/acceptor/acc_socket.cxx
@@ -20,6 +20,7 @@
 #include "acceptor.hxx"
 
 #include 
+#include 
 
 #include 
 #include 
diff --git a/io/source/connector/connector.cxx 
b/io/source/connector/connector.cxx
index c21a34d17eac..ba9ec42ce436 100644
--- a/io/source/connector/connector.cxx
+++ b/io/source/connector/connector.cxx
@@ -34,6 +34,8 @@
 #include 
 #include "connector.hxx"
 
+#include 
+
 #define IMPLEMENTATION_NAME "com.sun.star.comp.io.Connector"
 #define SERVICE_NAME "com.sun.star.connection.Connector"
 
diff --git a/sot/source/unoolestorage/xolesimplestorage.hxx 
b/sot/source/unoolestorage/xolesimplestorage.hxx
index ef0214ba61c3..af97164c1090 100644
--- a/sot/source/unoolestorage/xolesimplestorage.hxx
+++ b/sot/source/u

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

2022-05-31 Thread Stephan Bergmann (via logerrit)
 uui/source/requeststringresolver.cxx |2 +-
 uui/source/requeststringresolver.hxx |3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

New commits:
commit c593567b68d353ca13206e7ee62c4a0f8348d987
Author: Stephan Bergmann 
AuthorDate: Tue May 31 14:57:39 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 17:04:47 2022 +0200

UUIInteractionRequestStringResolver::m_pImpl can be a plain data member

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

diff --git a/uui/source/requeststringresolver.cxx 
b/uui/source/requeststringresolver.cxx
index 8bcb78bfea8d..baaaf088713c 100644
--- a/uui/source/requeststringresolver.cxx
+++ b/uui/source/requeststringresolver.cxx
@@ -63,7 +63,7 @@ 
UUIInteractionRequestStringResolver::getStringFromInformationalRequest(
 {
 try
 {
-return m_pImpl->getStringFromRequest(Request);
+return m_pImpl.getStringFromRequest(Request);
 }
 catch (uno::RuntimeException const & ex)
 {
diff --git a/uui/source/requeststringresolver.hxx 
b/uui/source/requeststringresolver.hxx
index 9456444a43f4..f9c95d87f6f5 100644
--- a/uui/source/requeststringresolver.hxx
+++ b/uui/source/requeststringresolver.hxx
@@ -24,7 +24,6 @@
 #include 
 #include 
 #include "iahndl.hxx"
-#include 
 
 class UUIInteractionRequestStringResolver:
 public cppu::WeakImplHelper<
@@ -36,7 +35,7 @@ public:
 css::uno::Reference< css::uno::XComponentContext > const & rxContext);
 
 private:
-std::optional m_pImpl;
+UUIInteractionHelper m_pImpl;
 
 UUIInteractionRequestStringResolver(UUIInteractionRequestStringResolver 
const &) = delete;
 void operator =(UUIInteractionRequestStringResolver const &) = delete;


[Libreoffice-commits] core.git: desktop/qa desktop/source include/LibreOfficeKit

2022-05-31 Thread Luboš Luňák (via logerrit)
 desktop/qa/desktop_lib/test_desktop_lib.cxx  |9 +++
 desktop/source/lib/init.cxx  |   62 ++-
 include/LibreOfficeKit/LibreOfficeKit.h  |7 +++
 include/LibreOfficeKit/LibreOfficeKit.hxx|   27 +++
 include/LibreOfficeKit/LibreOfficeKitEnums.h |2 
 5 files changed, 104 insertions(+), 3 deletions(-)

New commits:
commit e4842a4c520c68813f0567d34ad321de11c4f1c3
Author: Luboš Luňák 
AuthorDate: Thu May 19 09:15:46 2022 +0200
Commit: Luboš Luňák 
CommitDate: Tue May 31 17:03:02 2022 +0200

lok: add more efficient getSelectionType() replacement

The getSelectionType() function usually needs to be followed by a call
to getTextSelection(), which means having them as two functions
leads to duplicating to a number of calls, some of which may be
somewhat expensive (pDoc->getSelection() e.g. for Calc builds
another ScDocument for the selection, and then getFromTransferrable()
converts that to the given format).

Change-Id: Ib0a8844701d80eaaff4834dcd3633c09d6b921b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134603
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 

diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx 
b/desktop/qa/desktop_lib/test_desktop_lib.cxx
index f2fd0ab16173..54440df9266b 100644
--- a/desktop/qa/desktop_lib/test_desktop_lib.cxx
+++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx
@@ -3040,12 +3040,16 @@ void DesktopLOKTest::testComplexSelection()
 
 // Certainly not complex.
 CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionType(pDocument));
+CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionTypeAndText(pDocument,
+ "", nullptr, 
nullptr));
 
 // Paste text.
 CPPUNIT_ASSERT(pDocument->pClass->paste(pDocument, 
"text/plain;charset=utf-8", aText.getStr(), aText.getLength()));
 
 // No selection.
 CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionType(pDocument));
+CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionTypeAndText(pDocument,
+ "", nullptr, 
nullptr));
 
 // Paste an image.
 OUString aFileURL;
@@ -3080,6 +3084,8 @@ void DesktopLOKTest::testComplexSelection()
 
 // We expect this to be complex.
 CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_COMPLEX), 
pDocument->pClass->getSelectionType(pDocument));
+CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_COMPLEX), 
pDocument->pClass->getSelectionTypeAndText(pDocument,
+ "", nullptr, 
nullptr));
 }
 
 void DesktopLOKTest::testCalcSaveAs()
@@ -3633,10 +3639,11 @@ void DesktopLOKTest::testABI()
 CPPUNIT_ASSERT_EQUAL(documentClassOffset(63), offsetof(struct 
_LibreOfficeKitDocumentClass, renderSearchResult));
 CPPUNIT_ASSERT_EQUAL(documentClassOffset(64),
  offsetof(struct _LibreOfficeKitDocumentClass, 
sendContentControlEvent));
+CPPUNIT_ASSERT_EQUAL(documentClassOffset(65), offsetof(struct 
_LibreOfficeKitDocumentClass, getSelectionTypeAndText));
 
 // Extending is fine, update this, and add new assert for the offsetof the
 // new method
-CPPUNIT_ASSERT_EQUAL(documentClassOffset(65), sizeof(struct 
_LibreOfficeKitDocumentClass));
+CPPUNIT_ASSERT_EQUAL(documentClassOffset(66), sizeof(struct 
_LibreOfficeKitDocumentClass));
 }
 
 CPPUNIT_TEST_SUITE_REGISTRATION(DesktopLOKTest);
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index e8bb8b44f6bf..ec97510b40e4 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -1048,6 +1048,10 @@ static char* 
doc_getTextSelection(LibreOfficeKitDocument* pThis,
   const char* pMimeType,
   char** pUsedMimeType);
 static int doc_getSelectionType(LibreOfficeKitDocument* pThis);
+static int doc_getSelectionTypeAndText(LibreOfficeKitDocument* pThis,
+   const char* pMimeType,
+   char** pText,
+   char** pUsedMimeType);
 static int doc_getClipboard (LibreOfficeKitDocument* pThis,
  const char **pMimeTypes,
  size_t  *pOutCount,
@@ -1242,6 +1246,7 @@ LibLODocument_Impl::LibLODocument_Impl(const 
uno::Reference setWindowTextSelection = doc_setWindowTextSelection;
 m_pDocumentClass->getTextSelection = doc_getTextSelection;
 m_pDocumentClass->getSelectionType = doc_getSelectionType;
+m_pDocumentClass->getSelectionTypeAndText = 
doc_getSelectionTypeAndText;
 m_pDocumentClass->getClipboard = doc_getClipboard;
 m_pDocumentClass->setClipboard = doc_setClipboard;
  

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - desktop/qa desktop/source include/LibreOfficeKit

2022-05-31 Thread Luboš Luňák (via logerrit)
 desktop/qa/desktop_lib/test_desktop_lib.cxx  |9 +++
 desktop/source/lib/init.cxx  |   62 ++-
 include/LibreOfficeKit/LibreOfficeKit.h  |7 +++
 include/LibreOfficeKit/LibreOfficeKit.hxx|   27 +++
 include/LibreOfficeKit/LibreOfficeKitEnums.h |2 
 5 files changed, 104 insertions(+), 3 deletions(-)

New commits:
commit d236341c6aab90d7d4097d6ff535e1bbeb656f3a
Author: Luboš Luňák 
AuthorDate: Thu May 19 09:15:46 2022 +0200
Commit: Luboš Luňák 
CommitDate: Tue May 31 17:02:47 2022 +0200

lok: add more efficient getSelectionType() replacement

The getSelectionType() function usually needs to be followed by a call
to getTextSelection(), which means having them as two functions
leads to duplicating to a number of calls, some of which may be
somewhat expensive (pDoc->getSelection() e.g. for Calc builds
another ScDocument for the selection, and then getFromTransferrable()
converts that to the given format).

Change-Id: Ib0a8844701d80eaaff4834dcd3633c09d6b921b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134615
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Ashod Nakashian 

diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx 
b/desktop/qa/desktop_lib/test_desktop_lib.cxx
index 351d2264e287..906fefac9466 100644
--- a/desktop/qa/desktop_lib/test_desktop_lib.cxx
+++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx
@@ -3039,12 +3039,16 @@ void DesktopLOKTest::testComplexSelection()
 
 // Certainly not complex.
 CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionType(pDocument));
+CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionTypeAndText(pDocument,
+ "", nullptr, 
nullptr));
 
 // Paste text.
 CPPUNIT_ASSERT(pDocument->pClass->paste(pDocument, 
"text/plain;charset=utf-8", aText.getStr(), aText.getLength()));
 
 // No selection.
 CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionType(pDocument));
+CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_NONE), 
pDocument->pClass->getSelectionTypeAndText(pDocument,
+ "", nullptr, 
nullptr));
 
 // Paste an image.
 OUString aFileURL;
@@ -3079,6 +3083,8 @@ void DesktopLOKTest::testComplexSelection()
 
 // We expect this to be complex.
 CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_COMPLEX), 
pDocument->pClass->getSelectionType(pDocument));
+CPPUNIT_ASSERT_EQUAL(static_cast(LOK_SELTYPE_COMPLEX), 
pDocument->pClass->getSelectionTypeAndText(pDocument,
+ "", nullptr, 
nullptr));
 }
 
 void DesktopLOKTest::testCalcSaveAs()
@@ -3632,10 +3638,11 @@ void DesktopLOKTest::testABI()
 CPPUNIT_ASSERT_EQUAL(documentClassOffset(63), offsetof(struct 
_LibreOfficeKitDocumentClass, renderSearchResult));
 CPPUNIT_ASSERT_EQUAL(documentClassOffset(64),
  offsetof(struct _LibreOfficeKitDocumentClass, 
sendContentControlEvent));
+CPPUNIT_ASSERT_EQUAL(documentClassOffset(65), offsetof(struct 
_LibreOfficeKitDocumentClass, getSelectionTypeAndText));
 
 // Extending is fine, update this, and add new assert for the offsetof the
 // new method
-CPPUNIT_ASSERT_EQUAL(documentClassOffset(65), sizeof(struct 
_LibreOfficeKitDocumentClass));
+CPPUNIT_ASSERT_EQUAL(documentClassOffset(66), sizeof(struct 
_LibreOfficeKitDocumentClass));
 }
 
 CPPUNIT_TEST_SUITE_REGISTRATION(DesktopLOKTest);
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index d4e222c8fba9..cebbcdb573c2 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -1061,6 +1061,10 @@ static char* 
doc_getTextSelection(LibreOfficeKitDocument* pThis,
   const char* pMimeType,
   char** pUsedMimeType);
 static int doc_getSelectionType(LibreOfficeKitDocument* pThis);
+static int doc_getSelectionTypeAndText(LibreOfficeKitDocument* pThis,
+   const char* pMimeType,
+   char** pText,
+   char** pUsedMimeType);
 static int doc_getClipboard (LibreOfficeKitDocument* pThis,
  const char **pMimeTypes,
  size_t  *pOutCount,
@@ -1255,6 +1259,7 @@ LibLODocument_Impl::LibLODocument_Impl(const 
uno::Reference setWindowTextSelection = doc_setWindowTextSelection;
 m_pDocumentClass->getTextSelection = doc_getTextSelection;
 m_pDocumentClass->getSelectionType = doc_getSelectionType;
+m_pDocumentClass->getSelectionTypeAndText = 
doc_getSelectionTypeAndText;
 m_pDocumentClass->getClipboard = doc_getClipboard;
 m_pDocumentClass->setClipboard =

[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - g

2022-05-31 Thread Michael Stahl (via logerrit)
 g |   18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)

New commits:
commit 7b9eab0fa510c8ab189b30a6b197fd85cd32ebcf
Author: Michael Stahl 
AuthorDate: Mon May 30 21:30:04 2022 +0200
Commit: Caolán McNamara 
CommitDate: Tue May 31 17:00:43 2022 +0200

g: we are not, in fact, in the BUILDDIR

For an out-of-tree build, "make fetch" poinlessly clones all git
submodules.

Change-Id: If4afb218946f49ba934f68b35806fd8143c39387
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135143
Tested-by: Jenkins
Reviewed-by: Michael Stahl 
(cherry picked from commit aa8ef74b475a6fbd6e4ec27c42941aa274998df6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135159
Reviewed-by: Caolán McNamara 

diff --git a/g b/g
index 8b733fc878c6..d31cf60a2abd 100755
--- a/g
+++ b/g
@@ -10,9 +10,9 @@ fi
 SUBMODULES_ALL="dictionaries helpcontent2 translations"
 
 pushd $(dirname $0) > /dev/null
-if [ -f config_host.mk ] ; then
-# we are in the BUILDDIR
-SRC_ROOT=$(< config_host.mk grep -a SRC_ROOT | sed -e "s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ] ; then
+# we are in the SRCDIR
+SRC_ROOT=$(< ${BUILDDIR}/config_host.mk grep -a SRC_ROOT | sed -e 
"s/.*=//")
 else
 SRC_ROOT=$(pwd)
 fi
@@ -150,8 +150,8 @@ get_active_submodules()
 get_configured_submodules()
 {
 SUBMODULES_CONFIGURED=""
-if [ -f config_host.mk ] ; then
-SUBMODULES_CONFIGURED=$(< config_host.mk grep -a GIT_NEEDED_SUBMODULES 
| sed -e "s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ] ; then
+SUBMODULES_CONFIGURED=$(< ${BUILDDIR}/config_host.mk grep -a 
GIT_NEEDED_SUBMODULES | sed -e "s/.*=//")
 else
 # if we need the configured submodule before the configuration is 
done. we assumed you want them all
 SUBMODULES_CONFIGURED=${SUBMODULES_ALL?}
@@ -161,12 +161,12 @@ get_configured_submodules()
 get_git_reference()
 {
 REFERENCED_GIT=""
-if [ -f config_host.mk ]; then
-REFERENCED_GIT=$(< config_host.mk grep -a GIT_REFERENCE_SRC | sed -e 
"s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ]; then
+REFERENCED_GIT=$(< ${BUILDDIR}/config_host.mk grep -a 
GIT_REFERENCE_SRC | sed -e "s/.*=//")
 fi
 LINKED_GIT=""
-if [ -f config_host.mk ]; then
-LINKED_GIT=$(< config_host.mk grep -a GIT_LINK_SRC | sed -e "s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ]; then
+LINKED_GIT=$(< ${BUILDDIR}/config_host.mk grep -a GIT_LINK_SRC | sed 
-e "s/.*=//")
 fi
 }
 


Re: [libreoffice-accessibility] Re: ESC meeting minutes: 2022-05-26

2022-05-31 Thread Devin Prater
A lot of toolbar widgets in Writer don't seem to be accessible, like the
ones to create forms and such.
Devin Prater
r.d.t.pra...@gmail.com




On Tue, May 31, 2022 at 9:31 AM Christophe Strobbe 
wrote:

> Hi Michael, Caolán, all,
>
> I don't have a comprehensive overview of LibreOffice UI accessibility
> either, unfortunately. However, if you are looking for ways to prioritise
> issues, one way may be based on the accessibility requirements in the ETSI
> standard EN 301 549, which defines the requirements that software,
> documents and a number of other IT products will need to fulfil in the EU
> starting June 2025. If you want the biggest bang for your buck, my
> recommendations are the following:
> (1) With regard to the UI, focus on Windows-based accessibility issues
> first, since that is where (a) the majority of people with disabilities are
> and (b) the version that is most likely to get audited if accessibility
> audits get done. (As a Linux user, I would also like GTK-related to get
> fixed, but I am not representative of the market.) With regard to
> applications, I would focus on Writer before Impress or Calc. (I don't know
> how often Base and Draw are used in professional contexts, if at all.)
> (2) With regard to document formats, continue improving PDF/UA conformance
> for exported PDF documents. PDF/UA conformance currently requires expensive
> extensions or plug-ins for Microsoft Office (Adobe Acrobat's PDF Maker
> plug-in has completely dropped the ball on PDF/UA) or Adobe InDesign.
> PDF/UA conformance in documents exported from Writer (and eventually also
> Impress) would be a strong selling point; there is currently no office
> suite that pulls this off natively. (Institutions that have been
> established to monitor compliance with the EU's Web Accessibility Directive
> often simply check for PDF/UA conformance as a substitute for a real
> accessibility check.)
>
> Best regards,
>
> Christophe Strobbe
>
>
> > On 31 May 2022 at 01:57 Michael Weghorn  wrote:
> >
> >
> > On 30/05/2022 11.08, Caolán McNamara wrote:
> > > For a11y I don't know what is seen as the major problems, is there some
> > > fundamentally missing pieces (like in the past not having direct
> > > windows IAccessible2 support and needing a java access bridge). Or are
> > > the fundamentals ok and its a matter of a general malaise. Is the
> > > general widgetry ok, but particular components have poor document level
> > > a11y. Or is there an endless amount of fairly easy entry level problems
> > > that there isn't enough people to take care of.
> >
> > I don't have a comprehensive overview at this point.
> > At least from the little experience I have by now, I *tend to think*
> > it's mostly the latter, at least as far as root causes for the major
> > problems are concerned.
> > (I have also *heard* that Base seems to be most problematic in general,
> > but haven't had much to do with it myself yet.)
> >
> >  From what I have seen so far while looking at some a11y issues
> > affecting Windows and Linux (gtk3 and qt5/qt6 VCL plugins), the
> > fundamentals look fine, and it seems to be mostly that various smaller
> > issues in LO a11y code of the single components and the platform
> > integrations (and sometimes in other projects, like the NVDA screen
> > reader or the Qt library) cause a lack of a11y in the UI (lack of
> > usability with accessibility technology, like screen readers, e.g.
> > because not everything is announced) and documents (like a11y-related
> > attributes not being properly set in docs, in particular when exported
> > to other formats like OOXML, PDF, (X)HTML).
> >
> > The a11y meta bug tdf#101912 [1] currently lists ~200 specific issues.
> > (I also have a ranked list from Richard, CCed, a blind user who uses the
> > NVDA screen reader on Windows.)
> > Working on some issues requires some level of understanding/experience
> > with AT (accessibility technologies, like a screen reader), others (like
> > doc export to other formats) shouldn't.
> >
> > I don't know about the situation on macOS.
> >
> > IIUC, the gtk4 VCL plugin currently doesn't have an a11y implementation
> > yet, and there has been a change of how a11y is handled at least within
> > the Gtk library itself. [1]
> > @Caolán: Is that correct? And is it something you are planning to look
> > into at some point or something that should be covered otherwise?
> >
> >
> > I've added the accessibility mailing list; maybe others have further
> > insights to add here.
> >
> >
> > [1] https://blog.gtk.org/2020/10/21/accessibility-in-gtk-4/
> > [2]
> >
> https://wiki.documentfoundation.org/Development/Budget2022#Fix_accessibility_issues
> >
> > --
> > To unsubscribe e-mail to:
> accessibility+unsubscr...@global.libreoffice.org
> > Problems?
> https://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
> > Posting guidelines + more:
> https://wiki.documentfoundation.org/Netiquette
> > List archive: https://listarchives.libreoffice.org/gl

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

2022-05-31 Thread Caolán McNamara (via logerrit)
 vcl/unx/gtk3/salnativewidgets-gtk.cxx |   11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

New commits:
commit 6d6d8860995576b8e20afb4dfd13c42f5a9bcc10
Author: Caolán McNamara 
AuthorDate: Tue May 31 10:02:58 2022 +0100
Commit: Caolán McNamara 
CommitDate: Tue May 31 16:27:05 2022 +0200

tdf#117006 gtk: detect High Contrast

similar to https://bugzilla.mozilla.org/show_bug.cgi?id=1606038

.e.g. gnome a11y menu, pick "High Contrast"

Change-Id: I60643b3a37b722230d5ed47082e4a6491d005ce4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135160
Reviewed-by: Michael Stahl 
Tested-by: Caolán McNamara 

diff --git a/vcl/unx/gtk3/salnativewidgets-gtk.cxx 
b/vcl/unx/gtk3/salnativewidgets-gtk.cxx
index 0505010bea81..7bc455e62000 100644
--- a/vcl/unx/gtk3/salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk3/salnativewidgets-gtk.cxx
@@ -2638,16 +2638,17 @@ bool GtkSalGraphics::updateSettings(AllSettings& 
rSettings)
 
 aStyleSet.SetToolbarIconSize( ToolbarIconSize::Large );
 
-// finally update the collected settings
-rSettings.SetStyleSettings( aStyleSet );
-#if OSL_DEBUG_LEVEL > 1
-gchar* pThemeName = NULL;
+gchar* pThemeName = nullptr;
 g_object_get( pSettings, "gtk-theme-name", &pThemeName, nullptr );
 SAL_INFO("vcl.gtk3", "Theme name is \""
 << pThemeName
 << "\".");
+// High contrast
+aStyleSet.SetHighContrastMode(g_strcmp0(pThemeName, "HighContrast") == 0);
 g_free(pThemeName);
-#endif
+
+// finally update the collected settings
+rSettings.SetStyleSettings( aStyleSet );
 
 return true;
 }


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

2022-05-31 Thread Caolán McNamara (via logerrit)
 sw/source/ui/index/cnttab.cxx|   71 +++
 sw/source/uibase/inc/swuicnttab.hxx  |3 +
 sw/uiconfig/swriter/ui/tocentriespage.ui |2 
 3 files changed, 49 insertions(+), 27 deletions(-)

New commits:
commit fffb3bc365be55010fdb4e4a7c5738c6dfdb66f5
Author: Caolán McNamara 
AuthorDate: Fri May 20 19:47:01 2022 +0200
Commit: Adolfo Jayme Barrientos 
CommitDate: Tue May 31 16:15:39 2022 +0200

tdf#149186: Table of contents editor not showing buttons in Dutch UI

an alternative approach that doesn't leave things too wide for the
English UI

Change-Id: Idbdd75790607b1928bfc583004041f7f98688ae6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134852
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx
index c57f47278f2f..25d1d33ceaab 100644
--- a/sw/source/ui/index/cnttab.cxx
+++ b/sw/source/ui/index/cnttab.cxx
@@ -1788,6 +1788,7 @@ SwTOXEntryTabPage::SwTOXEntryTabPage(weld::Container* 
pPage, weld::DialogControl
 , m_xChapterInfoPB(m_xBuilder->weld_button("chapterinfo"))
 , m_xPageNoPB(m_xBuilder->weld_button("pageno"))
 , m_xHyperLinkPB(m_xBuilder->weld_button("hyperlink"))
+, m_xFieldBox(m_xBuilder->weld_widget("fieldbox"))
 , m_xAuthFieldsLB(m_xBuilder->weld_combo_box("authfield"))
 , m_xAuthInsertPB(m_xBuilder->weld_button("insert"))
 , m_xAuthRemovePB(m_xBuilder->weld_button("remove"))
@@ -1904,8 +1905,17 @@ SwTOXEntryTabPage::SwTOXEntryTabPage(weld::Container* 
pPage, weld::DialogControl
 m_xSecondKeyLB->set_active(0);
 m_xThirdKeyLB->set_active(0);
 
-//lock size
+// lock size of dialog. Determine the field box's widest possible
+// configuration (tdf#149186) before doing so.
+int nFieldBoxWidth = 0;
+for (int eType = TOX_CITATION; eType >= TOX_INDEX; --eType)
+{
+ShowHideControls(eType);
+nFieldBoxWidth = 
std::max(m_xFieldBox->get_preferred_size().Width(), nFieldBoxWidth);
+}
+m_xFieldBox->set_size_request(nFieldBoxWidth, -1);
 Size aPrefSize(m_xContainer->get_preferred_size());
+m_xFieldBox->set_size_request(-1, -1);
 m_xContainer->set_size_request(aPrefSize.Width(), aPrefSize.Height());
 }
 
@@ -1969,6 +1979,39 @@ void SwTOXEntryTabPage::Reset( const SfxItemSet* )
 m_xCommaSeparatedCB->set_active(m_pCurrentForm->IsCommaSeparated());
 }
 
+void SwTOXEntryTabPage::ShowHideControls(int eType)
+{
+bool bToxIsAuthorities = TOX_AUTHORITIES == eType;
+bool bToxIsIndex =   TOX_INDEX == eType;
+bool bToxIsContent = TOX_CONTENT == eType;
+bool bToxSupportsLinks = TOX_CONTENT == eType ||
+ TOX_ILLUSTRATIONS == eType ||
+ TOX_TABLES == eType ||
+ TOX_OBJECTS == eType ||
+ TOX_USER == eType;
+
+//show or hide controls
+m_xEntryNoPB->set_visible(bToxIsContent);
+m_xHyperLinkPB->set_visible(bToxSupportsLinks);
+m_xRelToStyleCB->set_visible(!bToxIsAuthorities);
+m_xChapterInfoPB->set_visible(!bToxIsContent && !bToxIsAuthorities);
+m_xEntryPB->set_visible(!bToxIsAuthorities);
+m_xPageNoPB->set_visible(!bToxIsAuthorities);
+m_xAuthFieldsLB->set_visible(bToxIsAuthorities);
+m_xAuthInsertPB->set_visible(bToxIsAuthorities);
+m_xAuthRemovePB->set_visible(bToxIsAuthorities);
+
+m_xFormatFrame->set_visible(!bToxIsAuthorities);
+
+m_xSortingFrame->set_visible(bToxIsAuthorities);
+m_xSortKeyFrame->set_visible(bToxIsAuthorities);
+
+m_xMainEntryStyleFT->set_visible(bToxIsIndex);
+m_xMainEntryStyleLB->set_visible(bToxIsIndex);
+m_xAlphaDelimCB->set_visible(bToxIsIndex);
+m_xCommaSeparatedCB->set_visible(bToxIsIndex);
+}
+
 void SwTOXEntryTabPage::ActivatePage( const SfxItemSet& /*rSet*/)
 {
 SwMultiTOXTabDialog* pTOXDlg = 
static_cast(GetDialogController());
@@ -1979,12 +2022,6 @@ void SwTOXEntryTabPage::ActivatePage( const SfxItemSet& 
/*rSet*/)
 {
 bool bToxIsAuthorities = TOX_AUTHORITIES == aCurType.eType;
 bool bToxIsIndex =   TOX_INDEX == aCurType.eType;
-bool bToxIsContent = TOX_CONTENT == aCurType.eType;
-bool bToxSupportsLinks = TOX_CONTENT == aCurType.eType ||
- TOX_ILLUSTRATIONS == aCurType.eType ||
- TOX_TABLES == aCurType.eType ||
- TOX_OBJECTS == aCurType.eType ||
- TOX_USER == aCurType.eType;
 
 m_xLevelLB->clear();
 for(sal_uInt16 i = 1; i < m_pCurrentForm->GetFormMax(); i++)
@@ -2047,25 +2084,7 @@ void SwTOXEntryTabPage::ActivatePage( const SfxItemSet& 
/*rSet*/)
 m_xLevelLB->select(bToxIsIndex ? 1 : 0);
 
 //show or hide controls
-m_xEntryNoPB->set_visible(bToxIsContent);
-m_xHyperLinkPB->set_visible(bToxSupportsLinks);
-

[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - svx/uiconfig

2022-05-31 Thread Caolán McNamara (via logerrit)
 svx/uiconfig/ui/docrecoveryrecoverdialog.ui |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 48adb09c2032285bc7d02f495cbdb3fc5185f0c5
Author: Caolán McNamara 
AuthorDate: Mon May 23 17:12:41 2022 +0100
Commit: Adolfo Jayme Barrientos 
CommitDate: Tue May 31 16:14:48 2022 +0200

tdf#148168 set built-in gtk search box to search "document name" column

rather than column 0 which is used for icons

Change-Id: Idef015e575fe6a4f76ad0cc67481ca8454a07206
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134782
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/svx/uiconfig/ui/docrecoveryrecoverdialog.ui 
b/svx/uiconfig/ui/docrecoveryrecoverdialog.ui
index b48132a8be6b..982b19bf8bce 100644
--- a/svx/uiconfig/ui/docrecoveryrecoverdialog.ui
+++ b/svx/uiconfig/ui/docrecoveryrecoverdialog.ui
@@ -139,7 +139,7 @@
 liststore1
 False
 True
-0
+1
 False
 
   


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

2022-05-31 Thread Julien Nabet (via logerrit)
 extensions/inc/stringarrays.hrc  |6 --
 extensions/source/propctrlr/formmetadata.cxx |8 
 2 files changed, 4 insertions(+), 10 deletions(-)

New commits:
commit 2aeee5a0f545e9fb628fc7b02bee6b07e89a77bf
Author: Julien Nabet 
AuthorDate: Sun May 22 11:58:36 2022 +0200
Commit: Adolfo Jayme Barrientos 
CommitDate: Tue May 31 16:11:43 2022 +0200

tdf#149096: don't translate "Get" and "Post" submit methods

Change-Id: I4427618dad0c168642225eaaf828a96e37936d8f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134718
Tested-by: Julien Nabet 
Reviewed-by: Julien Nabet 
(cherry picked from commit 93b4191cefa5062b120c77335776beee34ee4392)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134789
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/extensions/inc/stringarrays.hrc b/extensions/inc/stringarrays.hrc
index 2de092317cac..6de5d0126faa 100644
--- a/extensions/inc/stringarrays.hrc
+++ b/extensions/inc/stringarrays.hrc
@@ -76,12 +76,6 @@ const TranslateId RID_RSC_ENUM_BUTTONTYPE[] =
 NC_("RID_RSC_ENUM_BUTTONTYPE", "Refresh form")
 };
 
-const TranslateId RID_RSC_ENUM_SUBMIT_METHOD[] =
-{
-NC_("RID_RSC_ENUM_SUBMIT_METHOD", "Get"),
-NC_("RID_RSC_ENUM_SUBMIT_METHOD", "Post" )
-};
-
 const TranslateId RID_RSC_ENUM_SUBMIT_ENCODING[] =
 {
 NC_("RID_RSC_ENUM_SUBMIT_ENCODING", "URL"),
diff --git a/extensions/source/propctrlr/formmetadata.cxx 
b/extensions/source/propctrlr/formmetadata.cxx
index 1f51ee3994ed..54a9d7cf2e0f 100644
--- a/extensions/source/propctrlr/formmetadata.cxx
+++ b/extensions/source/propctrlr/formmetadata.cxx
@@ -410,6 +410,10 @@ namespace pcr
 OSL_ENSURE( ( ( getPropertyUIFlags( _nId ) & PROP_FLAG_ENUM ) != 0 ) 
|| ( _nId == PROPERTY_ID_TARGET_FRAME ),
 "OPropertyInfoService::getPropertyEnumRepresentations: this is no 
enum property!" );
 
+if (_nId == PROPERTY_ID_SUBMIT_METHOD)
+{
+return { "Get", "Post" };
+}
 const TranslateId* pStringItemsResId = nullptr;
 int nElements = 0;
 switch ( _nId )
@@ -450,10 +454,6 @@ namespace pcr
 pStringItemsResId = RID_RSC_ENUM_PUSHBUTTONTYPE;
 nElements = SAL_N_ELEMENTS(RID_RSC_ENUM_PUSHBUTTONTYPE);
 break;
-case PROPERTY_ID_SUBMIT_METHOD:
-pStringItemsResId = RID_RSC_ENUM_SUBMIT_METHOD;
-nElements = SAL_N_ELEMENTS(RID_RSC_ENUM_SUBMIT_METHOD);
-break;
 case PROPERTY_ID_SUBMIT_ENCODING:
 pStringItemsResId = RID_RSC_ENUM_SUBMIT_ENCODING;
 nElements = SAL_N_ELEMENTS(RID_RSC_ENUM_SUBMIT_ENCODING);


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

2022-05-31 Thread Caolán McNamara (via logerrit)
 vcl/unx/gtk3/salnativewidgets-gtk.cxx |   11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

New commits:
commit f90239263fcabec30f04098e17dc1be9f9a928d1
Author: Caolán McNamara 
AuthorDate: Tue May 31 10:02:58 2022 +0100
Commit: Caolán McNamara 
CommitDate: Tue May 31 16:04:39 2022 +0200

tdf#117006 gtk: detect High Contrast

similar to https://bugzilla.mozilla.org/show_bug.cgi?id=1606038

.e.g. gnome a11y menu, pick "High Contrast"

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

diff --git a/vcl/unx/gtk3/salnativewidgets-gtk.cxx 
b/vcl/unx/gtk3/salnativewidgets-gtk.cxx
index df40af50ef6b..3eaffc903e16 100644
--- a/vcl/unx/gtk3/salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk3/salnativewidgets-gtk.cxx
@@ -2643,16 +2643,17 @@ bool GtkSalGraphics::updateSettings(AllSettings& 
rSettings)
 
 aStyleSet.SetToolbarIconSize( ToolbarIconSize::Large );
 
-// finally update the collected settings
-rSettings.SetStyleSettings( aStyleSet );
-#if OSL_DEBUG_LEVEL > 1
-gchar* pThemeName = NULL;
+gchar* pThemeName = nullptr;
 g_object_get( pSettings, "gtk-theme-name", &pThemeName, nullptr );
 SAL_INFO("vcl.gtk3", "Theme name is \""
 << pThemeName
 << "\".");
+// High contrast
+aStyleSet.SetHighContrastMode(g_strcmp0(pThemeName, "HighContrast") == 0);
 g_free(pThemeName);
-#endif
+
+// finally update the collected settings
+rSettings.SetStyleSettings( aStyleSet );
 
 return true;
 }


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

2022-05-31 Thread Michael Stahl (via logerrit)
 external/curl/UnpackedTarball_curl.mk |1 
 external/curl/curl-7.26.0_win-proxy.patch |  121 --
 2 files changed, 122 deletions(-)

New commits:
commit 225d8f31ad5fdcb802fbaa4ccb5266c80a3dd037
Author: Michael Stahl 
AuthorDate: Tue May 31 11:43:07 2022 +0200
Commit: Michael Stahl 
CommitDate: Tue May 31 15:59:28 2022 +0200

curl: remove curl-7.26.0_win-proxy.patch

There is no justification why this patch was added, upstream doesn't
want to add such a feature[1], and maintaining feature patches in LO
for bundled externals doesn't make sense.

Also, this doesn't respect the Inet::Settings::ooInetHTTPProxy*
settings from the configuration.

Let's remove it and hope nobody complains.

[1] https://curl.se/mail/lib-2022-05/0083.html

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

diff --git a/external/curl/UnpackedTarball_curl.mk 
b/external/curl/UnpackedTarball_curl.mk
index b89b000228c9..e78adabb8d07 100644
--- a/external/curl/UnpackedTarball_curl.mk
+++ b/external/curl/UnpackedTarball_curl.mk
@@ -23,7 +23,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,curl,\
external/curl/curl-msvc.patch.1 \
external/curl/curl-msvc-zlib.patch.1 \
external/curl/curl-msvc-disable-protocols.patch.1 \
-   external/curl/curl-7.26.0_win-proxy.patch \
external/curl/zlib.patch.0 \
external/curl/configurable-z-option.patch.0 \
 ))
diff --git a/external/curl/curl-7.26.0_win-proxy.patch 
b/external/curl/curl-7.26.0_win-proxy.patch
deleted file mode 100644
index 1c5469a35479..
--- a/external/curl/curl-7.26.0_win-proxy.patch
+++ /dev/null
@@ -1,121 +0,0 @@
 curl/winbuild/MakefileBuild.vc.orig2017-10-23 17:15:22.969492548 
+0200
-+++ curl/winbuild/MakefileBuild.vc 2017-10-23 17:16:38.491490679 +0200
-@@ -72,7 +72,7 @@
- 
- CFLAGS_LIBCURL_STATIC  = /DCURL_STATICLIB
- 
--WIN_LIBS= ws2_32.lib wldap32.lib advapi32.lib crypt32.lib
-+WIN_LIBS= ws2_32.lib wldap32.lib advapi32.lib crypt32.lib winhttp.lib
- 
- BASE_NAME  = libcurl
- BASE_NAME_DEBUG= $(BASE_NAME)_debug
 curl-7.26.0/lib/url.c
-+++ misc/build/curl-7.26.0/lib/url.c
-@@ -78,6 +78,10 @@
- bool curl_win32_idn_to_ascii(const char *in, char **out);
- #endif  /* USE_LIBIDN2 */
- 
-+#ifdef _WIN32
-+#include 
-+#endif
-+
- #include "urldata.h"
- #include "netrc.h"
- 
-@@ -4586,6 +4590,21 @@
- }
- 
- #ifndef CURL_DISABLE_HTTP
-+#ifdef _WIN32
-+static char *wstrToCstr(LPWSTR wStr)
-+{
-+  int bufSize;
-+  char *out = NULL;
-+  if(wStr) {
-+bufSize = WideCharToMultiByte(
-+  CP_ACP,  0, wStr, -1, NULL, 0, NULL, NULL);
-+out = (char *)malloc(bufSize * sizeof(char));
-+WideCharToMultiByte(CP_ACP, 0, wStr, -1, out, bufSize, NULL, NULL);
-+  }
-+  return out;
-+}
-+#endif
-+
- /
- * Detect what (if any) proxy to use. Remember that this selects a host
- * name and is not limited to HTTP proxies only.
-@@ -4613,6 +4633,66 @@
-* For compatibility, the all-uppercase versions of these variables are
-* checked if the lowercase versions don't exist.
-*/
-+#ifdef _WIN32
-+  char *no_proxy = NULL;
-+  WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *ieProxyConfig;
-+  ieProxyConfig = (WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *)
-+malloc(sizeof(WINHTTP_CURRENT_USER_IE_PROXY_CONFIG));
-+  if(WinHttpGetIEProxyConfigForCurrentUser(ieProxyConfig)) {
-+if(!ieProxyConfig->fAutoDetect) {
-+  char *ieProxy;
-+  char *ieNoProxy;
-+  char *pos;
-+
-+  ieProxy = wstrToCstr(ieProxyConfig->lpszProxy);
-+  ieNoProxy = wstrToCstr(ieProxyConfig->lpszProxyBypass);
-+
-+  /* Convert the ieNoProxy into a proper no_proxy value */
-+  if(ieNoProxy) {
-+no_proxy = strdup(ieNoProxy);
-+pos = strpbrk(no_proxy, "; ");
-+while(pos) {
-+  no_proxy[pos-no_proxy] = ',';
-+  pos = strpbrk(no_proxy, "; ");
-+}
-+  }
-+
-+  if(!check_noproxy(conn->host.name, no_proxy)) {
-+/* Look for the http proxy setting */
-+char *tok;
-+char *saveptr;
-+
-+if(ieProxy) {
-+  tok = strtok_s(ieProxy, ";", &saveptr);
-+  if(!strchr(tok, '=')) {
-+proxy = strdup(ieProxy);
-+  }
-+  else {
-+do {
-+  if(strncmp(tok, "http=", 5) == 0) {
-+/* We found HTTP proxy value, then use it */
-+proxy = strdup(tok + 5);
-+  }
-+  tok = strtok_s(NULL, ";", &saveptr);
-+}
-+while(tok);
-+  }
-+}
-+  }
-+
-+  free(ieProxy);
-+  free(ieNoProxy);
-+}
-+else {
-+  /* TODO Handle the Proxy config Auto Detection case */
-+}
-+
-+GlobalFree(ieProxyConfig->lpszAut

[Libreoffice-commits] core.git: Changes to 'refs/tags/cp-6.4-62'

2022-05-31 Thread Andras Timar (via logerrit)
Tag 'cp-6.4-62' created by Andras Timar  at 
2022-05-31 13:57 +

cp-6.4-62

Changes since cp-6.4-61-67:
---
 0 files changed
---


[Libreoffice-commits] translations.git: Changes to 'refs/tags/cp-6.4-62'

2022-05-31 Thread Tor Lillqvist (via logerrit)
Tag 'cp-6.4-62' created by Andras Timar  at 
2022-05-31 13:57 +

cp-6.4-62

Changes since cp-6.4-48:
Tor Lillqvist (1):
  Add missing mobile-specific Impress German translations

---
 source/de/sd/messages.po |   37 +
 1 file changed, 37 insertions(+)
---


[Libreoffice-commits] help.git: Changes to 'refs/tags/cp-6.4-62'

2022-05-31 Thread Andras Timar (via logerrit)
Tag 'cp-6.4-62' created by Andras Timar  at 
2022-05-31 13:57 +

cp-6.4-62

Changes since cp-6.4-branch-point-11:
---
 0 files changed
---


[Libreoffice-commits] dictionaries.git: Changes to 'refs/tags/cp-6.4-62'

2022-05-31 Thread Andras Timar (via logerrit)
Tag 'cp-6.4-62' created by Andras Timar  at 
2022-05-31 13:57 +

cp-6.4-62

Changes since co-6.4-20:
Andras Timar (1):
  update Danish dictionary

---
 da_DK/README_da_DK.txt |4 
 da_DK/da_DK.aff| 3401 
 da_DK/da_DK.dic|288016 
+++--
 da_DK/description.xml  |9 
 4 files changed, 139245 insertions(+), 152185 deletions(-)
---


[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - 64 commits - configure.ac connectivity/source download.lst drawinglayer/source external/curl external/libxslt hwpfilter/source includ

2022-05-31 Thread Andras Timar (via logerrit)
 configure.ac  |2 
 connectivity/source/drivers/dbase/DTable.cxx  |2 
 download.lst  |   16 
 drawinglayer/source/tools/emfphelperdata.cxx  |   31 
 external/curl/ExternalPackage_curl.mk |2 
 external/curl/ExternalProject_curl.mk |2 
 external/curl/curl-7.26.0_win-proxy.patch |   12 
 external/curl/curl-nss.patch.1|6 
 external/curl/zlib.patch.0|   16 
 external/libxslt/UnpackedTarball_libxslt.mk   |1 
 external/libxslt/e2584eed1c84c18f16e42188c30d2c3d8e3e8853.patch.1 |   69 -
 external/libxslt/rpath.patch.0|2 
 hwpfilter/source/drawing.h|   13 
 hwpfilter/source/hcode.cxx|2 
 hwpfilter/source/htags.cxx|   26 
 hwpfilter/source/hwpfile.cxx  |7 
 hwpfilter/source/hwpfile.h|6 
 hwpfilter/source/hwpread.cxx  |   20 
 hwpfilter/source/hwpreader.cxx|   91 -
 include/o3tl/safeint.hxx  |8 
 include/sfx2/strings.hrc  |2 
 include/sfx2/viewfrm.hxx  |1 
 include/svl/zforlist.hxx  |2 
 lotuswordpro/source/filter/lwpdrawobj.cxx |  123 +-
 officecfg/registry/schema/org/openoffice/Office/Common.xcs|   16 
 sc/inc/documentimport.hxx |2 
 sc/inc/table.hxx  |2 
 sc/source/core/data/dociter.cxx   |8 
 sc/source/core/data/document.cxx  |   12 
 sc/source/core/data/documentimport.cxx|   14 
 sc/source/core/data/table2.cxx|   15 
 sc/source/filter/lotus/op.cxx |   11 
 sc/source/filter/oox/sheetdatabuffer.cxx  |   16 
 sfx2/source/view/viewfrm.cxx  |   40 
 shell/source/win32/SysShExec.cxx  |8 
 solenv/clang-format/blacklist |1 
 svl/source/numbers/zforlist.cxx   |8 
 svl/source/passwordcontainer/passwordcontainer.cxx|  166 ++
 svl/source/passwordcontainer/passwordcontainer.hxx|   69 +
 sw/inc/IDocumentMarkAccess.hxx|5 
 sw/inc/deletelistener.hxx |   92 +
 sw/qa/core/data/rtf/fail/forcepoint-82.rtf|   28 
 sw/qa/core/data/rtf/pass/forcepoint-96.rtf|8 
 sw/qa/core/data/rtf/pass/forcepoint104.rtf|  571 
++
 sw/qa/core/layout/data/tdf122894-4.doc|binary
 sw/qa/core/layout/layout.cxx  |5 
 sw/qa/extras/layout/data/LIBREOFFICE-N4LA0OHZ.rtf |  347 ++
 sw/qa/extras/layout/data/LIBREOFFICE-UXTSOREL.rtf |binary
 sw/qa/extras/layout/data/forcepoint102.rtf|  178 +++
 sw/qa/extras/layout/data/forcepoint89.html|binary
 sw/qa/extras/layout/data/forcepoint90.rtf |1 
 sw/qa/extras/layout/data/forcepoint91.html|binary
 sw/qa/extras/layout/data/forcepoint92.doc |binary
 sw/qa/extras/layout/data/forcepoint93-1.rtf   |binary
 sw/qa/extras/layout/data/forcepoint93-2.rtf   |binary
 sw/qa/extras/layout/data/forcepoint94.html|binary
 sw/qa/extras/layout/data/forcepoint98.html|binary
 sw/qa/extras/layout/data/forcepoint99.html|binary
 sw/qa/extras/layout/data/tdf147485-forcepoint.doc |binary
 sw/qa/extras/layout/layout.cxx|   83 +
 sw/qa/extras/odfexport/data/tdf131025_noZerosInTable.odt  |binary
 sw/qa/extras/odfexport/odfexport.cxx  |   10 
 sw/qa/extras/uiwriter/uiwriter.cxx|4 
 sw/source/core/doc/DocumentContentOperationsManager.cxx   |   31 
 sw/source/core/doc/docbm.cxx  |   22 
 sw/source/core/inc/MarkManager.hxx|2 
 sw/source/core/inc/

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - sw/uiconfig

2022-05-31 Thread Andras Timar (via logerrit)
 sw/uiconfig/swriter/ui/calendar.ui |3 ---
 1 file changed, 3 deletions(-)

New commits:
commit 7aeff80c565837cbcd46c649cefe11462cb6948e
Author: Andras Timar 
AuthorDate: Mon May 30 22:58:11 2022 +0200
Commit: Andras Timar 
CommitDate: Tue May 31 15:47:17 2022 +0200

date picker should rather show the current date instead of February 14, 2019

Change-Id: Ie449873aad40b6f02198a8a44a7eae1aaba1cfae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135148
Tested-by: Jenkins
Reviewed-by: Andras Timar 
(cherry picked from commit 090ed6199ec8ed805d645b62387bc89df01b9564)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135157
Tested-by: Jenkins CollaboraOffice 

diff --git a/sw/uiconfig/swriter/ui/calendar.ui 
b/sw/uiconfig/swriter/ui/calendar.ui
index 5c8d3eb43bfd..e5355f723621 100644
--- a/sw/uiconfig/swriter/ui/calendar.ui
+++ b/sw/uiconfig/swriter/ui/calendar.ui
@@ -15,9 +15,6 @@
   
 True
 True
-2019
-1
-14
   
   
 False


[Libreoffice-commits] core.git: bin/crashreportScraper.py

2022-05-31 Thread Xisco Fauli (via logerrit)
 bin/crashreportScraper.py |   56 ++
 1 file changed, 37 insertions(+), 19 deletions(-)

New commits:
commit c5ca8b5bffc3b08f74817a3dee2c314b7ced
Author: Xisco Fauli 
AuthorDate: Tue May 31 11:08:21 2022 +0200
Commit: Xisco Fauli 
CommitDate: Tue May 31 15:43:36 2022 +0200

crashreportScraper: use timeout in requests

Change-Id: I03f8740fc124c11d250368034bf6e14239df5abe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135180
Tested-by: Xisco Fauli 
Reviewed-by: Xisco Fauli 

diff --git a/bin/crashreportScraper.py b/bin/crashreportScraper.py
index aedb7a666c06..1735aa3052b5 100755
--- a/bin/crashreportScraper.py
+++ b/bin/crashreportScraper.py
@@ -36,8 +36,13 @@ def convert_str_to_date(value):
 
 def parse_version_url(url):
 crashReports = {}
-html_text = requests.get(url).text
-soup = BeautifulSoup(html_text, 'html.parser')
+
+try:
+html_text = requests.get(url, timeout=200).text
+soup = BeautifulSoup(html_text, 'html.parser')
+except requests.exceptions.Timeout:
+print("Timeout requesting " + url)
+sys.exit(1)
 
 table = soup.find("table", {"id": "data-table"}).tbody
 for tr in table.find_all("tr"):
@@ -51,8 +56,12 @@ def parse_version_url(url):
 return crashReports
 
 def parse_reports_and_get_most_recent_report_from_last_page(url):
-html_text = requests.get(url).text
-soup = BeautifulSoup(html_text, 'html.parser')
+try:
+html_text = requests.get(url, timeout=200).text
+soup = BeautifulSoup(html_text, 'html.parser')
+except requests.exceptions.Timeout:
+print("Timeout")
+raise
 
 count = 0
 os_tab = soup.find("table", {"id": "os_tab"}).tbody
@@ -67,8 +76,12 @@ def 
parse_reports_and_get_most_recent_report_from_last_page(url):
 
 if last_page > 1:
 url = url + "?page=" + str(last_page)
-html_text = requests.get(url).text
-soup = BeautifulSoup(html_text, 'html.parser')
+try:
+html_text = requests.get(url, timeout=200).text
+soup = BeautifulSoup(html_text, 'html.parser')
+except requests.exceptions.Timeout:
+print("Timeout")
+raise
 
 reports = soup.find("div", {"id": "reports"}).tbody
 ID, currentID = "", ""
@@ -102,8 +115,12 @@ def 
parse_reports_and_get_most_recent_report_from_last_page(url):
 return count, ID, version, OS
 
 def parse_details_and_get_info(url, gitRepo):
-html_text = requests.get(url).text
-soup = BeautifulSoup(html_text, 'html.parser')
+try:
+html_text = requests.get(url, timeout=200).text
+soup = BeautifulSoup(html_text, 'html.parser')
+except requests.exceptions.Timeout:
+print("Timeout")
+raise
 
 details = soup.find("div", {"id": "details"}).tbody
 tr_list = details.find_all("tr")
@@ -177,16 +194,17 @@ if __name__ == '__main__':
 f.flush()
 
 for k, v in crashes.items():
-# ignore unresolved crash signatures
-if len(k) < 254 and k not in crashesInFile and '`' not in k and 
not k.lower().endswith('.dll') and \
-not k.lower().endswith('.so') and ".so." not in k.lower():
+if len(k) < 254 and k not in crashesInFile and '`' not in k:
 print("Parsing " + k)
-crashCount, crashID, crashVersion, crashOS = 
parse_reports_and_get_most_recent_report_from_last_page(
-"https://crashreport.libreoffice.org/stats/signature/"; 
+ k)
-crashReason, crashStack, codeLine = parse_details_and_get_info(
-
"https://crashreport.libreoffice.org/stats/crash_details/"; + crashID, gitRepo)
-line = '\t'.join([k, str(crashCount), 
v[1].strftime('%y/%m/%d'), v[2].strftime('%y/%m/%d'),
-crashID, crashVersion, crashReason, crashOS, 
crashStack, codeLine, '\n'])
-f.write(line)
-f.flush()
+try:
+crashCount, crashID, crashVersion, crashOS = 
parse_reports_and_get_most_recent_report_from_last_page(
+
"https://crashreport.libreoffice.org/stats/signature/"; + k)
+crashReason, crashStack, codeLine = 
parse_details_and_get_info(
+
"https://crashreport.libreoffice.org/stats/crash_details/"; + crashID, gitRepo)
+line = '\t'.join([k, str(crashCount), 
v[1].strftime('%y/%m/%d'), v[2].strftime('%y/%m/%d'),
+crashID, crashVersion, crashReason, crashOS, 
crashStack, codeLine, '\n'])
+f.write(line)
+f.flush()
+except requests.exceptions.Timeout:
+continue
 


Re: Accessing main window menus during C++ test run

2022-05-31 Thread Colomban Wendling

Hello Xisco, thanks for your message.

Unfortunately this blog post, while instructive, is not really helpful 
as the accessibility approach is mentioned as having been discarded 
mostly because the accessibility implementation in LO was deemed not 
robust enough, so not a reliable basis for designing a new framework on top.


Unfortunately here I'm actually *trying* to exercise the accessibility 
implementation in the hope it'll help with improving it, so I cannot 
just ignore it :)


Thanks anyway, and any more knowledge would still be highly appreciated!

Regards,
Colomban

Le 26/05/2022 à 10:11, Xisco Fauli a écrit :

Hello Colomban,

The UItest framework [1] uses UNO commands to interact with the UI. 
However, Markus also evaluated the accessibility approach when he 
implemented it. You can read more in 
https://mmohrhard.wordpress.com/2016/09/07/ui-testing-in-libreoffice/. I 
hope it helps.


Cheers

[1] https://wiki.documentfoundation.org/Development/UITests

On 25/5/22 19:16, Colomban Wendling wrote:

Hello everybody,

I'm trying to interact with the UI in a CppUnit test, or more 
specifically with the accessible objects representing it, as part of 
the CppUnit accessibility unit tests project I'm working on.


I have no trouble reaching the top window or document, but most UI 
around the document seem empty, and specifically in the current area 
I'm pursuing right now: the menus.  I can get a hold of the menubar, 
but it has no children whatsoever.  Same goes for e.g. the statusbar.


I even tried hacking around VCL's Menu class to see whether it was the
accessible objects I was lacking, but no, barely any menu items are
constructed for my test runs, whereas a whole lot of them are during a 
normal run, as expected.


What I do to create my test windows don't seem too odd to me: I'm 
calling XDesktop2::loadComponentFromURL(), where the instance comes 
from 
frame::Desktop::create(test::BootstrapFixture::mxComponentContext) -- 
same goes trying to use UnoApiTest::mxDesktop::loadComponentFromURL().

My naive expectation was that I'd get a full-featured window with the
corresponding document, but apparently I only get a mock or subset of 
the actual UI.


So, is there a way to get a full-featured UI in a test, and how? Or to 
load specific parts of the UI on demand, so to have the same behavior 
a normal run would have?


Currently I'm working with Writer, but any component would be fine for 
now, and ideally I'd have a solution for all of them; but any one 
would be a good enough start :)


BTW I know I could perform actions sending UNO commands, but here I'm 
really more interested in the UI elements behavior and accessibility 
than the commands they trigger, so that's not a solution.


I'd be very glad to get any pointers that could help, thanks!

Regards,
Colomban Wendling






Kurt Nordback license statement

2022-05-31 Thread Kurt Nordback
All of my past & future contributions to LibreOffice may be licensed under the 
MPLv2/LGPLv3+ dual license.

[Libreoffice-commits] core.git: basic/inc basic/source include/basic

2022-05-31 Thread Noel Grandin (via logerrit)
 basic/inc/sbxform.hxx   |   16 ++---
 basic/source/basmgr/basmgr.cxx  |   37 
 basic/source/classes/sbunoobj.cxx   |   19 
 basic/source/classes/sbxmod.cxx |5 ++--
 basic/source/comp/exprnode.cxx  |5 ++--
 basic/source/comp/scanner.cxx   |5 ++--
 basic/source/comp/symtbl.cxx|5 ++--
 basic/source/inc/dlgcont.hxx|4 +--
 basic/source/inc/expr.hxx   |2 -
 basic/source/inc/namecont.hxx   |4 +--
 basic/source/inc/sbunoobj.hxx   |   17 +++---
 basic/source/inc/scanner.hxx|2 -
 basic/source/inc/symtbl.hxx |2 -
 basic/source/runtime/comenumwrapper.hxx |5 ++--
 basic/source/runtime/runtime.cxx|   11 +
 basic/source/sbx/sbxform.cxx|   33 ++--
 basic/source/sbx/sbxvar.cxx |5 ++--
 basic/source/uno/dlgcont.cxx|9 ---
 basic/source/uno/namecont.cxx   |7 +++---
 include/basic/basmgr.hxx|9 ---
 include/basic/sbx.hxx   |7 +++---
 21 files changed, 112 insertions(+), 97 deletions(-)

New commits:
commit 5ecdedbf81af5516ff7d2195383dc9d6389fb0d0
Author: Noel Grandin 
AuthorDate: Tue May 31 10:23:21 2022 +0200
Commit: Noel Grandin 
CommitDate: Tue May 31 15:11:27 2022 +0200

clang-tidy modernize-pass-by-value in basic

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

diff --git a/basic/inc/sbxform.hxx b/basic/inc/sbxform.hxx
index 8accc399547a..c14d950a8f6b 100644
--- a/basic/inc/sbxform.hxx
+++ b/basic/inc/sbxform.hxx
@@ -74,14 +74,14 @@ class SbxBasicFormater {
 // Constructor takes signs for decimal point, thousand separation sign
 // and necessary resource strings.
 SbxBasicFormater( sal_Unicode _cDecPoint, sal_Unicode _cThousandSep,
-  const OUString& _sOnStrg,
-  const OUString& _sOffStrg,
-  const OUString& _sYesStrg,
-  const OUString& _sNoStrg,
-  const OUString& _sTrueStrg,
-  const OUString& _sFalseStrg,
-  const OUString& _sCurrencyStrg,
-  const OUString& _sCurrencyFormatStrg );
+  OUString _sOnStrg,
+  OUString _sOffStrg,
+  OUString _sYesStrg,
+  OUString _sNoStrg,
+  OUString _sTrueStrg,
+  OUString _sFalseStrg,
+  OUString _sCurrencyStrg,
+  OUString _sCurrencyFormatStrg );
 
 /* Basic command: Format$( number,format-string )
 
diff --git a/basic/source/basmgr/basmgr.cxx b/basic/source/basmgr/basmgr.cxx
index 4e01bff8cc9d..e21b0560bfda 100644
--- a/basic/source/basmgr/basmgr.cxx
+++ b/basic/source/basmgr/basmgr.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include 
 #include 
 #include 
 #include 
@@ -107,9 +108,9 @@ class BasMgrContainerListenerImpl: public 
ContainerListenerHelper
 OUString maLibName;  // empty -> no lib, but lib container
 
 public:
-BasMgrContainerListenerImpl( BasicManager* pMgr, const OUString& aLibName )
+BasMgrContainerListenerImpl( BasicManager* pMgr, OUString aLibName )
 : mpMgr( pMgr )
-, maLibName( aLibName ) {}
+, maLibName(std::move( aLibName )) {}
 
 static void insertLibraryImpl( const uno::Reference< 
script::XLibraryContainer >& xScriptCont, BasicManager* pMgr,
const uno::Any& aLibAny, const OUString& 
aLibName );
@@ -1573,8 +1574,8 @@ class ModuleInfo_Impl : public ModuleInfoHelper
 OUString maSource;
 
 public:
-ModuleInfo_Impl( const OUString& aName, const OUString& aLanguage, const 
OUString& aSource )
-: maName( aName ), maLanguage( aLanguage), maSource( aSource ) {}
+ModuleInfo_Impl( OUString aName, OUString aLanguage, OUString aSource )
+: maName(std::move( aName )), maLanguage(std::move( aLanguage)), 
maSource(std::move( aSource )) {}
 
 // Methods XStarBasicModuleInfo
 virtual OUString SAL_CALL getName() override
@@ -1592,8 +1593,8 @@ class DialogInfo_Impl : public WeakImplHelper< 
script::XStarBasicDialogInfo >
 uno::Sequence< sal_Int8 > mData;
 
 public:
-DialogInfo_Impl( const OUString& aName, const uno::Sequence< sal_Int8 >& 
Data )
-: maName( aName ), mData( Data ) {}
+DialogInfo_Impl( OUString aName, const uno::Sequence< sal_Int8 >& Data )
+: maName(std::move( aName )), mData( Data ) {}
 
 // Methods XStarBasicDialogInfo
 virtual OUString SAL_CALL getName() override
@@ -1615,19 +1616,19 @@ class LibraryInfo_Impl : public We

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

2022-05-31 Thread Noel Grandin (via logerrit)
 sfx2/source/appl/childwin.cxx |6 +++---
 sfx2/source/appl/macroloader.cxx  |4 ++--
 sfx2/source/appl/xpackcreator.cxx |   22 +++---
 sfx2/source/config/evntconf.cxx   |6 +++---
 sfx2/source/doc/docinsert.cxx |8 
 5 files changed, 19 insertions(+), 27 deletions(-)

New commits:
commit af44198d80edce92bdbb82dfd6f218eeb6163484
Author: Noel Grandin 
AuthorDate: Tue May 31 09:57:02 2022 +0200
Commit: Noel Grandin 
CommitDate: Tue May 31 14:55:23 2022 +0200

these can be stack allocated

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

diff --git a/sfx2/source/appl/childwin.cxx b/sfx2/source/appl/childwin.cxx
index 8fb4fa8f6a01..75d72cae0e2b 100644
--- a/sfx2/source/appl/childwin.cxx
+++ b/sfx2/source/appl/childwin.cxx
@@ -355,14 +355,14 @@ void 
SfxChildWindow::InitializeChildWinFactory_Impl(sal_uInt16 nId, SfxChildWinI
 {
 // load configuration
 
-std::unique_ptr xWinOpt;
+std::optional xWinOpt;
 // first see if a module specific id exists
 if (rInfo.aModule.getLength())
-xWinOpt.reset(new SvtViewOptions(EViewType::Window, rInfo.aModule + 
"/" + OUString::number(nId)));
+xWinOpt.emplace(EViewType::Window, rInfo.aModule + "/" + 
OUString::number(nId));
 
 // if not then try the generic id
 if (!xWinOpt || !xWinOpt->Exists())
-xWinOpt.reset(new SvtViewOptions(EViewType::Window, 
OUString::number(nId)));
+xWinOpt.emplace(EViewType::Window, OUString::number(nId));
 
 if (xWinOpt->Exists() && xWinOpt->HasVisible() )
 rInfo.bVisible  = xWinOpt->IsVisible(); // set state from 
configuration. Can be overwritten by UserData, see below
diff --git a/sfx2/source/appl/macroloader.cxx b/sfx2/source/appl/macroloader.cxx
index 0892bb78e4d9..a6fe07000187 100644
--- a/sfx2/source/appl/macroloader.cxx
+++ b/sfx2/source/appl/macroloader.cxx
@@ -283,9 +283,9 @@ ErrCode SfxMacroLoader::loadMacro( const OUString& rURL, 
css::uno::Any& rRetval,
 
 {
 // attempt to protect the document against the script 
tampering with its Undo Context
-std::unique_ptr< ::framework::DocumentUndoGuard > 
pUndoGuard;
+std::optional< ::framework::DocumentUndoGuard > pUndoGuard;
 if ( bIsDocBasic )
-pUndoGuard.reset( new ::framework::DocumentUndoGuard( 
pDoc->GetModel() ) );
+pUndoGuard.emplace( pDoc->GetModel() );
 
 // execute the method
 SbxVariableRef retValRef = new SbxVariable;
diff --git a/sfx2/source/appl/xpackcreator.cxx 
b/sfx2/source/appl/xpackcreator.cxx
index 825a334f30ee..b9aa2b53cdcf 100644
--- a/sfx2/source/appl/xpackcreator.cxx
+++ b/sfx2/source/appl/xpackcreator.cxx
@@ -65,8 +65,6 @@ void SAL_CALL OPackageStructureCreator::convertToPackage( 
const OUString& aFolde
 ::ucbhelper::Content aContent;
 if( ::ucbhelper::Content::create( aFolderUrl, xComEnv, 
comphelper::getProcessComponentContext(), aContent ) )
 {
-std::unique_ptr pTempStream;
-
 OUString aTempURL = ::utl::TempFile().GetURL();
 try {
 if ( aContent.isFolder() )
@@ -80,18 +78,18 @@ void SAL_CALL OPackageStructureCreator::convertToPackage( 
const OUString& aFolde
 
 if ( !aTempURL.isEmpty() )
 {
-pTempStream.reset(new SvFileStream( aTempURL, 
StreamMode::STD_READWRITE ));
-tools::SvRef aTargetStorage = new SotStorage( 
true, *pTempStream );
+SvFileStream aTempStream( aTempURL, 
StreamMode::STD_READWRITE );
+tools::SvRef aTargetStorage = new SotStorage( 
true, aTempStream );
 aStorage->CopyTo( aTargetStorage.get() );
 aTargetStorage->Commit();
 
-if ( aStorage->GetError() || aTargetStorage->GetError() || 
pTempStream->GetError() )
+if ( aStorage->GetError() || aTargetStorage->GetError() || 
aTempStream.GetError() )
 throw io::IOException();
 
 aTargetStorage = nullptr;
 aStorage = nullptr;
 
-pTempStream->Seek( 0 );
+aTempStream.Seek( 0 );
 
 uno::Sequence< sal_Int8 > aSeq( 32000 );
 sal_uInt32 nRead = 0;
@@ -99,13 +97,13 @@ void SAL_CALL OPackageStructureCreator::convertToPackage( 
const OUString& aFolde
 if ( aSeq.getLength() < 32000 )
 aSeq.realloc( 32000 );
 
-nRead = pTempStream->ReadBytes(aSeq.getArray(), 32000);
+nRead = aTempStream.ReadBytes(aSeq.getArray(), 32000);
 if ( nRead < 32000 )
 aSeq.realloc( nRe

[Libreoffice-commits] core.git: comphelper/source include/comphelper

2022-05-31 Thread Stephan Bergmann (via logerrit)
 comphelper/source/property/propagg.cxx |5 +++--
 include/comphelper/propagg.hxx |5 +++--
 2 files changed, 6 insertions(+), 4 deletions(-)

New commits:
commit 6f26b6aeca827329dd8d55f344e509fcf7685172
Author: Stephan Bergmann 
AuthorDate: Tue May 31 10:23:17 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 14:53:25 2022 +0200

Use more appropriate type for comphelper::internal::OPropertyAccessor::nPos

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

diff --git a/comphelper/source/property/propagg.cxx 
b/comphelper/source/property/propagg.cxx
index fb2db9589c8e..0d8ea6a10bb9 100644
--- a/comphelper/source/property/propagg.cxx
+++ b/comphelper/source/property/propagg.cxx
@@ -27,6 +27,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 
@@ -83,7 +84,7 @@ 
OPropertyArrayAggregationHelper::OPropertyArrayAggregationHelper(
 std::unordered_set< sal_Int32 > existingHandles;
 existingHandles.reserve( m_aProperties.size() );
 sal_Int32 nAggregateHandle = _nFirstAggregateId;
-for ( sal_Int32 nMPLoop = 0; nMPLoop < static_cast< sal_Int32 >( 
m_aProperties.size() ); ++nMPLoop )
+for ( std::size_t nMPLoop = 0; nMPLoop < m_aProperties.size(); ++nMPLoop )
 {
 auto &prop = m_aProperties[ nMPLoop ];
 if ( aDelegatorProps.find( prop.Name ) != aDelegatorProps.end() )
@@ -209,7 +210,7 @@ bool 
OPropertyArrayAggregationHelper::fillAggregatePropertyInfoByHandle(
 *_pOriginalHandle = (*i).second.nOriginalHandle;
 if (_pPropName)
 {
-OSL_ENSURE((*i).second.nPos < 
static_cast(m_aProperties.size()),"Invalid index for sequence!");
+OSL_ENSURE((*i).second.nPos < m_aProperties.size(),"Invalid index 
for sequence!");
 const css::beans::Property& rProperty = 
m_aProperties[(*i).second.nPos];
 *_pPropName = rProperty.Name;
 }
diff --git a/include/comphelper/propagg.hxx b/include/comphelper/propagg.hxx
index f7e47298b88b..949251892623 100644
--- a/include/comphelper/propagg.hxx
+++ b/include/comphelper/propagg.hxx
@@ -29,6 +29,7 @@
 #include 
 #include 
 
+#include 
 #include 
 #include 
 #include 
@@ -49,10 +50,10 @@ namespace internal
 struct OPropertyAccessor
 {
 sal_Int32   nOriginalHandle;
-sal_Int32   nPos;
+std::size_t nPos;
 boolbAggregate;
 
-OPropertyAccessor(sal_Int32 _nOriginalHandle, sal_Int32 _nPos, bool 
_bAggregate)
+OPropertyAccessor(sal_Int32 _nOriginalHandle, std::size_t _nPos, bool 
_bAggregate)
 :nOriginalHandle(_nOriginalHandle) ,nPos(_nPos) 
,bAggregate(_bAggregate) { }
 
 bool operator==(const OPropertyAccessor& rOb) const { return nPos == 
rOb.nPos; }


[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-4' - 2 commits - g vcl/source vcl/win

2022-05-31 Thread Michael Stahl (via logerrit)
 g|   18 +-
 vcl/source/window/window.cxx |4 
 vcl/win/gdi/salvd.cxx|1 +
 vcl/win/window/salframe.cxx  |   10 ++
 4 files changed, 24 insertions(+), 9 deletions(-)

New commits:
commit 89612b363f3f11248beea6fa98071c80e8ea7a9c
Author: Michael Stahl 
AuthorDate: Tue May 31 14:38:02 2022 +0200
Commit: Michael Stahl 
CommitDate: Tue May 31 14:41:20 2022 +0200

vcl: add some WinSalGraphics debug logging

Change-Id: I70f96bef0db4d40b70e08426779435f75b0241fa

diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 9a5a6cde533b..cbd93e3e44bf 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -86,6 +86,7 @@ Window::Window( WindowType nType )
 : OutputDevice(OUTDEV_WINDOW)
 , mpWindowImpl(new WindowImpl( nType ))
 {
+SAL_INFO("vcl.temp", "Window::Window: " << this);
 // true: this outdev will be mirrored if RTL window layout (UI mirroring) 
is globally active
 mbEnableRTL = AllSettings::GetLayoutRTL();
 }
@@ -94,6 +95,7 @@ Window::Window( vcl::Window* pParent, WinBits nStyle )
 : OutputDevice(OUTDEV_WINDOW)
 , mpWindowImpl(new WindowImpl( WindowType::WINDOW ))
 {
+SAL_INFO("vcl.temp", "Window::Window: " << this);
 // true: this outdev will be mirrored if RTL window layout (UI mirroring) 
is globally active
 mbEnableRTL = AllSettings::GetLayoutRTL();
 
@@ -140,6 +142,7 @@ bool Window::IsDisposed() const
 
 void Window::dispose()
 {
+SAL_INFO("vcl.temp", "Window::dispose: " << this << " mpFrame " << 
(mpWindowImpl ? mpWindowImpl->mpFrame : nullptr));
 assert( mpWindowImpl );
 assert( !mpWindowImpl->mbInDispose ); // should only be called from 
disposeOnce()
 assert( (!mpWindowImpl->mpParent ||
@@ -1037,6 +1040,7 @@ void Window::ImplInit( vcl::Window* pParent, WinBits 
nStyle, SystemParentData* p
 pFrame = pSVData->mpDefInst->CreateChildFrame( pSystemParentData, 
nFrameStyle | SalFrameStyleFlags::PLUG );
 else
 pFrame = pSVData->mpDefInst->CreateFrame( pParentFrame, 
nFrameStyle );
+SAL_INFO("vcl.temp", "Window::ImplInit: " << this << " pFrame " << 
pFrame);
 if ( !pFrame )
 {
 // do not abort but throw an exception, may be the current thread 
terminates anyway (plugin-scenario)
diff --git a/vcl/win/gdi/salvd.cxx b/vcl/win/gdi/salvd.cxx
index d06412bc6743..b506fd4ea5cc 100644
--- a/vcl/win/gdi/salvd.cxx
+++ b/vcl/win/gdi/salvd.cxx
@@ -124,6 +124,7 @@ std::unique_ptr 
WinSalInstance::CreateVirtualDevice( SalGraphi
 
 WinSalGraphics* pVirGraphics = new 
WinSalGraphics(WinSalGraphics::VIRTUAL_DEVICE,
   pGraphics->isScreen(), 
nullptr, pVDev);
+SAL_INFO("vcl.temp", "new WinSalGraphics: " << pVirGraphics << " for " << 
pVDev);
 
 // by default no! mirroring for VirtualDevices, can be enabled with 
EnableRTL()
 pVirGraphics->SetLayout( SalLayoutFlags::NONE );
diff --git a/vcl/win/window/salframe.cxx b/vcl/win/window/salframe.cxx
index dd5f8fbb8533..aed15def4240 100644
--- a/vcl/win/window/salframe.cxx
+++ b/vcl/win/window/salframe.cxx
@@ -828,6 +828,7 @@ void SetForegroundWindow_Impl(HWND hwnd)
 
 WinSalFrame::WinSalFrame()
 {
+SAL_INFO("vcl.temp", "new WinSalFrame: " << this);
 SalData* pSalData = GetSalData();
 
 mhWnd   = nullptr;
@@ -929,6 +930,7 @@ bool WinSalFrame::ReleaseFrameGraphicsDC( WinSalGraphics* 
pGraphics )
 
 WinSalFrame::~WinSalFrame()
 {
+SAL_INFO("vcl.temp", "del WinSalFrame: " << this);
 SalData* pSalData = GetSalData();
 
 if( mpClipRgnData )
@@ -945,6 +947,7 @@ WinSalFrame::~WinSalFrame()
 if ( mpThreadGraphics )
 {
 ReleaseFrameGraphicsDC( mpThreadGraphics );
+SAL_INFO("vcl.temp", "del WinSalGraphics: " << mpThreadGraphics << " 
on " << this);
 delete mpThreadGraphics;
 mpThreadGraphics = nullptr;
 }
@@ -953,6 +956,7 @@ WinSalFrame::~WinSalFrame()
 if ( mpLocalGraphics )
 {
 ReleaseFrameGraphicsDC( mpLocalGraphics );
+SAL_INFO("vcl.temp", "del WinSalGraphics: " << mpLocalGraphics << " on 
" << this);
 delete mpLocalGraphics;
 mpLocalGraphics = nullptr;
 }
@@ -1028,7 +1032,10 @@ SalGraphics* WinSalFrame::AcquireGraphics()
 return nullptr;
 
 if ( !mpThreadGraphics )
+{
 mpThreadGraphics = new WinSalGraphics(WinSalGraphics::WINDOW, 
true, mhWnd, this);
+SAL_INFO("vcl.temp", "new WinSalGraphics: " << mpThreadGraphics << 
" on " << this);
+}
 pGraphics = mpThreadGraphics;
 assert( !pGraphics->getHDC() );
 hDC = reinterpret_cast(static_cast(SendMessageW( 
pSalData->mpInstance->mhComWnd,
@@ -1037,7 +1044,10 @@ SalGraphics* WinSalFrame::AcquireGraphics()
 else
 {
 if ( !mpLocalGraphics )
+{
 mpLocalGraphics = new WinSalGraphics(WinSalGrap

[Libreoffice-commits] core.git: scripting/java

2022-05-31 Thread Stephan Bergmann (via logerrit)
 scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java  
   |4 
 
scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
 |   91 --
 2 files changed, 43 insertions(+), 52 deletions(-)

New commits:
commit 2a263cbdaf16c723a93af020ebc11b3e07210242
Author: Stephan Bergmann 
AuthorDate: Tue May 31 09:27:20 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Tue May 31 14:51:57 2022 +0200

tdf#145527 Revert "Related tdf#116767: Call URLClassLoader.close"

This reverts commit 418533f0af7cd303d559c8fb136c49e7e9fb0d79.  Turned out 
that
closing the given URLClassLoader once the script's main class has been 
loaded
prevents the script from loading further classes located next to that main
class.  So abandon the Coverity suggestion that such class loaders should be
closed promptly to avoid resource leaks.

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

diff --git 
a/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java 
b/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
index 0974b8874110..b5e6e3085bd2 100644
--- 
a/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
+++ 
b/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
@@ -33,7 +33,7 @@ public class ClassLoaderFactory {
 
 private ClassLoaderFactory() {}
 
-public static URLClassLoader getURLClassLoader(ScriptMetaData scriptData) {
+public static ClassLoader getURLClassLoader(ScriptMetaData scriptData) {
 ClassLoader parent = scriptData.getClass().getClassLoader();
 URL[] classPath = scriptData.getClassPath();
 LogUtils.DEBUG("Classpath has length " + classPath.length);
@@ -45,7 +45,7 @@ public class ClassLoaderFactory {
 return getURLClassLoader(parent, classPath);
 }
 
-public static URLClassLoader getURLClassLoader(final ClassLoader parent,
+public static ClassLoader getURLClassLoader(final ClassLoader parent,
 final URL[] classpath) {
 return AccessController.doPrivileged(
 new PrivilegedAction() {
diff --git 
a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
 
b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
index 63dc3169f759..eeea0d49ebe5 100644
--- 
a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
+++ 
b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
@@ -45,8 +45,6 @@ import com.sun.star.uno.Any;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.XComponentContext;
 
-import java.io.IOException;
-import java.net.URLClassLoader;
 import java.util.ArrayList;
 
 public class ScriptProviderForJava {
@@ -184,63 +182,56 @@ class ScriptImpl implements XScript {
 ScriptDescriptor scriptDesc =
 new ScriptDescriptor(metaData.getLanguageName());
 
+LogUtils.DEBUG("Classloader starting...");
+
+ClassLoader scriptLoader =
+ClassLoaderFactory.getURLClassLoader(metaData);
+
+LogUtils.DEBUG("Classloader finished...");
+
+ArrayList invocationArgList = new ArrayList();
 Object[] invocationArgs = null;
-ScriptProxy script = null;
 
-LogUtils.DEBUG("Classloader starting...");
+LogUtils.DEBUG("Parameter Mapping...");
 
-try (URLClassLoader scriptLoader = 
ClassLoaderFactory.getURLClassLoader(metaData)) {
-LogUtils.DEBUG("Classloader finished...");
+// Setup Context Object
+XScriptContext xSc =
+ScriptContext.createContext(m_xModel, m_xInvocContext,
+m_xContext, m_xMultiComponentFactory);
 
-ArrayList invocationArgList = new ArrayList();
+scriptDesc.addArgumentType(XScriptContext.class);
+invocationArgList.add(xSc);
 
-LogUtils.DEBUG("Parameter Mapping...");
+for (int i = 0; i < params.length; i++) {
+scriptDesc.addArgumentType(params[ i ].getClass());
+invocationArgList.add(params[ i ]);
+}
 
-// Setup Context Object
-XScriptContext xSc =
-ScriptContext.createContext(m_xModel, m_xInvocContext,
-m_xContext, 
m_xMultiComponentFactory);
+if (!invocationArgList.isEmpty()) {
+invocationArgs = invocationArgList.toArray();
+}
 
-scriptDesc.addArgumentType(XScriptContext.class);
-invocationArgList.add(xSc);
+LogUtils.DEBUG("ScriptProxy starting... ");
+ScriptProxy script = null;
 
-for (int i = 0; i < params.length; i++) {
-scriptDesc.addArgumentType(params[ i ].

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

2022-05-31 Thread Miklos Vajna (via logerrit)
 sw/qa/extras/globalfilter/globalfilter.cxx|  276 +++---
 sw/qa/extras/ooxmlexport/ooxmlexport13.cxx|   97 ++-
 sw/qa/extras/ooxmlexport/ooxmlexport8.cxx |   54 +++-
 sw/qa/extras/ooxmlexport/ooxmlfieldexport.cxx |  136 --
 sw/qa/extras/ooxmlimport/ooxmlimport2.cxx |   42 +--
 sw/source/filter/ww8/docxattributeoutput.cxx  |2 
 writerfilter/source/dmapper/DomainMapper.cxx  |   35 ++
 writerfilter/source/dmapper/DomainMapper_Impl.cxx |   50 +++
 writerfilter/source/dmapper/SdtHelper.cxx |   11 
 writerfilter/source/dmapper/SdtHelper.hxx |   17 +
 10 files changed, 495 insertions(+), 225 deletions(-)

New commits:
commit 33d8d3bc06f07379755bfccf73e15b4cadb919d1
Author: Miklos Vajna 
AuthorDate: Mon May 30 09:00:25 2022 +0200
Commit: Miklos Vajna 
CommitDate: Tue May 31 14:41:12 2022 +0200

sw content controls, date: add DOCX import

- map
  


  
  to the Date, DateFormat and DateLanguage UNO properties of content
  controls instead of fieldmarks, which model content controls poorly

- fix CppunitTest_sw_ooxmlexport8's testN820509: date SDT is now a
  content control

- add current date DOCX import

- fix CppunitTest_sw_ooxmlexport13's testDateControl: date SDT is now a
  content control

- fix CppunitTest_sw_ooxmlexport13's testInvalidDateFormField: date SDT
  is now a content control

- fix CppunitTest_sw_ooxmlexport5's testfdo83048: minimal support for
  nested SDTs in DomainMapper::lcl_attribute()

- fix CppunitTest_sw_ooxmlfieldexport's testDateFieldAtEndOfParagraph:
  date SDT is now a content control

- fix CppunitTest_sw_ooxmlfieldexport's testDateFieldInShape: date SDT
  is now a content control

- fix CppunitTest_sw_ooxmlfieldexport's testSdtDateDuplicate: date SDT
  is now a content control

- fix CppunitTest_sw_ooxmlfieldexport's testSdtDatePicker:

  - retain placeholder

  - retain data binding

  - retain color

- fix CppunitTest_sw_ooxmlimport2's testTdf121203: date SDT is now a
  content control

- fix CppunitTest_sw_globalfilter's
  testDateFormFieldCharacterFormatting: date SDT is now a content control

- fix CppunitTest_sw_globalfilter's testDateFormField: date SDT is now a
  content control

(cherry picked from commit 5ee8670f18cb8b1913a23d04590d6a31ac9730de)

Conflicts:
sw/qa/extras/globalfilter/globalfilter.cxx

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

diff --git a/sw/qa/extras/globalfilter/globalfilter.cxx 
b/sw/qa/extras/globalfilter/globalfilter.cxx
index 04d24a825f27..ee6e9f2fbcd5 100644
--- a/sw/qa/extras/globalfilter/globalfilter.cxx
+++ b/sw/qa/extras/globalfilter/globalfilter.cxx
@@ -1651,92 +1651,170 @@ void Test::testDateFormField()
 mxComponent = loadFromDesktop(aTempFile.GetURL(), 
"com.sun.star.text.TextDocument");
 
 // Check the document after round trip
-SwXTextDocument* pTextDoc = dynamic_cast(mxComponent.get());
-CPPUNIT_ASSERT_MESSAGE(sFailedMessage.getStr(), pTextDoc);
-SwDoc* pDoc = pTextDoc->GetDocShell()->GetDoc();
-IDocumentMarkAccess* pMarkAccess = pDoc->getIDocumentMarkAccess();
-
-CPPUNIT_ASSERT_EQUAL_MESSAGE(sFailedMessage.getStr(), sal_Int32(5), 
pMarkAccess->getAllMarksCount());
-
-int nIndex = 0;
-for(auto aIter = pMarkAccess->getAllMarksBegin(); aIter != 
pMarkAccess->getAllMarksEnd(); ++aIter)
+if (rFilterName == "writer8")
 {
-::sw::mark::IDateFieldmark* pFieldmark = 
dynamic_cast<::sw::mark::IDateFieldmark*>(*aIter);
-CPPUNIT_ASSERT_MESSAGE(sFailedMessage.getStr(), pFieldmark);
-CPPUNIT_ASSERT_EQUAL_MESSAGE(sFailedMessage.getStr(), 
OUString(ODF_FORMDATE), pFieldmark->GetFieldname());
+SwXTextDocument* pTextDoc = dynamic_cast(mxComponent.get());
+CPPUNIT_ASSERT_MESSAGE(sFailedMessage.getStr(), pTextDoc);
+SwDoc* pDoc = pTextDoc->GetDocShell()->GetDoc();
+IDocumentMarkAccess* pMarkAccess = pDoc->getIDocumentMarkAccess();
 
-// Check date form field's parameters.
-const sw::mark::IFieldmark::parameter_map_t* const pParameters = 
pFieldmark->GetParameters();
-OUString sDateFormat;
-auto pResult = pParameters->find(ODF_FORMDATE_DATEFORMAT);
-if (pResult != pParameters->end())
-{
-pResult->second >>= sDateFormat;
-}
+CPPUNIT_ASSERT_EQUAL_MESSAGE(sFailedMessage.getStr(), 
sal_Int32(5), pMarkAccess->getAllMarksCount());
 
-OUString sLang;
-   

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - 2 commits - schema/libreoffice sw/inc sw/qa sw/source xmloff/qa xmloff/source

2022-05-31 Thread Miklos Vajna (via logerrit)
 schema/libreoffice/OpenDocument-v1.3+libreoffice-schema.rng |5 
 sw/inc/formatcontentcontrol.hxx |   60 
 sw/inc/unoprnms.hxx |6 
 sw/qa/core/unocore/unocore.cxx  |   23 +
 sw/qa/extras/ooxmlexport/ooxmlexport17.cxx  |   12 
 sw/qa/uibase/wrtsh/wrtsh.cxx|2 
 sw/source/core/crsr/datecontentcontrolbutton.cxx|   12 
 sw/source/core/txtnode/attrcontentcontrol.cxx   |   73 +
 sw/source/core/unocore/unocontentcontrol.cxx|  168 
 sw/source/core/unocore/unomap1.cxx  |6 
 sw/source/filter/ww8/docxattributeoutput.cxx|   32 ++
 sw/source/uibase/wrtsh/wrtsh3.cxx   |5 
 xmloff/qa/unit/data/content-control-date.fodt   |2 
 xmloff/qa/unit/text.cxx |6 
 xmloff/source/text/txtparae.cxx |6 
 xmloff/source/text/xmlcontentcontrolcontext.cxx |9 
 xmloff/source/text/xmlcontentcontrolcontext.hxx |1 
 17 files changed, 424 insertions(+), 4 deletions(-)

New commits:
commit 6b33197361d484dea91646949945e258315fa43b
Author: Miklos Vajna 
AuthorDate: Fri May 27 12:35:20 2022 +0200
Commit: Miklos Vajna 
CommitDate: Tue May 31 14:40:58 2022 +0200

sw content controls, date: preserve more properties

While working on the DOCX import for dates, it turns out there is a need
to store more properties for DOCX export purposes. Given that these are
potentially useful for full support, add dedicated UNO API and DOCX
export for these (i.e. not just grab-bag), but omit UI or ODT filter for
now. This includes:

- 

- 

- 

And tests for all these.

(cherry picked from commit 0f70f4d76b5f68e5b1d81f0e300435ccef893c9a)

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

diff --git a/sw/inc/formatcontentcontrol.hxx b/sw/inc/formatcontentcontrol.hxx
index 90452dfaeb2b..16335c2e0b63 100644
--- a/sw/inc/formatcontentcontrol.hxx
+++ b/sw/inc/formatcontentcontrol.hxx
@@ -138,6 +138,21 @@ class SW_DLLPUBLIC SwContentControl : public 
sw::BroadcastingModify
 /// Date in -MM-DDT00:00:00Z format.
 OUString m_aCurrentDate;
 
+/// The placeholder's doc part: just remembered.
+OUString m_aPlaceholderDocPart;
+
+/// The data bindings's prefix mappings: just remembered.
+OUString m_aDataBindingPrefixMappings;
+
+/// The data bindings's XPath: just remembered.
+OUString m_aDataBindingXpath;
+
+/// The data bindings's store item ID: just remembered.
+OUString m_aDataBindingStoreItemID;
+
+/// The color: just remembered.
+OUString m_aColor;
+
 /// Stores a list item index, in case the doc model is not yet updated.
 std::optional m_oSelectedListItem;
 
@@ -232,6 +247,13 @@ public:
 /// Formats m_oSelectedDate, taking m_aDateFormat and m_aDateLanguage into 
account.
 OUString GetDateString() const;
 
+void SetPlaceholderDocPart(const OUString& rPlaceholderDocPart)
+{
+m_aPlaceholderDocPart = rPlaceholderDocPart;
+}
+
+OUString GetPlaceholderDocPart() const { return m_aPlaceholderDocPart; }
+
 void SetSelectedListItem(std::optional oSelectedListItem)
 {
 m_oSelectedListItem = oSelectedListItem;
@@ -244,6 +266,31 @@ public:
 std::optional GetSelectedDate() const { return m_oSelectedDate; }
 
 virtual void dumpAsXml(xmlTextWriterPtr pWriter) const;
+
+void SetDataBindingPrefixMappings(const OUString& 
rDataBindingPrefixMappings)
+{
+m_aDataBindingPrefixMappings = rDataBindingPrefixMappings;
+}
+
+OUString GetDataBindingPrefixMappings() const { return 
m_aDataBindingPrefixMappings; }
+
+void SetDataBindingXpath(const OUString& rDataBindingXpath)
+{
+m_aDataBindingXpath = rDataBindingXpath;
+}
+
+OUString GetDataBindingXpath() const { return m_aDataBindingXpath; }
+
+void SetDataBindingStoreItemID(const OUString& rDataBindingStoreItemID)
+{
+m_aDataBindingStoreItemID = rDataBindingStoreItemID;
+}
+
+OUString GetDataBindingStoreItemID() const { return 
m_aDataBindingStoreItemID; }
+
+void SetColor(const OUString& rColor) { m_aColor = rColor; }
+
+OUString GetColor() const { return m_aColor; }
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx
index 72aaf746cb1e..1ac7b671c695 100644
--- a/sw/inc/unoprnms.hxx
+++ b/sw/inc/unoprnms.hxx
@@ -880,6 +880,11 @@
 #define UNO_NAME_DATE_FORMAT "DateFormat"
 #define UNO_NAME_DATE_LANGUAGE "DateLanguage"
 #define UNO_NAME_CURRENT_DATE "CurrentDate"
+#define UNO_NAM

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

2022-05-31 Thread Miklos Vajna (via logerrit)
 sw/qa/extras/ooxmlexport/ooxmlexport17.cxx   |   34 +++
 sw/source/filter/ww8/docxattributeoutput.cxx |   18 ++
 2 files changed, 52 insertions(+)

New commits:
commit c04e1a32a1610c735ef2de6e8fde107abb1b66ae
Author: Miklos Vajna 
AuthorDate: Fri May 27 08:06:18 2022 +0200
Commit: Miklos Vajna 
CommitDate: Tue May 31 14:40:08 2022 +0200

sw content controls, date: add DOCX export

Map the Date, DateFormat and DateLanguage UNO properties to:

  


  

(cherry picked from commit 10b1a9eb8588e15ea5e98001cc4d5ab2d56604f3)

Conflicts:
sw/qa/extras/ooxmlexport/ooxmlexport17.cxx

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

diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx
index c428d0225611..c0a0d401da35 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport17.cxx
@@ -274,6 +274,40 @@ CPPUNIT_TEST_FIXTURE(Test, testPictureContentControlExport)
 assertXPath(pXmlDoc, "//w:sdt/w:sdtPr/w:picture", 1);
 }
 
+CPPUNIT_TEST_FIXTURE(Test, testDateContentControlExport)
+{
+// Given a document with a date content control around a text portion:
+mxComponent = loadFromDesktop("private:factory/swriter");
+uno::Reference xMSF(mxComponent, 
uno::UNO_QUERY);
+uno::Reference xTextDocument(mxComponent, 
uno::UNO_QUERY);
+uno::Reference xText = xTextDocument->getText();
+uno::Reference xCursor = xText->createTextCursor();
+xText->insertString(xCursor, "test", /*bAbsorb=*/false);
+xCursor->gotoStart(/*bExpand=*/false);
+xCursor->gotoEnd(/*bExpand=*/true);
+uno::Reference xContentControl(
+xMSF->createInstance("com.sun.star.text.ContentControl"), 
uno::UNO_QUERY);
+uno::Reference xContentControlProps(xContentControl, 
uno::UNO_QUERY);
+xContentControlProps->setPropertyValue("Date", uno::Any(true));
+xContentControlProps->setPropertyValue("DateFormat", 
uno::Any(OUString("M/d/")));
+xContentControlProps->setPropertyValue("DateLanguage", 
uno::Any(OUString("en-US")));
+xText->insertTextContent(xCursor, xContentControl, /*bAbsorb=*/true);
+
+// When exporting to DOCX:
+save("Office Open XML Text", maTempFile);
+mbExported = true;
+
+// Then make sure the expected markup is used:
+xmlDocUniquePtr pXmlDoc = parseExport("word/document.xml");
+// Without the fix in place, this test would have failed with:
+// - Expected: 1
+// - Actual  : 0
+// - XPath '//w:sdt/w:sdtPr/w:date/w:dateFormat' number of nodes is 
incorrect
+// i.e. the  was lost on export.
+assertXPath(pXmlDoc, "//w:sdt/w:sdtPr/w:date/w:dateFormat", "val", 
"M/d/");
+assertXPath(pXmlDoc, "//w:sdt/w:sdtPr/w:date/w:lid", "val", "en-US");
+}
+
 DECLARE_OOXMLEXPORT_TEST(testTdf137466, "tdf137466.docx")
 {
 xmlDocUniquePtr pXmlDoc = parseExport("word/document.xml");
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx 
b/sw/source/filter/ww8/docxattributeoutput.cxx
index 7e30ec38e1ac..f253e77658d7 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -2380,6 +2380,24 @@ void DocxAttributeOutput::WriteContentControlStart()
 m_pSerializer->endElementNS(XML_w, XML_dropDownList);
 }
 
+if (m_pContentControl->GetDate())
+{
+m_pSerializer->startElementNS(XML_w, XML_date);
+OUString aDateFormat = m_pContentControl->GetDateFormat();
+if (!aDateFormat.isEmpty())
+{
+m_pSerializer->singleElementNS(XML_w, XML_dateFormat, FSNS(XML_w, 
XML_val),
+   aDateFormat);
+}
+OUString aDateLanguage = m_pContentControl->GetDateLanguage();
+if (!aDateLanguage.isEmpty())
+{
+m_pSerializer->singleElementNS(XML_w, XML_lid, FSNS(XML_w, 
XML_val),
+   aDateLanguage);
+}
+m_pSerializer->endElementNS(XML_w, XML_date);
+}
+
 m_pSerializer->endElementNS(XML_w, XML_sdtPr);
 m_pSerializer->startElementNS(XML_w, XML_sdtContent);
 m_pContentControl = nullptr;


[Libreoffice-commits] core.git: officecfg/registry sw/inc sw/qa sw/sdi sw/source sw/uiconfig

2022-05-31 Thread Miklos Vajna (via logerrit)
 officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu |8 +++
 sw/inc/cmdid.h  |1 
 sw/inc/strings.hrc  |1 
 sw/qa/uibase/wrtsh/wrtsh.cxx|   21 
++
 sw/sdi/_textsh.sdi  |6 ++
 sw/sdi/swriter.sdi  |   17 

 sw/source/uibase/shells/textsh.cxx  |5 ++
 sw/source/uibase/uiview/view.cxx|1 
 sw/source/uibase/wrtsh/wrtsh1.cxx   |   18 

 sw/uiconfig/swriter/menubar/menubar.xml |1 
 sw/uiconfig/swriter/menubar/mscompatibleformsmenu.xml   |2 
 11 files changed, 79 insertions(+), 2 deletions(-)

New commits:
commit 5f335154459e044b6035f099a3e08c98fe258d2b
Author: Miklos Vajna 
AuthorDate: Tue May 31 09:29:54 2022 +0200
Commit: Miklos Vajna 
CommitDate: Tue May 31 14:39:26 2022 +0200

sw content controls, date: add insert UI

- handle the date case in SwWrtShell::InsertContentControl()

- expose this as a new .uno:InsertDateContentControl command

- add the new uno command to the default & MS-compatible menus

- hide the old .uno:DatePickerFormField from the menus that has the
  problems described in the sw::mark::DateFieldmark documentation.

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

diff --git 
a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
index 2ca80032ed48..7c7dede5e219 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
@@ -659,6 +659,14 @@
   1
 
   
+  
+
+  Insert Date Content Control
+
+
+  1
+
+  
   
 
   Insert Other Objects
diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h
index 8b102cae3bf1..ec35e740b42f 100644
--- a/sw/inc/cmdid.h
+++ b/sw/inc/cmdid.h
@@ -224,6 +224,7 @@ class SwUINumRuleItem;
 #define FN_INSERT_DROPDOWN_CONTENT_CONTROL (FN_INSERT + 24)  /* Dropdown 
content control */
 #define FN_CONTENT_CONTROL_PROPERTIES (FN_INSERT + 25)  /* Content control 
properties */
 #define FN_INSERT_PICTURE_CONTENT_CONTROL (FN_INSERT + 26) /* Picture content 
control */
+#define FN_INSERT_DATE_CONTENT_CONTROL (FN_INSERT + 27) /* Date content 
control */
 #define FN_POSTIT   (FN_INSERT + 29)/* Insert/edit PostIt */
 #define FN_INSERT_TABLE (FN_INSERT + 30)/* Insert Table */
 #define FN_INSERT_STRING(FN_INSERT+31)
diff --git a/sw/inc/strings.hrc b/sw/inc/strings.hrc
index 4136c2bce029..5a2ff72b0b3b 100644
--- a/sw/inc/strings.hrc
+++ b/sw/inc/strings.hrc
@@ -1431,6 +1431,7 @@
 #define STR_WRAP_PANEL_CUSTOM_STR   NC_("sidebarwrap|customlabel", 
"Custom")
 #define STR_CONTENT_CONTROL_PLACEHOLDER 
NC_("STR_CONTENT_CONTROL_PLACEHOLDER", "Click here to enter text")
 #define STR_DROPDOWN_CONTENT_CONTROL_PLACEHOLDER 
NC_("STR_DROPDOWN_CONTENT_CONTROL_PLACEHOLDER", "Choose an item")
+#define STR_DATE_CONTENT_CONTROL_PLACEHOLDER 
NC_("STR_DATE_CONTENT_CONTROL_PLACEHOLDER", "Choose a date")
 
 #endif
 
diff --git a/sw/qa/uibase/wrtsh/wrtsh.cxx b/sw/qa/uibase/wrtsh/wrtsh.cxx
index 706e1c6653a7..87537e887242 100644
--- a/sw/qa/uibase/wrtsh/wrtsh.cxx
+++ b/sw/qa/uibase/wrtsh/wrtsh.cxx
@@ -346,6 +346,27 @@ CPPUNIT_TEST_FIXTURE(Test, testSelectDateContentControl)
 CPPUNIT_ASSERT_EQUAL(OUString("2022-05-24T00:00:00Z"),
  
rFormatContentControl.GetContentControl()->GetCurrentDate());
 }
+
+CPPUNIT_TEST_FIXTURE(Test, testInsertDateContentControl)
+{
+// Given an empty document:
+SwDoc* pDoc = createSwDoc();
+
+// When inserting a date content control:
+SwWrtShell* pWrtShell = pDoc->GetDocShell()->GetWrtShell();
+pWrtShell->InsertContentControl(SwContentControlType::DATE);
+
+// Then make sure that the matching text attribute is added to the 
document model:
+SwTextNode* pTextNode = pWrtShell->GetCursor()->GetNode().GetTextNode();
+SwTextAttr* pAttr = pTextNode->GetTextAttrForCharAt(0, 
RES_TXTATR_CONTENTCONTROL);
+auto pTextContentControl = 
static_txtattr_cast(pAttr);
+auto& rFormatContentControl
+= static_cast(pTextContentControl->GetAttr());
+std::shared_ptr pContentControl = 
rFormatContentControl.GetContentControl();
+// Without the accompanying fix in place, this test would have failed, 
there was no special
+// handling for date content control.
+CPPUNIT_ASSERT(pContentCont

[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - sfx2/source

2022-05-31 Thread Aron Budea (via logerrit)
 sfx2/source/doc/objstor.cxx |   31 ---
 1 file changed, 31 deletions(-)

New commits:
commit 0293f34b57b5de76d52b69899653a84d80786eda
Author: Aron Budea 
AuthorDate: Tue May 31 14:25:24 2022 +0200
Commit: Aron Budea 
CommitDate: Tue May 31 14:26:08 2022 +0200

Revert "sw: restore UI language to en while saving"

This reverts commit 01a9f402db5840801e0eb004112bf19d5225f32c.
Reason: T35383 Writer: Page breaks saved in German UI/locale turn into line 
breaks

Change-Id: I95d23aeb26fe0177e24db81f3dc55fb6ef30cd0f

diff --git a/sfx2/source/doc/objstor.cxx b/sfx2/source/doc/objstor.cxx
index e456f5ea951a..8d101e8aac04 100644
--- a/sfx2/source/doc/objstor.cxx
+++ b/sfx2/source/doc/objstor.cxx
@@ -105,7 +105,6 @@
 #include 
 #include 
 #include 
-#include 
 
 #include 
 #include 
@@ -3159,11 +3158,6 @@ bool SfxObjectShell::LoadOwnFormat( SfxMedium& rMedium )
 return false;
 }
 
-namespace
-{
-static LanguageTag g_defaultLanguageTag("en-US", true);
-}
-
 bool SfxObjectShell::SaveAsOwnFormat( SfxMedium& rMedium )
 {
 uno::Reference< embed::XStorage > xStorage = rMedium.GetStorage();
@@ -3186,31 +3180,6 @@ bool SfxObjectShell::SaveAsOwnFormat( SfxMedium& rMedium 
)
 pImpl->aBasicManager.storeLibrariesToStorage( xStorage );
 }
 #endif
-
-// Because XMLTextFieldExport::ExportFieldDeclarations (called from 
SwXMLExport)
-// calls SwXTextFieldMasters::getByName, which in turn maps property 
names by
-// calling SwStyleNameMapper::GetTextUINameArray, which uses
-// SvtSysLocale().GetUILanguageTag() to do the mapping, saving 
indirectly depends
-// on the UI language. This is an unfortunate depenency.
-// Here we restore to English
-const auto viewLanguage = comphelper::LibreOfficeKit::getLanguageTag();
-
-// Use the default language for saving and restore later if necessary.
-bool restoreLanguage = false;
-if (comphelper::LibreOfficeKit::isActive() && viewLanguage != 
g_defaultLanguageTag)
-{
-restoreLanguage = true;
-comphelper::LibreOfficeKit::setLanguageTag(g_defaultLanguageTag);
-}
-
-// Restore the view's original language automatically and as necessary.
-const ::comphelper::ScopeGuard aGuard(
-[&viewLanguage, restoreLanguage]()
-{
-if (restoreLanguage && viewLanguage != 
comphelper::LibreOfficeKit::getLanguageTag())
-comphelper::LibreOfficeKit::setLanguageTag(viewLanguage);
-});
-
 return SaveAs( rMedium );
 }
 else return false;


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - external/python3

2022-05-31 Thread Andras Timar (via logerrit)
 external/python3/ExternalPackage_python3.mk |6 ++
 1 file changed, 6 insertions(+)

New commits:
commit 7cbdc774c90c0160f80e16c6a79abc58ca4b3dee
Author: Andras Timar 
AuthorDate: Tue May 31 07:37:20 2022 +
Commit: Andras Timar 
CommitDate: Tue May 31 14:11:58 2022 +0200

fix internal python build on powerpc64le-unknown-linux-gnu

Change-Id: I49c1368542a1af5dbbf377dbd8cb0cad8c6e2a38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135174
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Andras Timar 

diff --git a/external/python3/ExternalPackage_python3.mk 
b/external/python3/ExternalPackage_python3.mk
index dd470ef37f4e..241233914381 100644
--- a/external/python3/ExternalPackage_python3.mk
+++ b/external/python3/ExternalPackage_python3.mk
@@ -142,6 +142,11 @@ $(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-cor
LO_lib/_sysconfigdata__freebsd12_.py \
 ))
 else
+ifeq ($(HOST_PLATFORM),powerpc64le-unknown-linux-gnu)
+$(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\
+LO_lib/_sysconfigdata_$(if 
$(ENABLE_DBGUTIL),d)_linux_powerpc64le-linux-gnu.py \
+))
+else
 # note: python configure overrides config.guess with something that doesn't
 # put -pc in its linux platform triplets, so filter that...
 ifneq ($(OS),WNT)
@@ -156,6 +161,7 @@ $(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-cor
 endif
 endif
 endif
+endif
 
 
 # packages not shipped:


Re: 'make check' fails when building with gcov code coverage

2022-05-31 Thread Stephan Bergmann

On 31/05/2022 13:43, Maarten Hoes wrote:
Anyway, if more tests fail sometimes without there being a 'real' 
failure, then I am not sure how to deal with that in relation to 
generating an lcov report for a full build. My initial idea was to not 
generate a report if 'make check' failed, but hearing this now makes me 
wonder if that would be a good approach. Perhaps it would be preferred 
just to run 'make -k check' and generate a report always, regardless of 
test failures ? Of course you could also choose to skip such tests, but 
that would lead to not representative results; and someone would have to 
manually keep the skip list up to date, which people will forget to do.


Occasionally failing tests are a well-known problem for LO (e.g., 
witness the "Jenkins / CI update: tests that failed more than twice in 
last seven days" section in the weekly ESC minutes---many of those are 
apparently spuriously failing tests), and there is no reason to assume 
that your gcov builds would not also occasionally be affected by that.


So the general advice would be to ignore occasional failed builds (which 
might not only fail due to spurious test failures, but also because e.g. 
a build breaker got submitted by accident).  If some specific tests 
cause enough builds to fail to make that approach impractical, those 
tests should get fixed.  Or, as a last resort, get disabled for 
known-failing build scenarios.


I don't think -k would be a good solution, as it would make it harder to 
meaningfully interpret the generated data.




Re: 'make check' fails when building with gcov code coverage

2022-05-31 Thread Maarten Hoes
Hi,


On Mon, May 30, 2022 at 10:03 AM Stephan Bergmann 
wrote:

> On 25/05/2022 14:38, Maarten Hoes wrote:
> > gb_GCOV=YES verbose=t make UITest_solver
> > gb_GCOV=YES verbose=t make CppunitTest_sccomp_solver
> > gb_GCOV=YES verbose=t make CppunitTest_sccomp_swarmsolvertest
>
> I /think/ to remember that at least some of those solver tests are time
> based, so that they may occasionally fail for slow builds.  (I've seen
> such *Test_*solver* fail on and off for
>  and/or my local ASan+UBSan
> builds, tried to look into it a long time ago, got confirmation from I
> can't remember who that those tests can indeed timeout unsuccessfully
> without necessarily indicating a failure, and thus started to ignore
> them ever since.)
>


That would be a shame. I got the impression that, for me specifically,
these 3 tests failed reliably/reproducible when built with gcov, and
succeeded without gcov, but I'll do some more testing to verify that.

Anyway, if more tests fail sometimes without there being a 'real' failure,
then I am not sure how to deal with that in relation to generating an lcov
report for a full build. My initial idea was to not generate a report if
'make check' failed, but hearing this now makes me wonder if that would be
a good approach. Perhaps it would be preferred just to run 'make -k check'
and generate a report always, regardless of test failures ? Of course you
could also choose to skip such tests, but that would lead to not
representative results; and someone would have to manually keep the skip
list up to date, which people will forget to do.


- Maarten


Re: 'make check' fails when building with gcov code coverage

2022-05-31 Thread Maarten Hoes
Hi Miklos,


I totally agree that ideally, if the 'right' way to set these flags for
this build system is setting 'gb_GCOV=YES' on the make commandline, then
this should be fixed. However, I have no knowledge of this particular build
system or makefiles in general, so I am unable to fix that myself. So
instead, I tried setting these *FLAGS on the autogen.sh line, which also
made it work. So it is not so much my preferred way of doing things; merely
a result of my understanding / lack of understanding of certain areas of
expertise.

As for checking if skia gets built with gcc instead of skipped when clang
is not available, what would be the best way to verify that ? I guess that
after the build a 'libskia.so' or something should be present ? I have a
'./instdir/program/libskialo.so', after a gcov build, would that be it ?

By the way, there is a script that assists/attempts to automate doing a
gcov code coverage report (full build / make check) [1] (which I wrote, by
the way, back in 2015 or something), but looking at it now it is not all
that user friendly and/or overengineered. Usage consists of running the
script in different 'steps', and then running 'make check' in between. I
*think* I did it that way in order to make it as flexible as possible,
which seems silly now as it will only get run for the LibreOffice codebase
anyway. The idea was that once I got code coverage for a full build working
again 'in principle', that I take another look at that script and make it
do all the steps in one go, and then see if there is enough interest to run
that automatically on a regular basis somewhere.


[1]
https://git.libreoffice.org/buildbot/+/refs/heads/master/lcov-report/


- Maarten


On Tue, May 31, 2022 at 8:52 AM Miklos Vajna  wrote:

> Hi Maarten,
>
> On Fri, May 27, 2022 at 10:26:21AM +0200, Maarten Hoes <
> hoes.maar...@gmail.com> wrote:
> > CFLAGS='-fprofile-arcs -ftest-coverage' CXXFLAGS='-fprofile-arcs
> > -ftest-coverage' LDFLAGS='-fprofile-arcs -lgcov' ./autogen.sh
> > --enable-python=internal --without-system-libs --without-system-headers
> > gb_GCOV=YES verbose=t make --output-sync=target
> > gb_GCOV=YES verbose=t make check -k --output-sync=target
>
> I believe that manually specifying CFLAGS/CXXFLAGS/LDFLAGS is not
> necessary for coverage, and if you run into problems, we should rather
> fix that.
>
> > I recently started a thread [1] that is about the (complete, not partial)
> > build with gcov failing for me if I only set 'gb_GCOV=YES' on the make
> > commandline. The build succeeds for me if I also set the required *FLAGS
> on
> > the autogen commandline. The failing parts when only using 'gb_GCOV=YES'
> > were/are 'liborcus' and 'expat'.
>
> I wonder if then our makefiles for liborcus / expat should be fixed to
> take flags set by gb_GCOV at solenv/gbuild/platform/com_GCC_defs.mk:117
> into account?
>
> > Skia (I think) initially also broke the
> > build, but that was because of conflicts between clang and gcc [2], which
> > was resolved when I uninstalled clang. If I understand correctly, it was
> > intended to force skia to always be built with clang, but - intended or
> not
> > - at least on Linux it falls back on gcc (or skia gets skipped perhaps).
>
> Building skia with clang is about helping performance, so you're fine to
> fall back to gcc, probably. Disabling skia completely would mean you
> don't get coverage for the code that integrates skia with the rest of
> LO, which is probably not great.
>
> > When looking at 'coverage.sh', it seems it only covers specific parts of
> > the build, and not everything, so perhaps it doesn't build the parts that
> > fail for me when not setting the additional *FLAGS ?
>
> Yes, coverage.sh is only a partial rebuild, with the idea that if you
> work on an area anyway, then you may want to improve coverage where you
> have domain knowledge. Which has some overlap with your "get a global
> picture" goal, but somewhat different. :-)
>
> > Anyway, if you feel that setting the additional *FLAGS in addition to
> > 'gb_GCOV=YES' is not the right way to address the problem of the full
> build
> > with gcov failing for me, then perhaps we should revisit that thread [1],
> > before we continue looking at why 'make check' fails for me ?
>
> My suggestion would be to just keep the above in mind. Obviously there
> is value in getting a full make check working with coverage *somehow*,
> so if you have a preference how you do that, feel free to go ahead that
> way. It just seemed weird that those global compiler/linker flags are
> set in your build: gb_GCOV is ideally enough to set all of these.
>
> Regards,
>
> Miklos
>


[Libreoffice-commits] core.git: helpcontent2

2022-05-31 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 2ad445acad66f23fe5452746835c539eaaf949b6
Author: Olivier Hallot 
AuthorDate: Tue May 31 08:17:14 2022 -0300
Commit: Gerrit Code Review 
CommitDate: Tue May 31 13:17:14 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to 4bbaecd77c87afee5453dc89a9e033d4048c909e
  - tdf#107078 New way to load color palette

As color, hatching and gradient palettes are now handled by
extensions, this patch include:
- Refactor of xhp tags
- move palette_file from simpress/ to shared/
- adjust tree files
- add entry to shared/guide tree

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

diff --git a/helpcontent2 b/helpcontent2
index 1d8c6f2f8184..4bbaecd77c87 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 1d8c6f2f81847b48e2c24b5ee1b0af8a7a5c0b5d
+Subproject commit 4bbaecd77c87afee5453dc89a9e033d4048c909e


[Libreoffice-commits] help.git: AllLangHelp_shared.mk AllLangHelp_simpress.mk source/auxiliary source/text

2022-05-31 Thread Olivier Hallot (via logerrit)
 AllLangHelp_shared.mk|1 
 AllLangHelp_simpress.mk  |1 
 source/auxiliary/sdraw.tree  |4 
 source/auxiliary/shared.tree |1 
 source/auxiliary/simpress.tree   |4 
 source/text/shared/guide/palette_files.xhp   |   97 +++
 source/text/simpress/guide/line_arrow_styles.xhp |   12 +-
 source/text/simpress/guide/main.xhp  |2 
 source/text/simpress/guide/palette_files.xhp |   96 --
 9 files changed, 110 insertions(+), 108 deletions(-)

New commits:
commit 4bbaecd77c87afee5453dc89a9e033d4048c909e
Author: Olivier Hallot 
AuthorDate: Sun May 29 13:08:42 2022 -0300
Commit: Olivier Hallot 
CommitDate: Tue May 31 13:17:11 2022 +0200

tdf#107078 New way to load color palette

As color, hatching and gradient palettes are now handled by
extensions, this patch include:
- Refactor of xhp tags
- move palette_file from simpress/ to shared/
- adjust tree files
- add entry to shared/guide tree

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

diff --git a/AllLangHelp_shared.mk b/AllLangHelp_shared.mk
index 344f2bc4d..ab4363430 100644
--- a/AllLangHelp_shared.mk
+++ b/AllLangHelp_shared.mk
@@ -727,6 +727,7 @@ $(eval $(call gb_AllLangHelp_add_helpfiles,shared,\
 helpcontent2/source/text/shared/guide/numbering_stop \
 helpcontent2/source/text/shared/guide/openpgp \
 helpcontent2/source/text/shared/guide/pageformat_max \
+helpcontent2/source/text/shared/guide/palette_files \
 helpcontent2/source/text/shared/guide/paintbrush \
 helpcontent2/source/text/shared/guide/pasting \
 helpcontent2/source/text/shared/guide/print_blackwhite \
diff --git a/AllLangHelp_simpress.mk b/AllLangHelp_simpress.mk
index cdda7431f..db4e7f6c9 100644
--- a/AllLangHelp_simpress.mk
+++ b/AllLangHelp_simpress.mk
@@ -180,7 +180,6 @@ $(eval $(call gb_AllLangHelp_add_helpfiles,simpress,\
 helpcontent2/source/text/simpress/guide/move_object \
 helpcontent2/source/text/simpress/guide/orgchart \
 helpcontent2/source/text/simpress/guide/page_copy \
-helpcontent2/source/text/simpress/guide/palette_files \
 helpcontent2/source/text/simpress/guide/photo_album \
 helpcontent2/source/text/simpress/guide/presenter_console \
 helpcontent2/source/text/simpress/guide/print_tofit \
diff --git a/source/auxiliary/sdraw.tree b/source/auxiliary/sdraw.tree
index a1d7784b4..1e1831aa9 100644
--- a/source/auxiliary/sdraw.tree
+++ b/source/auxiliary/sdraw.tree
@@ -43,11 +43,11 @@
   
 
 
-  Loading 
Color, Gradient, and Hatching Lists
+  Loading Color, 
Gradient, and Hatching Palettes
   Inserting 
Graphics
 
 
-  Loading 
Color, Gradient, and Hatching Lists
+  Loading Color, 
Gradient, and Hatching Palettes
   Loading 
Line and Arrow Styles
   Defining Custom 
Colors
   Creating Gradient 
Fills
diff --git a/source/auxiliary/shared.tree b/source/auxiliary/shared.tree
index 8fffb50fd..4c4354788 100644
--- a/source/auxiliary/shared.tree
+++ b/source/auxiliary/shared.tree
@@ -185,6 +185,7 @@
   Changing the Title 
of a Document
   Creating Round 
Corners
   Defining Background 
Colors or Background Graphics
+  Loading Color, 
Gradient, and Hatching Palettes
   Defining Line 
Ends
   Defining Line 
Styles
   Editing 
Graphic Objects 
diff --git a/source/auxiliary/simpress.tree b/source/auxiliary/simpress.tree
index 0712bd4c9..2621ed8ee 100644
--- a/source/auxiliary/simpress.tree
+++ b/source/auxiliary/simpress.tree
@@ -62,7 +62,7 @@
 
   Saving a 
Presentation in HTML Format
   Importing HTML 
Pages Into Presentations 
-  Loading 
Color, Gradient, and Hatching Lists
+  Loading Color, 
Gradient, and Hatching Palettes
   Exporting 
Animations in GIF Format
   Including 
Spreadsheets in Slides
   Inserting 
Graphics
@@ -71,7 +71,7 @@
   Automatic 
Redaction
 
 
-  Loading 
Color, Gradient, and Hatching Lists
+  Loading Color, 
Gradient, and Hatching Palettes
   Loading 
Line and Arrow Styles
   Defining Custom 
Colors
   Creating Gradient 
Fills
diff --git a/source/text/shared/guide/palette_files.xhp 
b/source/text/shared/guide/palette_files.xhp
new file mode 100644
index 0..4df954304
--- /dev/null
+++ b/source/text/shared/guide/palette_files.xhp
@@ -0,0 +1,97 @@
+
+
+
+
+
+Loading Color, Gradient, and 
Hatching Palettes
+/text/shared/guide/palette_files.xhp
+
+
+Sun Microsystems, 
Inc.
+
+
+
+
+colors;loading lists
+gradients;loading lists
+hatching;loading lists
+loading;colors/gradients/hatchings
+
+Loading Color, Gradient, and Hatching 

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

2022-05-31 Thread Attila Bakos (NISZ) (via logerrit)
 include/oox/export/drawingml.hxx   |5 ++-
 oox/source/export/drawingml.cxx|   53 -
 oox/source/export/shapes.cxx   |   13 
 sd/qa/unit/data/odp/testZeroIndent.odp |binary
 sd/qa/unit/export-tests-ooxml3.cxx |   38 +++
 5 files changed, 95 insertions(+), 14 deletions(-)

New commits:
commit 445d4ce232b8e8efaeb2605533fede1b71f52f30
Author: Attila Bakos (NISZ) 
AuthorDate: Thu May 26 17:04:54 2022 +0200
Commit: László Németh 
CommitDate: Tue May 31 13:00:38 2022 +0200

tdf#147991 PPTX export: fix bullet indent regression

Instead of exporting the inherited master slide indent
values of the placeholders, export 0 indent value for
removed/disabled bullets to fix interoperability.

Regression from commit f57cfddb51b7d7409b7b425dc200aa73406a13bd
"tdf#145162 PPTX export: fix extra bullet regression".

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

diff --git a/include/oox/export/drawingml.hxx b/include/oox/export/drawingml.hxx
index 294319cf43af..455676e9c262 100644
--- a/include/oox/export/drawingml.hxx
+++ b/include/oox/export/drawingml.hxx
@@ -163,6 +163,9 @@ protected:
 css::uno::Reference m_xParent;
 bool  mbIsBackgroundDark;
 
+/// True when exporting presentation placeholder shape.
+bool mbPlaceholder;
+
 bool GetProperty( const css::uno::Reference< css::beans::XPropertySet >& 
rXPropSet, const OUString& aName );
 bool GetPropertyAndState( const css::uno::Reference< 
css::beans::XPropertySet >& rXPropSet,
   const css::uno::Reference< css::beans::XPropertyState >& 
rXPropState,
@@ -210,7 +213,7 @@ protected:
 
 public:
 DrawingML( ::sax_fastparser::FSHelperPtr pFS, ::oox::core::XmlFilterBase* 
pFB, DocumentType eDocumentType = DOCUMENT_PPTX, DMLTextExport* pTextExport = 
nullptr )
-: meDocumentType( eDocumentType ), mpTextExport(pTextExport), mpFS( 
pFS ), mpFB( pFB ), mbIsBackgroundDark( false ) {}
+: meDocumentType( eDocumentType ), mpTextExport(pTextExport), mpFS( 
pFS ), mpFB( pFB ), mbIsBackgroundDark( false ), mbPlaceholder(false) {}
 void SetFS( ::sax_fastparser::FSHelperPtr pFS ) { mpFS = pFS; }
 const ::sax_fastparser::FSHelperPtr& GetFS() const { return mpFS; }
 ::oox::core::XmlFilterBase* GetFB() { return mpFB; }
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index 18e6e2723e89..eea8394aef36 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -122,6 +122,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -2705,13 +2706,7 @@ static OUString GetAutoNumType(SvxNumType 
nNumberingType, bool bSDot, bool bPBeh
 void DrawingML::WriteParagraphNumbering(const Reference< XPropertySet >& 
rXPropSet, float fFirstCharHeight, sal_Int16 nLevel )
 {
 if (nLevel < 0 || !GetProperty(rXPropSet, "NumberingRules"))
-{
-if (GetDocumentType() == DOCUMENT_PPTX)
-{
-mpFS->singleElementNS(XML_a, XML_buNone);
-}
 return;
-}
 
 Reference< XIndexAccess > rXIndexAccess;
 
@@ -3015,6 +3010,32 @@ bool DrawingML::WriteParagraphProperties( const 
Reference< XTextContent >& rPara
 if (GetProperty(rXPropSet, "NumberingLevel"))
 mAny >>= nLevel;
 
+bool bWriteNumbering = true;
+bool bForceZeroIndent = false;
+if (mbPlaceholder)
+{
+Reference< text::XTextRange > xParaText(rParagraph, UNO_QUERY);
+if (xParaText)
+{
+bool bNumberingOnThisLevel = false;
+if (nLevel > -1)
+{
+Reference< XIndexAccess > 
xNumberingRules(rXPropSet->getPropertyValue("NumberingRules"), UNO_QUERY);
+const PropertyValues& rNumRuleOfLevel = 
xNumberingRules->getByIndex(nLevel).get();
+for (const PropertyValue& rRule : rNumRuleOfLevel)
+if (rRule.Name == "NumberingType" && 
rRule.Value.hasValue())
+bNumberingOnThisLevel = rRule.Value.get() 
!= style::NumberingType::NUMBER_NONE;
+}
+
+const bool bIsNumberingVisible = 
rXPropSet->getPropertyValue("NumberingIsNumber").get();
+const bool bIsLineEmpty = !xParaText->getString().getLength();
+
+bWriteNumbering = !bIsLineEmpty && bIsNumberingVisible && (nLevel 
!= -1);
+bForceZeroIndent = (!bIsNumberingVisible || bIsLineEmpty || 
!bNumberingOnThisLevel);
+}
+
+}
+
 sal_Int16 nTmp = sal_Int16(style::ParagraphAdjust_LEFT);
 if (GetProperty(rXPropSet, "ParaAdjust"))
 mAny >>= nTmp;
@@ -3058,23 +3079,26 @@ bool DrawingML::WriteParagraphProperties( const 
Reference< XTextContent >& rPara
 sal_Int32 nLeftMargin =  getBulletMarginInd

Re: ESC meeting minutes: 2022-05-26

2022-05-31 Thread Caolán McNamara
On Mon, 2022-05-30 at 23:57 +, Michael Weghorn wrote:
> On 30/05/2022 11.08, Caolán McNamara wrote:
> > For a11y I don't know what is seen as the major problems, is there
> > some fundamentally missing pieces (like in the past not having
> > direct windows IAccessible2 support and needing a java access
> > bridge). Or are the fundamentals ok and its a matter of a general
> > malaise. Is the general widgetry ok, but particular components have
> > poor document level a11y. Or is there an endless amount of fairly
> > easy entry level problems that there isn't enough people to take
> > care of.
> 
> I don't have a comprehensive overview at this point.
> At least from the little experience I have by now, I *tend to think* 
> it's mostly the latter, at least as far as root causes for the major 
> problems are concerned.

If the overview is there are a thousand little things and not a small
set of large scale specific projects then that's still a useful
overview. We could still sweep them into some general themes.

> (I have also *heard* that Base seems to be most problematic in
> general, but haven't had much to do with it myself yet.)

I wonder if it's the initial base screen (I think I might have replaced
some custom widgets there with more standard ones which might have
improved matters) or the "design view" rows/columns screen which is a
custom widget, but one I think that does at least have an a11y
implementation. In general custom widgets lead to forgotten a11y, like
the extensions dialog.

How about math? I see a bug 140659 for math still open linked to the
meta bug, which says "formula editor not operable with screenreaders",
but then the commentary seems maybe less bleak

>  From what I have seen so far while looking at some a11y issues 
> affecting Windows and Linux (gtk3 and qt5/qt6 VCL plugins), the 
> fundamentals look fine, and it seems to be mostly that various
> smaller issues in LO a11y code of the single components and the
> platform integrations (and sometimes in other projects, like the NVDA
> screen reader or the Qt library) cause a lack of a11y in the UI (lack
> of usability with accessibility technology, like screen readers, e.g.
> because not everything is announced) 

Depends of what is being read out of course, missing labels for .ui
widgetry are super trivial to fix[1]. Something not read out from a
document can range from some small missing piece to some difficult
total lack of a11y.

> documents (like a11y-related attributes not being properly set in
> docs, in particular when exported to other formats like OOXML, PDF,
> (X)HTML).

My feeling is that category of problem is presumably relatively easy to
implement, there's a reasonable amount of general file format knowledge
around.

> The a11y meta bug tdf#101912 [1] currently lists ~200 specific
> issues. (I also have a ranked list from Richard, CCed, a blind user
> who uses the NVDA screen reader on Windows.)

If Richard is ok with sharing that here it could help get a general
feel on what's lacking.

> IIUC, the gtk4 VCL plugin currently doesn't have an a11y
> implementation yet...

Yeah, right now I don't think there is a way to do it in gtk4. Basic
widgetry works fine and the internal gtk4 a11y looks good, but I don't
see what is possible to supplement it for document a11y. Its the kind
of thing I would probably be able to take care of when it becomes
possible.


[1] https://bugs.documentfoundation.org/show_bug.cgi?id=119931 is the
easy hack for those. Genuinely easy with valuable results. Not sure if
its completed by now.



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

2022-05-31 Thread Caolán McNamara (via logerrit)
 include/vcl/toolkit/spinfld.hxx |9 -
 vcl/source/control/fmtfield.cxx |7 +++
 vcl/source/control/spinfld.cxx  |   31 +--
 3 files changed, 44 insertions(+), 3 deletions(-)

New commits:
commit 7c411a6df34ce5b04f964b0410b6d2535389918d
Author: Caolán McNamara 
AuthorDate: Sun May 29 21:25:09 2022 +0100
Commit: Michael Stahl 
CommitDate: Tue May 31 12:31:54 2022 +0200

Related: tdf#89131 draw up/down spins disabled if value is at max/min

if there is a max/min set.

Change-Id: I2dc7ad9ec2aa7eb89d8b5fa137e077a846fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135105
Tested-by: Caolán McNamara 
Reviewed-by: Caolán McNamara 
(cherry picked from commit 2896c5dad1799addd72b626d93d7e89b1cf19ff6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135070
Tested-by: Jenkins
Reviewed-by: Michael Stahl 

diff --git a/include/vcl/toolkit/spinfld.hxx b/include/vcl/toolkit/spinfld.hxx
index f6de1202a45d..d82348bd44bb 100644
--- a/include/vcl/toolkit/spinfld.hxx
+++ b/include/vcl/toolkit/spinfld.hxx
@@ -61,6 +61,11 @@ public:
 
 virtual FactoryFunction GetUITestFactory() const override;
 
+SAL_DLLPRIVATE void SetUpperEnabled(bool bEnabled);
+SAL_DLLPRIVATE void SetLowerEnabled(bool bEnabled);
+SAL_DLLPRIVATE bool IsUpperEnabled() const { return mbUpperEnabled; }
+SAL_DLLPRIVATE bool IsLowerEnabled() const { return mbLowerEnabled; }
+
 protected:
 tools::Rectangle   maUpperRect;
 tools::Rectangle   maLowerRect;
@@ -91,7 +96,9 @@ private:
 mbInitialDown:1,
 mbUpperIn:1,
 mbLowerIn:1,
-mbInDropDown:1;
+mbInDropDown:1,
+mbUpperEnabled:1,
+mbLowerEnabled:1;
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/source/control/fmtfield.cxx b/vcl/source/control/fmtfield.cxx
index a0d96dd9caae..d3f7d88985f2 100644
--- a/vcl/source/control/fmtfield.cxx
+++ b/vcl/source/control/fmtfield.cxx
@@ -922,6 +922,13 @@ namespace
 {
 m_rSpinButton.SpinField::Modify();
 }
+
+virtual void UpdateCurrentValue(double dCurrentValue) override
+{
+Formatter::UpdateCurrentValue(dCurrentValue);
+m_rSpinButton.SetUpperEnabled(!m_bHasMax || dCurrentValue < 
m_dMaxValue);
+m_rSpinButton.SetLowerEnabled(!m_bHasMin || dCurrentValue > 
m_dMinValue);
+}
 };
 
 class DoubleNumericFormatter : public FieldFormatter
diff --git a/vcl/source/control/spinfld.cxx b/vcl/source/control/spinfld.cxx
index 8db25dfbc699..6bc1fac297a9 100644
--- a/vcl/source/control/spinfld.cxx
+++ b/vcl/source/control/spinfld.cxx
@@ -298,6 +298,8 @@ void SpinField::ImplInitSpinFieldData()
 mbInitialUp = false;
 mbInitialDown   = false;
 mbInDropDown= false;
+mbUpperEnabled  = true;
+mbLowerEnabled  = true;
 }
 
 void SpinField::ImplInit(vcl::Window* pParent, WinBits nWinStyle)
@@ -578,13 +580,38 @@ void SpinField::FillLayoutData() const
 Edit::FillLayoutData();
 }
 
+void SpinField::SetUpperEnabled(bool bEnabled)
+{
+if (mbUpperEnabled == bEnabled)
+return;
+
+mbUpperEnabled = bEnabled;
+
+if (mbSpin)
+Invalidate(maUpperRect);
+}
+
+void SpinField::SetLowerEnabled(bool bEnabled)
+{
+if (mbLowerEnabled == bEnabled)
+return;
+
+mbLowerEnabled = bEnabled;
+
+if (mbSpin)
+Invalidate(maLowerRect);
+}
+
 void SpinField::Paint(vcl::RenderContext& rRenderContext, const 
tools::Rectangle& rRect)
 {
 if (mbSpin)
 {
-bool bEnable = IsEnabled();
+bool bEnabled = IsEnabled();
+bool bUpperEnabled = bEnabled && IsUpperEnabled();
+bool bLowerEnabled = bEnabled && IsLowerEnabled();
 ImplDrawSpinButton(rRenderContext, this, maUpperRect, maLowerRect,
-   mbUpperIn, mbLowerIn, bEnable, bEnable);
+   mbUpperIn && bUpperEnabled, mbLowerIn && 
bLowerEnabled,
+   bUpperEnabled, bLowerEnabled);
 }
 
 if (GetStyle() & WB_DROPDOWN)


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

2022-05-31 Thread Andreas Heinisch (via logerrit)
 basic/qa/cppunit/test_compiler_checks.cxx |   40 ++
 basic/source/comp/scanner.cxx |2 +
 2 files changed, 42 insertions(+)

New commits:
commit b94275f6d2cb4dc28d1563fd7994251042b6d51a
Author: Andreas Heinisch 
AuthorDate: Wed May 25 12:42:23 2022 +0200
Commit: Andreas Heinisch 
CommitDate: Tue May 31 12:30:21 2022 +0200

tdf#149157 - Break multiline continuation in a comment after a new line

Change-Id: I3dd875152a6f2cfafb67f13f597c36f01a4759b4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135018
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch 

diff --git a/basic/qa/cppunit/test_compiler_checks.cxx 
b/basic/qa/cppunit/test_compiler_checks.cxx
index 24b380ed2a9a..e2882f3f694c 100644
--- a/basic/qa/cppunit/test_compiler_checks.cxx
+++ b/basic/qa/cppunit/test_compiler_checks.cxx
@@ -33,4 +33,44 @@ CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, 
testDoubleArgument)
 CPPUNIT_ASSERT_EQUAL(ERRCODE_BASIC_VAR_DEFINED, 
aMacro.getError().StripDynamic());
 }
 
+CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, testTdf149157)
+{
+MacroSnippet aMacro("Function extentComment() As Integer\n"
+"  ' _\n"
+"  If Not extentComment Then\n"
+" extentComment = 1\n"
+"  End If\n"
+"End Function\n");
+aMacro.Compile();
+CPPUNIT_ASSERT(!aMacro.HasError());
+}
+
+CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, testTdf149157_compatible)
+{
+MacroSnippet aMacro("Option Compatible\n"
+"Function extentComment() As Integer\n"
+"  ' _\n"
+"\n"
+"  If Not extentComment Then\n"
+" extentComment = 1\n"
+"  End If\n"
+"End Function\n");
+aMacro.Compile();
+CPPUNIT_ASSERT(!aMacro.HasError());
+}
+
+CPPUNIT_TEST_FIXTURE(CppUnit::TestFixture, testTdf149157_vba)
+{
+MacroSnippet aMacro("Option VBASupport 1\n"
+"Function extentComment() As Integer\n"
+"  ' _\n"
+"\n"
+"  If Not extentComment Then\n"
+" extentComment = 1\n"
+"  End If\n"
+"End Function\n");
+aMacro.Compile();
+CPPUNIT_ASSERT(!aMacro.HasError());
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s 
cinkeys+=0=break: */
diff --git a/basic/source/comp/scanner.cxx b/basic/source/comp/scanner.cxx
index 63d525939459..4cb2e34e3285 100644
--- a/basic/source/comp/scanner.cxx
+++ b/basic/source/comp/scanner.cxx
@@ -702,6 +702,8 @@ eoln:
 aSym = "\n";
 nColLock = 0;
 bClosingUnderscore = false;
+// tdf#149157 - break multiline continuation in a comment after a new 
line
+bPrevLineExtentsComment = false;
 return true;
 }
 }


Re: ESC meeting minutes: 2022-05-26

2022-05-31 Thread Colomban Wendling

Le 31/05/2022 à 01:57, Michael Weghorn a écrit :

On 30/05/2022 11.08, Caolán McNamara wrote:

For a11y I don't know what is seen as the major problems, is there some
fundamentally missing pieces (like in the past not having direct
windows IAccessible2 support and needing a java access bridge). Or are
the fundamentals ok and its a matter of a general malaise. Is the
general widgetry ok, but particular components have poor document level
a11y. Or is there an endless amount of fairly easy entry level problems
that there isn't enough people to take care of.


It's a bit of both I'd think.

The main issues I can think of from the top of my head are:

* Only on-screen elements of the document are exposed to ATs.  This is 
on purpose probably for performance (not sure if we have any numbers to 
base it on?) so elements are lazy-loaded and destroyed, but it has 
non-trivial impact on various AT features.  There are some things 
supposed to help mitigate the issues (like flows-from and flows-to 
relationships), but they present their own sets of issues (like some 
elements from there not having proper parent/child relationships, etc.).


* Some parts of the document are not accessible through the keyboard, 
like e.g. embedded objects, images and such, which makes it nearly 
impossible to AT users to interact with them.


* Some relations are missing, like for annotations and footnotes.  Also, 
there is a lack of semantics for change tracking leading to messy output 
from ATs.  These could be seen as smaller and simpler issues, as it 
likely only requires plugging in the correct cables.


I don't have a comprehensive overview either, but I think most of those 
have a proper bug for them.


I'm CCing Joanmarie which might have a lot more insight here.


[…]

IIUC, the gtk4 VCL plugin currently doesn't have an a11y implementation 
yet, and there has been a change of how a11y is handled at least within 
the Gtk library itself. [1]


Yeah, for GTK4 there will likely be a need to a whole new a11y VCL 
layer.  This might not be so hard to get started getting inspiration 
from GTK4 itself, but a lot will have to be ironed out.  Currently GTK4 
itself still has a fair bit of rough edges because of this change, even 
if the end goal is to make things easier and more modern.


[Libreoffice-commits] core.git: translations

2022-05-31 Thread Martin Srebotnjak (via logerrit)
 translations |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 7d25b8544b1534e8a413422ba0bf91d1b2af85a5
Author: Martin Srebotnjak 
AuthorDate: Tue May 31 11:43:32 2022 +0200
Commit: Gerrit Code Review 
CommitDate: Tue May 31 11:43:32 2022 +0200

Update git submodules

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

Change-Id: I80fee32feef0bc879ab0d0ff1b420074e9ea47d1

diff --git a/translations b/translations
index baa28fb3a616..ed14d57f503d 16
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit baa28fb3a6161fa057808d25b69ce24e21a1f9d8
+Subproject commit ed14d57f503d87230572addc845e16da818e530a


[Libreoffice-commits] translations.git: source/sl

2022-05-31 Thread Martin Srebotnjak (via logerrit)
 source/sl/basctl/messages.po  |6 
 source/sl/cui/messages.po |  163 
 source/sl/dbaccess/messages.po|   54 
 source/sl/desktop/messages.po |   34 
 source/sl/dictionaries/bo.po  |2 
 source/sl/dictionaries/ca.po  |   11 
 source/sl/dictionaries/cs_CZ.po   |   11 
 source/sl/dictionaries/gd_GB.po   |   11 
 source/sl/dictionaries/sv_SE.po   |   11 
 source/sl/editeng/messages.po |  153 
 source/sl/extensions/messages.po  |  190 
 source/sl/fpicker/messages.po |   38 
 source/sl/helpcontent2/source/text/sbasic/guide.po|2 
 source/sl/helpcontent2/source/text/sbasic/python.po   |4 
 source/sl/helpcontent2/source/text/sbasic/shared.po   |  318 -
 source/sl/helpcontent2/source/text/sbasic/shared/03.po|  516 +
 source/sl/helpcontent2/source/text/scalc/01.po|6 
 source/sl/helpcontent2/source/text/schart/02.po   |2 
 source/sl/helpcontent2/source/text/sdatabase.po   |  142 
 source/sl/helpcontent2/source/text/shared/00.po   |   94 
 source/sl/helpcontent2/source/text/shared/01.po   |  120 
 source/sl/helpcontent2/source/text/shared/02.po   |   24 
 source/sl/helpcontent2/source/text/shared/06.po   |   18 
 source/sl/helpcontent2/source/text/shared/guide.po|   14 
 source/sl/helpcontent2/source/text/shared/help.po |   26 
 source/sl/helpcontent2/source/text/shared/optionen.po |   26 
 source/sl/helpcontent2/source/text/simpress.po|   10 
 source/sl/helpcontent2/source/text/simpress/02.po |   62 
 source/sl/helpcontent2/source/text/simpress/guide.po  |   14 
 source/sl/helpcontent2/source/text/swriter.po |   78 
 source/sl/helpcontent2/source/text/swriter/00.po  |   14 
 source/sl/helpcontent2/source/text/swriter/01.po  |  240 
 source/sl/helpcontent2/source/text/swriter/02.po  |   96 
 source/sl/helpcontent2/source/text/swriter/04.po  |   14 
 source/sl/helpcontent2/source/text/swriter/guide.po   |   46 
 source/sl/officecfg/registry/data/org/openoffice/Office/UI.po |  127 
 source/sl/sc/messages.po  |  337 -
 source/sl/scp2/source/ooo.po  |8 
 source/sl/sfx2/messages.po|7 
 source/sl/svtools/messages.po |4 
 source/sl/svx/messages.po | 3027 +-
 source/sl/sw/messages.po  |  250 
 42 files changed, 3578 insertions(+), 2752 deletions(-)

New commits:
commit ed14d57f503d87230572addc845e16da818e530a
Author: Martin Srebotnjak 
AuthorDate: Tue May 31 11:43:19 2022 +0200
Commit: Andras Timar 
CommitDate: Tue May 31 11:43:19 2022 +0200

Updated Slovenian translation

Change-Id: I80fee32feef0bc879ab0d0ff1b420074e9ea47d1

diff --git a/source/sl/basctl/messages.po b/source/sl/basctl/messages.po
index 4bc3da4a2fe..d048b259595 100644
--- a/source/sl/basctl/messages.po
+++ b/source/sl/basctl/messages.po
@@ -4,13 +4,13 @@ msgstr ""
 "Project-Id-Version: LibreOffice 7.4\n"
 "Report-Msgid-Bugs-To: 
https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n";
 "POT-Creation-Date: 2022-03-09 21:26+0100\n"
-"PO-Revision-Date: 2022-02-26 17:12+0200\n"
+"PO-Revision-Date: 2022-05-30 22:10+0200\n"
 "Last-Translator: Martin Srebotnjak \n"
 "Language-Team: sl.libreoffice.org\n"
+"Language: sl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: sl\n"
 "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || 
n%100==4 ? 2 : 3);\n"
 "X-Generator: Virtaal 0.7.1\n"
 "X-Accelerator-Marker: ~\n"
@@ -297,7 +297,7 @@ msgstr "Pogovorna okna programa"
 #: basctl/inc/strings.hrc:80
 msgctxt "RID_STR_SHAREMACROSDIALOGS"
 msgid "Application Macros & Dialogs"
-msgstr "Makri in pogov. okna programa"
+msgstr "Makri in pogovorna okna programa"
 
 #: basctl/inc/strings.hrc:81
 msgctxt "RID_STR_REMOVEWATCHTIP"
diff --git a/source/sl/cui/messages.po b/source/sl/cui/messages.po
index b9cdd357663..329e678acb8 100644
--- a/source/sl/cui/messages.po
+++ b/source/sl/cui/messages.po
@@ -3,8 +3,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: LibreOffice 7.4\n"
 "Report-Msgid-Bugs-To: 
https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n";
-"POT-Creation-Date: 2022-05-03 11:40+0200\n"
-"PO-Revision-Date:

[Libreoffice-commits] core.git: bin/crashreportScraper.py

2022-05-31 Thread Xisco Fauli (via logerrit)
 bin/crashreportScraper.py |   33 +++--
 1 file changed, 27 insertions(+), 6 deletions(-)

New commits:
commit bf6c74f1bb4ba67c16d442a9d8847118891ec89e
Author: Xisco Fauli 
AuthorDate: Mon May 30 20:56:41 2022 +0200
Commit: Xisco Fauli 
CommitDate: Tue May 31 11:10:00 2022 +0200

crashreportScraper: Add new column to show the stack code

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

diff --git a/bin/crashreportScraper.py b/bin/crashreportScraper.py
index 780db5a9dc2c..aedb7a666c06 100755
--- a/bin/crashreportScraper.py
+++ b/bin/crashreportScraper.py
@@ -101,7 +101,7 @@ def 
parse_reports_and_get_most_recent_report_from_last_page(url):
 
 return count, ID, version, OS
 
-def parse_details_and_get_info(url):
+def parse_details_and_get_info(url, gitRepo):
 html_text = requests.get(url).text
 soup = BeautifulSoup(html_text, 'html.parser')
 
@@ -110,6 +110,8 @@ def parse_details_and_get_info(url):
 reason = tr_list[8].td.text.strip()
 
 stack = ""
+codeLine = ""
+
 count = 0
 frames = soup.find("div", {"id": "frames"}).tbody
 for tr in frames.find_all("tr"):
@@ -120,10 +122,27 @@ def parse_details_and_get_info(url):
 stack += source + "\n"
 count += 1
 
+codeFile = source.split(":")[0]
+codeNumber = source.split(":")[1]
+try:
+with open(os.path.join(gitRepo, codeFile)) as f:
+lines = f.readlines()
+for index, line in enumerate(lines):
+if index + 1 == int(codeNumber):
+codeLine += line.strip() + "\n"
+except FileNotFoundError:
+codeLine += "\n"
+continue
+
 if stack:
 #multiline
 stack = "\"" + stack + "\""
-return reason, stack
+
+if codeLine:
+#multiline
+codeLine = "\"" + codeLine + "\""
+
+return reason, stack, codeLine
 
 
 if __name__ == '__main__':
@@ -133,6 +152,8 @@ if __name__ == '__main__':
 crashes = parse_version_url(
 "https://crashreport.libreoffice.org/stats/version/"; + version + 
"?limit=1000&days=30")
 
+gitRepo = os.path.dirname(os.path.realpath(__file__)) + "/../"
+
 print(str(len(crashes)) + " crash reports in version " + version)
 
 crashesInFile = []
@@ -151,7 +172,7 @@ if __name__ == '__main__':
 with open(fileName, "a") as f:
 if bInsertHeader:
 line = '\t'.join(["Name", "Count", "First report", "Last Report",
-"ID", "Version", "Reason", "OS", "Stack", '\n'])
+"ID", "Version", "Reason", "OS", "Stack", "Code Lines" '\n'])
 f.write(line)
 f.flush()
 
@@ -162,10 +183,10 @@ if __name__ == '__main__':
 print("Parsing " + k)
 crashCount, crashID, crashVersion, crashOS = 
parse_reports_and_get_most_recent_report_from_last_page(
 "https://crashreport.libreoffice.org/stats/signature/"; 
+ k)
-crashReason, crashStack = parse_details_and_get_info(
-
"https://crashreport.libreoffice.org/stats/crash_details/"; + crashID)
+crashReason, crashStack, codeLine = parse_details_and_get_info(
+
"https://crashreport.libreoffice.org/stats/crash_details/"; + crashID, gitRepo)
 line = '\t'.join([k, str(crashCount), 
v[1].strftime('%y/%m/%d'), v[2].strftime('%y/%m/%d'),
-crashID, crashVersion, crashReason, crashOS, 
crashStack, '\n'])
+crashID, crashVersion, crashReason, crashOS, 
crashStack, codeLine, '\n'])
 f.write(line)
 f.flush()
 


[Libreoffice-commits] core.git: g

2022-05-31 Thread Michael Stahl (via logerrit)
 g |   18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)

New commits:
commit aa8ef74b475a6fbd6e4ec27c42941aa274998df6
Author: Michael Stahl 
AuthorDate: Mon May 30 21:30:04 2022 +0200
Commit: Michael Stahl 
CommitDate: Tue May 31 10:29:45 2022 +0200

g: we are not, in fact, in the BUILDDIR

For an out-of-tree build, "make fetch" poinlessly clones all git
submodules.

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

diff --git a/g b/g
index 021ad6c41cde..fdf95c8278ce 100755
--- a/g
+++ b/g
@@ -10,9 +10,9 @@ fi
 SUBMODULES_ALL="dictionaries helpcontent2 translations"
 
 pushd $(dirname $0) > /dev/null
-if [ -f config_host.mk ] ; then
-# we are in the BUILDDIR
-SRC_ROOT=$(< config_host.mk grep -a SRC_ROOT | sed -e "s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ] ; then
+# we are in the SRCDIR
+SRC_ROOT=$(< ${BUILDDIR}/config_host.mk grep -a SRC_ROOT | sed -e 
"s/.*=//")
 else
 SRC_ROOT=$(pwd)
 fi
@@ -150,8 +150,8 @@ get_active_submodules()
 get_configured_submodules()
 {
 SUBMODULES_CONFIGURED=""
-if [ -f config_host.mk ] ; then
-SUBMODULES_CONFIGURED=$(< config_host.mk grep -a GIT_NEEDED_SUBMODULES 
| sed -e "s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ] ; then
+SUBMODULES_CONFIGURED=$(< ${BUILDDIR}/config_host.mk grep -a 
GIT_NEEDED_SUBMODULES | sed -e "s/.*=//")
 else
 # if we need the configured submodule before the configuration is 
done. we assumed you want them all
 SUBMODULES_CONFIGURED=${SUBMODULES_ALL?}
@@ -161,12 +161,12 @@ get_configured_submodules()
 get_git_reference()
 {
 REFERENCED_GIT=""
-if [ -f config_host.mk ]; then
-REFERENCED_GIT=$(< config_host.mk grep -a GIT_REFERENCE_SRC | sed -e 
"s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ]; then
+REFERENCED_GIT=$(< ${BUILDDIR}/config_host.mk grep -a 
GIT_REFERENCE_SRC | sed -e "s/.*=//")
 fi
 LINKED_GIT=""
-if [ -f config_host.mk ]; then
-LINKED_GIT=$(< config_host.mk grep -a GIT_LINK_SRC | sed -e "s/.*=//")
+if [ -f ${BUILDDIR}/config_host.mk ]; then
+LINKED_GIT=$(< ${BUILDDIR}/config_host.mk grep -a GIT_LINK_SRC | sed 
-e "s/.*=//")
 fi
 }
 


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

2022-05-31 Thread Thorsten Behrens (via logerrit)
 oox/source/export/presetTextWarpDefinitions.xml |   17 -
 1 file changed, 17 deletions(-)

New commits:
commit 49f62ab95eeffd0ed4d19eca4c9abffa6e2cf84f
Author: Thorsten Behrens 
AuthorDate: Tue May 31 09:38:15 2022 +0200
Commit: Thorsten Behrens 
CommitDate: Tue May 31 09:39:56 2022 +0200

Revert 6eeb0942c35f07dfbadb13f35fc6aa3703dac945

Change-Id: I096f25d38f19fb728110e209a189f89a8e8d402f

diff --git a/oox/source/export/presetTextWarpDefinitions.xml 
b/oox/source/export/presetTextWarpDefinitions.xml
index e5f0c4f88c8a..c701c8f82b1c 100644
--- a/oox/source/export/presetTextWarpDefinitions.xml
+++ b/oox/source/export/presetTextWarpDefinitions.xml
@@ -1,21 +1,4 @@
 
-
 
   
 http://schemas.openxmlformats.org/drawingml/2006/main";>


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

2022-05-31 Thread Miklos Vajna (via logerrit)
 sd/qa/unit/tiledrendering/data/tdf104405.fodp |  287 --
 1 file changed, 3 insertions(+), 284 deletions(-)

New commits:
commit b0386e4d029d90f91fcae72ec76c77f9b15c1478
Author: Miklos Vajna 
AuthorDate: Mon May 30 20:07:24 2022 +0200
Commit: Miklos Vajna 
CommitDate: Tue May 31 09:26:18 2022 +0200

CppunitTest_sd_tiledrendering: reduce test doc size in testTdf104405

The actual image content is not interesting, so it can be a tiny one.

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

diff --git a/sd/qa/unit/tiledrendering/data/tdf104405.fodp 
b/sd/qa/unit/tiledrendering/data/tdf104405.fodp
index cce6dd51386f..d902f177d527 100644
--- a/sd/qa/unit/tiledrendering/data/tdf104405.fodp
+++ b/sd/qa/unit/tiledrendering/data/tdf104405.fodp
@@ -804,290 +804,9 @@

   
  
-  
VkNMTVRGAQAxAAEAGwABAQEBAPpcAACK
-   LAIAAIkAAQAhAQAbDQD5+P//6er//wEBAQEAlgABAAIA
-   AAAJAIUAAQAFs7OzAAGEAAEABQAAbwACAC4BAAUACAcAABgVAACeGQAA
-   GBUAAJ4ZAAA4IAAACAcAADggAAAIBwAAGBUAAAIBACAWAFhURVhUX1BBSU5UU0hB
-   UEVfQkVHSU4AAIoAAQBBAwA7DwBMaWJlcmF0aW9uIFNhbnMAAAB7
-   AgAA//8AAAIABQAJHP8DAACIAAEAAgEAhwABAAUAAAD/
-   AIYAAQAEAHEAAgAuAggAANoXAAADYQBhAGEDAAMAAABfAQAA
-   vwIAAB4EAAADAGEAYQBhAAACAQATCQBYVEVYVF9FT0MCAQATCQBY
-   VEVYVF9FT0MBAAACAQATCQBYVEVYVF9FT0MCAAACAQATCQBY
-   VEVYVF9FT0wCAQATCQBYVEVYVF9FT1ACAQAeFABY
-   VEVYVF9QQUlOVFNIQVBFX0VORAAAhQABAAUAAACzs7MAAYQAAQAFAABv
-   AAIALgEABQCeGQAAGBUAADQsAAAYFQAANCwAADggAACeGQAAOCAAAJ4ZAAAYFQAA
-   AgEAIBYAWFRFWFRfUEFJTlRTSEFQRV9CRUdJTgAAigABAEEDADsP
-   AExpYmVyYXRpb24gU2FucwAAAHsCAAD//wAAAgAFAAkc/wMA
-   AIgAAQACAQCHAAEABQAAAP8AhgABAAQAcQACACYAAACYGgAA2hcA
-   AAIAAABhAGECAAIAAABfAQAAvwIAAAIAYQBhAAACAQATCQBYVEVYVF9FT0MA
-   AAACAQATCQBYVEVYVF9FT0MBAAACAQATCQBYVEVYVF9FT0wA
-   AAACAQATCQBYVEVYVF9FT1ACAQAeFABYVEVYVF9QQUlOVFNI
-   QVBFX0VORAAAhQABAAUAAACzs7MAAYQAAQAFAABvAAIALgEABQA0
-   LAAAGBUAAMo+AAAYFQAAyj4AADggAAA0LAAAOCAAADQsAAAYFQAAAgEAIBYAWFRF
-   WFRfUEFJTlRTSEFQRV9CRUdJTgAAigABAEEDADsPAExpYmVyYXRpb24g
-   U2FucwAAAHsCAAD//wAAAgAFAAkc/wMAAIgAAQAC
-   AQCHAAEABQAAAP8AhgABAAQAcQACADYAAAC+MgAA2hcAAAQAAABhAGEAYQBh
-   BAAEXwEAAL8CAAAeBAAAfQUAAAQAYQBhAGEAYQAAAgEAEwkAWFRFWFRfRU9D
-   AgEAEwkAWFRFWFRfRU9DAQAAAgEAEwkAWFRFWFRfRU9D
-   AgAAAgEAEwkAWFRFWFRfRU9DAwAAAgEAEwkAWFRFWFRfRU9M
-   AgEAEwkAWFRFWFRfRU9QAgEAHgAAABQAWFRFWFRfUEFJ
-   TlRTSEFQRV9FTkQAAIUAAQAFs7OzAAGEAAEABQAAbwACAC4B
-   AAUAyj4AABgVAABgUQAAGBUAAGBRAAA4IAAAyj4AADggAADKPgAAGBUAAAIBACAW
-   AFhURVhUX1BBSU5UU0hBUEVfQkVHSU4AAIoAAQBBAwA7DwBMaWJlcmF0
-   aW9uIFNhbnMAAAB7AgAA//8AAAIABQAJHP8DAACIAAEA
-   AgEAhwABAAUAAAD/AIYAAQAEAHEAAgA+xD8AANoXAAAFYQBh
-   AGEAYQBhBQAFXwEAAL8CAAAeBAAAfQUAAN0GAAAFAGEAYQBhAGEAYQAAAgEAEwAA
-   AAkAWFRFWFRfRU9DAgEAEwkAWFRFWFRfRU9DAQAAAgEAEwAA
-   AAkAWFRFWFRfRU9DAgAAAgEAEwkAWFRFWFRfRU9DAwAAAgEAEwAA
-   AAkAWFRFWFRfRU9DBgEAEwkAWFRFWFRfRU9MAgEAEwAA
-   AAkAWFRFWFRfRU9QAgEAHgAAABQAWFRFWFRfUEFJTlRTSEFQRV9FTkQA
-   AIUAAQAFs7OzAAGEAAEABQAAbwACAC4BAAUAYFEAABgVAAD/YwAA
-   GBUAAP9jAAA4IAAAYFEAADggAABgUQAAGBUAAAIBACAWAFhURVhUX1BBSU5UU0hB
-   UEVfQkVHSU4AAIoAAQBBAwA7DwBMaWJlcmF0aW9uIFNhbnMAAAB7
-   AgAA//8AAAIABQAJHP8DAACIAAEAAgEAhwABAAUAAAD/
-   AIYAAQAEAHEAAgA2WlIAANoXAAAEYQBhAGEAYQQABF8B
-   AAC/AgAAHgQAAH0FAAAEAGEAYQBhAGEAAAIBABMJAFhURVhUX0VPQwIB
-   ABMJAFhURVhUX0VPQwEAAAIBABMJAFhURVhUX0VPQwIAAAIB
-   ABMJAFhURVhUX0VPQwMAAAIBABMJAFhURVhUX0VPTAIB
-   ABMJAFhURVhUX0VPUAIBAB4UAFhURVhUX1BBSU5UU0hBUEVfRU5E
-   AACFAAEABQAAAMzMzAABhAABAAUAAG8AAgAuAQAFAAgHAAA4IAAA
-   nhkAADggAACeGQAAWCsAAAgHAABYKwAACAcAADggAAACAQAgFgBYVEVYVF9QQUlO
-   VFNIQVBFX0JFR0lOAACKAAEAQQMAOw8ATGliZXJhdGlvbiBTYW5z
-   ewIAAP//AAACAAUACRwAAAD/AwAAiAABAA

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

2022-05-31 Thread Andras Timar (via logerrit)
 sw/uiconfig/swriter/ui/calendar.ui |3 ---
 1 file changed, 3 deletions(-)

New commits:
commit 090ed6199ec8ed805d645b62387bc89df01b9564
Author: Andras Timar 
AuthorDate: Mon May 30 22:58:11 2022 +0200
Commit: Andras Timar 
CommitDate: Tue May 31 09:25:43 2022 +0200

date picker should rather show the current date instead of February 14, 2019

Change-Id: Ie449873aad40b6f02198a8a44a7eae1aaba1cfae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135148
Tested-by: Jenkins
Reviewed-by: Andras Timar 

diff --git a/sw/uiconfig/swriter/ui/calendar.ui 
b/sw/uiconfig/swriter/ui/calendar.ui
index 5c8d3eb43bfd..e5355f723621 100644
--- a/sw/uiconfig/swriter/ui/calendar.ui
+++ b/sw/uiconfig/swriter/ui/calendar.ui
@@ -15,9 +15,6 @@
   
 True
 True
-2019
-1
-14
   
   
 False


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - sc/inc sc/qa

2022-05-31 Thread Luboš Luňák (via logerrit)
 sc/inc/address.hxx   |2 +-
 sc/qa/unit/ucalc.cxx |   36 ++--
 sc/qa/unit/uicalc/uicalc.cxx |   10 +-
 3 files changed, 28 insertions(+), 20 deletions(-)

New commits:
commit 373aa1961201a2d00c9886c21ee678a244960b24
Author: Luboš Luňák 
AuthorDate: Wed Mar 30 11:58:04 2022 +0200
Commit: Luboš Luňák 
CommitDate: Tue May 31 09:21:32 2022 +0200

reduce Calc's INITIALCOLCOUNT to 1

Columns should be dynamically allocated on demand, so there should
be theoretically no good reason to allocate 64 initially. In practice
doing so hides all places that do not allocate columns as needed.

Change-Id: I8b46ecc97852ed23369e720f50f3266c48440435
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133311
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133800
Tested-by: Jenkins CollaboraOffice 

diff --git a/sc/inc/address.hxx b/sc/inc/address.hxx
index 68bbe7dad075..8cf39ccfdf64 100644
--- a/sc/inc/address.hxx
+++ b/sc/inc/address.hxx
@@ -61,7 +61,7 @@ const SCSIZE   SCSIZE_MAX   = 
::std::numeric_limits::max();
 // Count values
 const SCROW   MAXROWCOUNT= 1048576;
 const SCCOL   MAXCOLCOUNT= 16384;
-const SCCOL   INITIALCOLCOUNT = 64; // initial number of columns we 
allocate memory for
+const SCCOL   INITIALCOLCOUNT = 1; // initial number of columns we 
allocate memory for
 /// limiting to 1 for now, problem with 32 bit builds for now
 const SCTAB   MAXTABCOUNT= 1;
 // Maximum values
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx
index fbfa84fb0450..ff36fa0542ef 100644
--- a/sc/qa/unit/ucalc.cxx
+++ b/sc/qa/unit/ucalc.cxx
@@ -1413,48 +1413,55 @@ void Test::testIteratorsUnallocatedColumnsAttributes()
 {
 m_pDoc->InsertTab(0, "Tab1");
 
+// Set values in first two columns, to ensure allocation of those columns.
+m_pDoc->SetValue(ScAddress(0,1,0), 1);
+m_pDoc->SetValue(ScAddress(1,1,0), 2);
+constexpr SCCOL allocatedColsCount = 2;
+assert( allocatedColsCount >= INITIALCOLCOUNT );
+CPPUNIT_ASSERT_EQUAL(allocatedColsCount, 
m_pDoc->GetAllocatedColumnsCount(0));
+
 // Make entire second row and third row bold.
 ScPatternAttr boldAttr(m_pDoc->GetPool());
 boldAttr.GetItemSet().Put(SvxWeightItem(WEIGHT_BOLD, ATTR_FONT_WEIGHT));
 m_pDoc->ApplyPatternAreaTab(0, 1, m_pDoc->MaxCol(), 2, 0, boldAttr);
 
 // That shouldn't need allocating more columns, just changing the default 
attribute.
-CPPUNIT_ASSERT_EQUAL(SCCOL(INITIALCOLCOUNT), 
m_pDoc->GetAllocatedColumnsCount(0));
+CPPUNIT_ASSERT_EQUAL(allocatedColsCount, 
m_pDoc->GetAllocatedColumnsCount(0));
 vcl::Font aFont;
 const ScPatternAttr* pattern = m_pDoc->GetPattern(m_pDoc->MaxCol(), 1, 0);
 pattern->GetFont(aFont, SC_AUTOCOL_RAW);
 CPPUNIT_ASSERT_EQUAL_MESSAGE("font should be bold", WEIGHT_BOLD, 
aFont.GetWeight());
 
 // Test iterators.
-ScDocAttrIterator docit( *m_pDoc, 0, INITIALCOLCOUNT - 1, 1, 
INITIALCOLCOUNT, 2 );
+ScDocAttrIterator docit( *m_pDoc, 0, allocatedColsCount - 1, 1, 
allocatedColsCount, 2 );
 SCCOL col1, col2;
 SCROW row1, row2;
 CPPUNIT_ASSERT_EQUAL( pattern, docit.GetNext( col1, row1, row2 ));
-CPPUNIT_ASSERT_EQUAL( SCCOL(INITIALCOLCOUNT - 1), col1 );
+CPPUNIT_ASSERT_EQUAL( SCCOL(allocatedColsCount - 1), col1 );
 CPPUNIT_ASSERT_EQUAL( SCROW(1), row1 );
 CPPUNIT_ASSERT_EQUAL( SCROW(2), row2 );
 CPPUNIT_ASSERT_EQUAL( pattern, docit.GetNext( col1, row1, row2 ));
-CPPUNIT_ASSERT_EQUAL( INITIALCOLCOUNT, col1 );
+CPPUNIT_ASSERT_EQUAL( allocatedColsCount, col1 );
 CPPUNIT_ASSERT_EQUAL( SCROW(1), row1 );
 CPPUNIT_ASSERT_EQUAL( SCROW(2), row2 );
 CPPUNIT_ASSERT( docit.GetNext( col1, row1, row2 ) == nullptr );
 
-ScAttrRectIterator rectit( *m_pDoc, 0, INITIALCOLCOUNT - 1, 1, 
INITIALCOLCOUNT, 2 );
+ScAttrRectIterator rectit( *m_pDoc, 0, allocatedColsCount - 1, 1, 
allocatedColsCount, 2 );
 CPPUNIT_ASSERT_EQUAL( pattern, rectit.GetNext( col1, col2, row1, row2 ));
-CPPUNIT_ASSERT_EQUAL( SCCOL(INITIALCOLCOUNT - 1), col1 );
-CPPUNIT_ASSERT_EQUAL( INITIALCOLCOUNT, col2 );
+CPPUNIT_ASSERT_EQUAL( SCCOL(allocatedColsCount - 1), col1 );
+CPPUNIT_ASSERT_EQUAL( allocatedColsCount, col2 );
 CPPUNIT_ASSERT_EQUAL( SCROW(1), row1 );
 CPPUNIT_ASSERT_EQUAL( SCROW(2), row2 );
 CPPUNIT_ASSERT( rectit.GetNext( col1, col2, row1, row2 ) == nullptr );
 
-ScHorizontalAttrIterator horit( *m_pDoc, 0, INITIALCOLCOUNT - 1, 1, 
INITIALCOLCOUNT, 2 );
+ScHorizontalAttrIterator horit( *m_pDoc, 0, allocatedColsCount - 1, 1, 
allocatedColsCount, 2 );
 CPPUNIT_ASSERT_EQUAL( pattern, horit.GetNext( col1, col2, row1 ));
-CPPUNIT_ASSERT_EQUAL( SCCOL(INITIALCOLCOUNT - 1), col1 );
-CPPUNIT_ASSERT_EQUAL( INITIALCOLCOUNT, col2 );
+CPPUNIT_ASSERT_EQUAL( SCCOL(allocatedColsCount - 1), col1 );
+CPPUN

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - 2 commits - sc/inc sc/qa sc/source

2022-05-31 Thread Luboš Luňák (via logerrit)
 sc/inc/attarray.hxx  |2 -
 sc/qa/unit/ucalc.cxx |   74 +++
 sc/source/core/data/attarray.cxx |   35 --
 sc/source/core/data/table2.cxx   |2 -
 4 files changed, 92 insertions(+), 21 deletions(-)

New commits:
commit 391ce12ab3b1da06bb1a5ecfdb5ec26052ac8f95
Author: Luboš Luňák 
AuthorDate: Mon May 30 16:33:15 2022 +0200
Commit: Luboš Luňák 
CommitDate: Tue May 31 09:21:15 2022 +0200

fix setting cell borders for unallocated cells

First of all, it should not be clamped to allocated columns. Second,
06d3294502413a231e5c5265609862c7f67a2f2b incorrectly handled
unallocated columns by setting the attribute for all rows, instead
of handling the inner ones differently.

Change-Id: I3115b314971f8c152cbdeda674863a8a78ee12eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135136
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Luboš Luňák 

diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx
index 3c9a3db2417c..fbfa84fb0450 100644
--- a/sc/qa/unit/ucalc.cxx
+++ b/sc/qa/unit/ucalc.cxx
@@ -187,6 +187,7 @@ public:
 void testFormulaPosition();
 void testFormulaWizardSubformula();
 void testDiagonalBorders();
+void testWholeDocBorders();
 
 /**
  * Make sure the sheet streams are invalidated properly.
@@ -318,6 +319,7 @@ public:
 CPPUNIT_TEST(testFormulaPosition);
 CPPUNIT_TEST(testFormulaWizardSubformula);
 CPPUNIT_TEST(testDiagonalBorders);
+CPPUNIT_TEST(testWholeDocBorders);
 CPPUNIT_TEST(testJumpToPrecedentsDependents);
 CPPUNIT_TEST(testSetBackgroundColor);
 CPPUNIT_TEST(testRenameTable);
@@ -6299,6 +6301,78 @@ void Test::testDiagonalBorders()
 m_pDoc->DeleteTab(0);
 }
 
+void Test::testWholeDocBorders()
+{
+m_pDoc->InsertTab(0, "Borders");
+
+// Set outside border to be on all sides, and inside borders to be only 
vertical.
+// This should result in edge borders of the spreadsheets being set, but 
internal
+// borders between cells should be only vertical, not horizontal.
+::editeng::SvxBorderLine line(nullptr, 50, SvxBorderLineStyle::SOLID);
+SvxBoxItem borderItem(ATTR_BORDER);
+borderItem.SetLine(&line, SvxBoxItemLine::LEFT);
+borderItem.SetLine(&line, SvxBoxItemLine::RIGHT);
+borderItem.SetLine(&line, SvxBoxItemLine::TOP);
+borderItem.SetLine(&line, SvxBoxItemLine::BOTTOM);
+SvxBoxInfoItem boxInfoItem(ATTR_BORDER);
+boxInfoItem.SetLine(&line, SvxBoxInfoItemLine::VERT);
+
+ScMarkData mark( m_pDoc->GetSheetLimits(), ScRange( 0, 0, 0, 
m_pDoc->MaxCol(), m_pDoc->MaxRow(), 0 ));
+m_pDoc->ApplySelectionFrame( mark, borderItem, &boxInfoItem );
+
+const ScPatternAttr* attr;
+attr = m_pDoc->GetPattern( 0, 0, 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetBottom());
+
+attr = m_pDoc->GetPattern( 1, 0, 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetBottom());
+
+attr = m_pDoc->GetPattern( 0, 1, 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetBottom());
+
+attr = m_pDoc->GetPattern( 1, 1, 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetBottom());
+
+attr = m_pDoc->GetPattern( m_pDoc->MaxCol(), 0, 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetBottom());
+
+attr = m_pDoc->GetPattern( 0, m_pDoc->MaxRow(), 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetBottom());
+
+attr = m_pDoc->GetPattern( m_pDoc->MaxCol(), m_pDoc->MaxRow(), 0 );
+CPPUNIT_ASSERT(attr);
+CPPUNIT_ASSERT(!attr->GetItem(ATTR_BORDER).GetTop());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetLeft());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetRight());
+CPPUNIT_ASSERT(attr->GetItem(ATTR_BORDER).GetBottom

[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-4' - 3 commits - scripting/Jar_ScriptFramework.mk scripting/java

2022-05-31 Thread Samuel Mehrbrodt (via logerrit)
 scripting/Jar_ScriptFramework.mk   
 |1 
 scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java  
 |4 
 scripting/java/com/sun/star/script/framework/provider/ScriptEditor.java
 |   61 --
 scripting/java/com/sun/star/script/framework/provider/ScriptEditorBase.java
 |   73 
 
scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java
   |6 
 
scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
   |   91 --
 
scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java
 |6 
 7 files changed, 129 insertions(+), 113 deletions(-)

New commits:
commit 92617320938b6710dc9cb8eac48ab85c2ceaa867
Author: Samuel Mehrbrodt 
AuthorDate: Tue May 31 09:10:57 2022 +0200
Commit: Samuel Mehrbrodt 
CommitDate: Tue May 31 09:10:57 2022 +0200

Revert "Related tdf#116767: Call URLClassLoader.close"

This reverts commit 418533f0af7cd303d559c8fb136c49e7e9fb0d79.

diff --git 
a/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java 
b/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
index 0974b8874110..b5e6e3085bd2 100644
--- 
a/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
+++ 
b/scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java
@@ -33,7 +33,7 @@ public class ClassLoaderFactory {
 
 private ClassLoaderFactory() {}
 
-public static URLClassLoader getURLClassLoader(ScriptMetaData scriptData) {
+public static ClassLoader getURLClassLoader(ScriptMetaData scriptData) {
 ClassLoader parent = scriptData.getClass().getClassLoader();
 URL[] classPath = scriptData.getClassPath();
 LogUtils.DEBUG("Classpath has length " + classPath.length);
@@ -45,7 +45,7 @@ public class ClassLoaderFactory {
 return getURLClassLoader(parent, classPath);
 }
 
-public static URLClassLoader getURLClassLoader(final ClassLoader parent,
+public static ClassLoader getURLClassLoader(final ClassLoader parent,
 final URL[] classpath) {
 return AccessController.doPrivileged(
 new PrivilegedAction() {
diff --git 
a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
 
b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
index 63dc3169f759..eeea0d49ebe5 100644
--- 
a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
+++ 
b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
@@ -45,8 +45,6 @@ import com.sun.star.uno.Any;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.XComponentContext;
 
-import java.io.IOException;
-import java.net.URLClassLoader;
 import java.util.ArrayList;
 
 public class ScriptProviderForJava {
@@ -184,63 +182,56 @@ class ScriptImpl implements XScript {
 ScriptDescriptor scriptDesc =
 new ScriptDescriptor(metaData.getLanguageName());
 
+LogUtils.DEBUG("Classloader starting...");
+
+ClassLoader scriptLoader =
+ClassLoaderFactory.getURLClassLoader(metaData);
+
+LogUtils.DEBUG("Classloader finished...");
+
+ArrayList invocationArgList = new ArrayList();
 Object[] invocationArgs = null;
-ScriptProxy script = null;
 
-LogUtils.DEBUG("Classloader starting...");
+LogUtils.DEBUG("Parameter Mapping...");
 
-try (URLClassLoader scriptLoader = 
ClassLoaderFactory.getURLClassLoader(metaData)) {
-LogUtils.DEBUG("Classloader finished...");
+// Setup Context Object
+XScriptContext xSc =
+ScriptContext.createContext(m_xModel, m_xInvocContext,
+m_xContext, m_xMultiComponentFactory);
 
-ArrayList invocationArgList = new ArrayList();
+scriptDesc.addArgumentType(XScriptContext.class);
+invocationArgList.add(xSc);
 
-LogUtils.DEBUG("Parameter Mapping...");
+for (int i = 0; i < params.length; i++) {
+scriptDesc.addArgumentType(params[ i ].getClass());
+invocationArgList.add(params[ i ]);
+}
 
-// Setup Context Object
-XScriptContext xSc =
-ScriptContext.createContext(m_xModel, m_xInvocContext,
-m_xContext, 
m_xMultiComponentFactory);
+if (!invocationArgList.isEmpty()) {
+invocationArgs = invocationArgList.toArray();
+}
 
-scriptDesc.addArgumentType(XScriptContext.class);
-invocationArgList.add(xSc);
+LogUtils.DEBUG("ScriptProxy starting... ");
+ScriptProxy script = null;
 
-for (int i = 0; i < params.leng