[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit de746cd639513f498c93aced200ad9a80975bda5 Author: Seth Chaiklin AuthorDate: Fri Mar 26 01:24:11 2021 +0100 Commit: Gerrit Code Review CommitDate: Fri Mar 26 01:24:11 2021 +0100 Update git submodules * Update helpcontent2 from branch 'master' to a21d3cc17c6990acb7125e24039e33bc4840b1e8 - tdf#139667 one last numbering style to repair Change-Id: Iea67c50bfd8d9a34a895227b215f0d8ee9f2bd53 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/113118 Reviewed-by: Seth Chaiklin Tested-by: Jenkins diff --git a/helpcontent2 b/helpcontent2 index 6f068cc382d0..a21d3cc17c69 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit 6f068cc382d085ade3ef7177cc06859fcce1cf2c +Subproject commit a21d3cc17c6990acb7125e24039e33bc4840b1e8 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: source/text
source/text/swriter/01/05030800.xhp |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit a21d3cc17c6990acb7125e24039e33bc4840b1e8 Author: Seth Chaiklin AuthorDate: Fri Mar 26 01:20:02 2021 +0100 Commit: Seth Chaiklin CommitDate: Fri Mar 26 01:24:11 2021 +0100 tdf#139667 one last numbering style to repair Change-Id: Iea67c50bfd8d9a34a895227b215f0d8ee9f2bd53 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/113118 Reviewed-by: Seth Chaiklin Tested-by: Jenkins diff --git a/source/text/swriter/01/05030800.xhp b/source/text/swriter/01/05030800.xhp index 4c77e199b..5ad10aed5 100644 --- a/source/text/swriter/01/05030800.xhp +++ b/source/text/swriter/01/05030800.xhp @@ -55,7 +55,7 @@ Edit Style - Edit the properties of the selected numbering style. These properties will apply to all paragraphs formatted with the given numbering style. + Edit the properties of the selected list style. These properties will apply to all paragraphs formatted with the given list style. This button is disabled when Chapter Numbering is applied. Choose Tools - Chapter Numbering to edit the outline level and numbering format. Outline level and List style are independent of each other. Use Tools - Chapter Numbering to assign a numbering format to paragraph styles used as headings in a document outline structure. This section only appears when you edit the properties of the current paragraph by choosing Format - Paragraph. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/qa
sc/qa/unit/uicalc/data/tdf112884.ods |binary sc/qa/unit/uicalc/uicalc.cxx | 24 2 files changed, 24 insertions(+) New commits: commit 3e7e6f6fc7f8f03c6ba329c547749e3f3746c2a0 Author: Xisco Fauli AuthorDate: Thu Mar 25 23:38:25 2021 +0100 Commit: Xisco Fauli CommitDate: Fri Mar 26 00:54:36 2021 +0100 tdf#112884: sc_uicalc: Add unittest Change-Id: I05802b13cc09b559559206e6a76ce523bea96d61 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113110 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/qa/unit/uicalc/data/tdf112884.ods b/sc/qa/unit/uicalc/data/tdf112884.ods new file mode 100644 index ..a39a1789ef21 Binary files /dev/null and b/sc/qa/unit/uicalc/data/tdf112884.ods differ diff --git a/sc/qa/unit/uicalc/uicalc.cxx b/sc/qa/unit/uicalc/uicalc.cxx index e3f1d2e14496..b0281d66cf62 100644 --- a/sc/qa/unit/uicalc/uicalc.cxx +++ b/sc/qa/unit/uicalc/uicalc.cxx @@ -,6 +,30 @@ CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf112735) CPPUNIT_ASSERT_EQUAL(OUString("(empty)"), pDoc->GetString(ScAddress(1, 0, 0))); } +CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf112884) +{ +ScModelObj* pModelObj = createDoc("tdf112884.ods"); +ScDocument* pDoc = pModelObj->GetDocument(); +CPPUNIT_ASSERT(pDoc); + +CPPUNIT_ASSERT_EQUAL(OUString("0.5"), pDoc->GetString(ScAddress(6, 2, 0))); +CPPUNIT_ASSERT_EQUAL(OUString("0.667"), pDoc->GetString(ScAddress(6, 3, 0))); +CPPUNIT_ASSERT_EQUAL(OUString("0.833"), pDoc->GetString(ScAddress(6, 4, 0))); +CPPUNIT_ASSERT_EQUAL(OUString("#DIV/0!"), pDoc->GetString(ScAddress(6, 5, 0))); + +goToCell("G3"); + +dispatchCommand(mxComponent, ".uno:RecalcPivotTable", {}); + +// Without the fix in place, this test would haved failed with +// - Expected: #DIV/0! +// - Actual : 0.5 +CPPUNIT_ASSERT_EQUAL(OUString("#DIV/0!"), pDoc->GetString(ScAddress(6, 2, 0))); +CPPUNIT_ASSERT_EQUAL(OUString("0.5"), pDoc->GetString(ScAddress(6, 3, 0))); +CPPUNIT_ASSERT_EQUAL(OUString("0.667"), pDoc->GetString(ScAddress(6, 4, 0))); +CPPUNIT_ASSERT_EQUAL(OUString("0.833"), pDoc->GetString(ScAddress(6, 5, 0))); +} + CPPUNIT_TEST_FIXTURE(ScUiCalcTest, testTdf133342) { ScModelObj* pModelObj = createDoc("tdf133342.ods"); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 4623d6c075b7158db7e018ea74bba013ae5e6e8b Author: Seth Chaiklin AuthorDate: Thu Mar 25 23:54:56 2021 +0100 Commit: Gerrit Code Review CommitDate: Thu Mar 25 23:54:56 2021 +0100 Update git submodules * Update helpcontent2 from branch 'master' to 6f068cc382d085ade3ef7177cc06859fcce1cf2c - tdf#139667 tdf#141128 (tdf#124582 tdf#135895) num. lists,levels,styles + add about using Chapter Numbering for headings * "numbering style" -> "paragraph style" * "Numbering On/Off" -> "Toggle Ordered List" - delete a redundant paragraph * move paragraph about formatting on Bullets and Numbering bar into the unordered list. + add explanation about how to see what paragraphs are in the same list. + add about "Add to List" command * some clarifications about how to use list styles with paragraph styles and update labels used for PS dialog box. * move section about levels to end of help page + add link to "List Style" in * for paragraphs with changes, updated to * update to ,, ( swriter/guide/insert_tab_innumbering.xhp ) The original check-in of this page from 2004 referred incorrectly to outline level. The patch in tdf#124582 1ae3459c9c2983eb3718927da090670c702d44a3%5E%21 changed "outline level" to "chapter level", which was meaningless in this context. The current patch gives a better explanation of what is being modified with Tab and Shift+Tab. Change-Id: I2c5ba185072052ee7e638c8b73f98765454ae85d Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112720 Tested-by: Jenkins Reviewed-by: Seth Chaiklin diff --git a/helpcontent2 b/helpcontent2 index c32400c5c440..6f068cc382d0 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit c32400c5c4408d450ec11569ee28b0894c7392e9 +Subproject commit 6f068cc382d085ade3ef7177cc06859fcce1cf2c ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: source/text
source/text/swriter/guide/insert_tab_innumbering.xhp | 16 + source/text/swriter/guide/using_numbering.xhp| 58 ++- 2 files changed, 37 insertions(+), 37 deletions(-) New commits: commit 6f068cc382d085ade3ef7177cc06859fcce1cf2c Author: Seth Chaiklin AuthorDate: Fri Mar 19 11:18:11 2021 +0100 Commit: Seth Chaiklin CommitDate: Thu Mar 25 23:54:56 2021 +0100 tdf#139667 tdf#141128 (tdf#124582 tdf#135895) num. lists,levels,styles + add about using Chapter Numbering for headings * "numbering style" -> "paragraph style" * "Numbering On/Off" -> "Toggle Ordered List" - delete a redundant paragraph * move paragraph about formatting on Bullets and Numbering bar into the unordered list. + add explanation about how to see what paragraphs are in the same list. + add about "Add to List" command * some clarifications about how to use list styles with paragraph styles and update labels used for PS dialog box. * move section about levels to end of help page + add link to "List Style" in * for paragraphs with changes, updated to * update to ,, ( swriter/guide/insert_tab_innumbering.xhp ) The original check-in of this page from 2004 referred incorrectly to outline level. The patch in tdf#124582 1ae3459c9c2983eb3718927da090670c702d44a3%5E%21 changed "outline level" to "chapter level", which was meaningless in this context. The current patch gives a better explanation of what is being modified with Tab and Shift+Tab. Change-Id: I2c5ba185072052ee7e638c8b73f98765454ae85d Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112720 Tested-by: Jenkins Reviewed-by: Seth Chaiklin diff --git a/source/text/swriter/guide/insert_tab_innumbering.xhp b/source/text/swriter/guide/insert_tab_innumbering.xhp index 66d31680a..6d0fb9b61 100644 --- a/source/text/swriter/guide/insert_tab_innumbering.xhp +++ b/source/text/swriter/guide/insert_tab_innumbering.xhp @@ -1,7 +1,4 @@ - - - - - + -Changing the Chapter Level of Numbered and Bulleted Lists +Changing the List Level of a List Paragraph /text/swriter/guide/insert_tab_innumbering.xhp @@ -42,14 +38,14 @@ demote level;in lists -Changing the Chapter Level of Numbered and Bulleted Lists - +Changing the List Level of a List Paragraph + -To move a numbered or bulleted paragraph down one chapter level, click at the beginning of the paragraph, and then press Tab. +To move a numbered or bulleted list paragraph down one list level, click at the beginning of the paragraph, and then press Tab. -To move a numbered or bulleted paragraph up one chapter level, click at the beginning of the paragraph, and then press Shift+Tab. +To move a numbered or bulleted list paragraph up one list level, click at the beginning of the paragraph, and then press Shift+Tab. To insert a tab between the number or bullet and the paragraph text, click at the beginning of the paragraph, and then press CommandCtrl+Tab. diff --git a/source/text/swriter/guide/using_numbering.xhp b/source/text/swriter/guide/using_numbering.xhp index efc39fd64..8f0c9d58c 100644 --- a/source/text/swriter/guide/using_numbering.xhp +++ b/source/text/swriter/guide/using_numbering.xhp @@ -1,6 +1,5 @@ - - - Numbering and Numbering Styles + Numbering and Paragraph Styles /text/swriter/guide/using_numbering.xhp -numbering; manually/by styles - manual numbering in text - paragraph styles;numbering -MW deleted "applying;" -Numbering and Numbering Styles - + +numbering;manually/by styles +list styles +manual numbering in text +paragraph styles;numbering + +Numbering and Paragraph Styles + You can apply numbering to a paragraph manually or with a paragraph style. - To Apply Numbering Manually - To apply numbering manually, click in the paragraph, and then click the Numbering On/Off icon on the Formatting Bar. - You cannot apply manual numbering to paragraphs that are listed under "Special Styles" in the Styles window. + If you want numbered headings, use Tools - , instead of numbering manually. + To Apply Numbering Manually + To apply numbering manually, click in the paragraph, and then click the Toggle Ordered List icon on the Formatting bar, or use the dropdown box on the icon to select a numbering format. + You cannot apply manual numbering to paragraphs that are listed under "Special Styles" in the Styles window. UFI: the following paras moved here from text\shared\01\0605.xhpWhen you press Enter in a numbered or bulleted list, %PRODUCTNAME automatically numbers the next paragraph. To remove the numbering or bullet from the new paragraph, press Enter again. - -T
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 3aaa450482c0909230161a1a76508d7895fa9379 Author: Seth Chaiklin AuthorDate: Thu Mar 25 23:45:01 2021 +0100 Commit: Gerrit Code Review CommitDate: Thu Mar 25 23:45:01 2021 +0100 Update git submodules * Update helpcontent2 from branch 'master' to c32400c5c4408d450ec11569ee28b0894c7392e9 - tdf#141128 repair description of Bullets and Numbering bar Change-Id: I101e1dbf0531c2423872ff40cb02ec11f021e971 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112960 Reviewed-by: Seth Chaiklin Tested-by: Jenkins diff --git a/helpcontent2 b/helpcontent2 index 9404baf5976c..c32400c5c440 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit 9404baf5976c7b7e9cd56d2303c0d4ff3a633e87 +Subproject commit c32400c5c4408d450ec11569ee28b0894c7392e9 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: source/text
source/text/swriter/main0206.xhp |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit c32400c5c4408d450ec11569ee28b0894c7392e9 Author: Seth Chaiklin AuthorDate: Tue Mar 23 22:36:23 2021 +0100 Commit: Seth Chaiklin CommitDate: Thu Mar 25 23:45:01 2021 +0100 tdf#141128 repair description of Bullets and Numbering bar Change-Id: I101e1dbf0531c2423872ff40cb02ec11f021e971 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112960 Reviewed-by: Seth Chaiklin Tested-by: Jenkins diff --git a/source/text/swriter/main0206.xhp b/source/text/swriter/main0206.xhp index 164614f02..7354dd3fd 100644 --- a/source/text/swriter/main0206.xhp +++ b/source/text/swriter/main0206.xhp @@ -28,7 +28,7 @@ Bullets and Numbering Bar -The Bullets and Numbering bar contains functions to modify the structure of numbered paragraphs, including changing the order of paragraphs and defining different paragraph levels. +The Bullets and Numbering bar contains functions to modify the structure of list paragraphs, including changing their order and list level. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - oox/source sd/qa
oox/source/drawingml/shape.cxx |6 -- sd/qa/unit/data/pptx/tdf140714.pptx |binary sd/qa/unit/export-tests.cxx | 16 3 files changed, 20 insertions(+), 2 deletions(-) New commits: commit eea9c8069cbd1deeca5af6866090984f28892ac8 Author: Gülşah Köse AuthorDate: Mon Mar 22 23:39:17 2021 +0300 Commit: Jan Holesovsky CommitDate: Thu Mar 25 22:39:59 2021 +0100 tdf#140714 Import graphics cropped into custom geometry as custom shapes. Change-Id: I2054d24ce41c9f0d6cc1675f461274067c3b2898 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112943 Tested-by: Jenkins Reviewed-by: Jan Holesovsky Reviewed-by: Gülşah Köse Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113003 Tested-by: Jenkins CollaboraOffice diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx index 9e324ef69ed1..803e130b349a 100644 --- a/oox/source/drawingml/shape.cxx +++ b/oox/source/drawingml/shape.cxx @@ -726,8 +726,10 @@ Reference< XShape > const & Shape::createAndInsert( } // Use custom shape instead of GraphicObjectShape if the image is cropped to // shape. Except rectangle, which does not require further cropping -bool bIsCroppedGraphic = (aServiceName == "com.sun.star.drawing.GraphicObjectShape" && mpCustomShapePropertiesPtr->getShapePresetType() >= 0 -&& mpCustomShapePropertiesPtr->getShapePresetType() != XML_Rect && mpCustomShapePropertiesPtr->getShapePresetType() != XML_rect); +bool bIsCroppedGraphic = (aServiceName == "com.sun.star.drawing.GraphicObjectShape" && + (mpCustomShapePropertiesPtr->getShapePresetType() >= 0 || mpCustomShapePropertiesPtr->getPath2DList().size() > 0) && + mpCustomShapePropertiesPtr->getShapePresetType() != XML_Rect && + mpCustomShapePropertiesPtr->getShapePresetType() != XML_rect); bool bIsCustomShape = ( aServiceName == "com.sun.star.drawing.CustomShape" || aServiceName == "com.sun.star.drawing.ConnectorShape" || bIsCroppedGraphic); diff --git a/sd/qa/unit/data/pptx/tdf140714.pptx b/sd/qa/unit/data/pptx/tdf140714.pptx new file mode 100644 index ..6f5e98ec66f1 Binary files /dev/null and b/sd/qa/unit/data/pptx/tdf140714.pptx differ diff --git a/sd/qa/unit/export-tests.cxx b/sd/qa/unit/export-tests.cxx index f1d5f65c36ac..fdad324b216a 100644 --- a/sd/qa/unit/export-tests.cxx +++ b/sd/qa/unit/export-tests.cxx @@ -72,6 +72,7 @@ public: void testTdf123557(); void testTdf113822(); void testTdf126761(); +void testTdf140714(); CPPUNIT_TEST_SUITE(SdExportTest); @@ -105,6 +106,7 @@ public: CPPUNIT_TEST(testTdf123557); CPPUNIT_TEST(testTdf113822); CPPUNIT_TEST(testTdf126761); +CPPUNIT_TEST(testTdf140714); CPPUNIT_TEST_SUITE_END(); @@ -1213,6 +1215,20 @@ void SdExportTest::testTdf126761() xDocShRef->DoClose(); } +void SdExportTest::testTdf140714() +{ +//Without the fix in place, shape will be imported as GraphicObjectShape instead of CustomShape. + +auto xDocShRef = loadURL(m_directories.getURLFromSrc(u"sd/qa/unit/data/pptx/tdf140714.pptx"), PPTX); +utl::TempFile tempFile; +xDocShRef = saveAndReload(xDocShRef.get(), PPTX, &tempFile); + +uno::Reference xShape(getShapeFromPage(0, 0, xDocShRef), uno::UNO_QUERY); +CPPUNIT_ASSERT_EQUAL(OUString{"com.sun.star.drawing.CustomShape"}, xShape->getShapeType()); + +xDocShRef->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdExportTest); CPPUNIT_PLUGIN_IMPLEMENT(); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: extras/source
extras/source/tipoftheday/expand_formula_bar.png |binary extras/source/tipoftheday/fraction.png |binary extras/source/tipoftheday/hybrid_pdf.png |binary extras/source/tipoftheday/icon_sets.png |binary extras/source/tipoftheday/remove_hyperlink.png |binary extras/source/tipoftheday/sum_sheets.png |binary 6 files changed New commits: commit 2587e13ce3e0a998a0651ae206a2861d3d2218c0 Author: andreas kainz AuthorDate: Tue Mar 23 23:00:39 2021 +0100 Commit: Andreas Kainz CommitDate: Thu Mar 25 22:36:16 2021 +0100 tdf#140839 all ToTD images use 150x150px size Change-Id: Ic0baa1871afb125423454f54931a3bd64bb94909 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113015 Tested-by: Jenkins Reviewed-by: Andreas Kainz diff --git a/extras/source/tipoftheday/expand_formula_bar.png b/extras/source/tipoftheday/expand_formula_bar.png index f0ffdca79350..e1d87230b0a9 100644 Binary files a/extras/source/tipoftheday/expand_formula_bar.png and b/extras/source/tipoftheday/expand_formula_bar.png differ diff --git a/extras/source/tipoftheday/fraction.png b/extras/source/tipoftheday/fraction.png index f99659ef5769..4ee2e205815d 100644 Binary files a/extras/source/tipoftheday/fraction.png and b/extras/source/tipoftheday/fraction.png differ diff --git a/extras/source/tipoftheday/hybrid_pdf.png b/extras/source/tipoftheday/hybrid_pdf.png index e4854a46d856..5c73de48fc40 100644 Binary files a/extras/source/tipoftheday/hybrid_pdf.png and b/extras/source/tipoftheday/hybrid_pdf.png differ diff --git a/extras/source/tipoftheday/icon_sets.png b/extras/source/tipoftheday/icon_sets.png index 338ab466b16f..d98bd07a529d 100644 Binary files a/extras/source/tipoftheday/icon_sets.png and b/extras/source/tipoftheday/icon_sets.png differ diff --git a/extras/source/tipoftheday/remove_hyperlink.png b/extras/source/tipoftheday/remove_hyperlink.png index 6dbfa94df0b6..aa4c5bef419e 100644 Binary files a/extras/source/tipoftheday/remove_hyperlink.png and b/extras/source/tipoftheday/remove_hyperlink.png differ diff --git a/extras/source/tipoftheday/sum_sheets.png b/extras/source/tipoftheday/sum_sheets.png index 30b0b4457b8d..e235882bfb5f 100644 Binary files a/extras/source/tipoftheday/sum_sheets.png and b/extras/source/tipoftheday/sum_sheets.png differ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 3ae2f5e71ee76f6766cec8db6e53e7e93d92f546 Author: Seth Chaiklin AuthorDate: Thu Mar 25 22:02:16 2021 +0100 Commit: Gerrit Code Review CommitDate: Thu Mar 25 22:02:16 2021 +0100 Update git submodules * Update helpcontent2 from branch 'master' to 9404baf5976c7b7e9cd56d2303c0d4ff3a633e87 - related tdf#118834 add button entry for "Reset to Parent" As part of tdf#128469, the "Standard" button for style dialogs was renamed to "Reset to Parent". The present patch adds an entry for that button to Frequently Used Buttons. The existing entry for "Standard" had a comment claiming that it applied to styles, but that description does not apply to styles. At present, there does not appear to be any explanation in online help for the "Standard" button (in the style dialogs). The description in this patch will be used as an in different help pages for that purpose. Change-Id: Ib4852185f536f67eb540851156d067e1770e26c0 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112623 Tested-by: Jenkins Reviewed-by: Seth Chaiklin diff --git a/helpcontent2 b/helpcontent2 index 32d2b31b3992..9404baf5976c 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit 32d2b31b39929b5899126f2a36919ceef8b7f809 +Subproject commit 9404baf5976c7b7e9cd56d2303c0d4ff3a633e87 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: source/text
source/text/shared/00/0001.xhp |9 - 1 file changed, 8 insertions(+), 1 deletion(-) New commits: commit 9404baf5976c7b7e9cd56d2303c0d4ff3a633e87 Author: Seth Chaiklin AuthorDate: Thu Mar 18 10:54:36 2021 +0100 Commit: Seth Chaiklin CommitDate: Thu Mar 25 22:02:16 2021 +0100 related tdf#118834 add button entry for "Reset to Parent" As part of tdf#128469, the "Standard" button for style dialogs was renamed to "Reset to Parent". The present patch adds an entry for that button to Frequently Used Buttons. The existing entry for "Standard" had a comment claiming that it applied to styles, but that description does not apply to styles. At present, there does not appear to be any explanation in online help for the "Standard" button (in the style dialogs). The description in this patch will be used as an in different help pages for that purpose. Change-Id: Ib4852185f536f67eb540851156d067e1770e26c0 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112623 Tested-by: Jenkins Reviewed-by: Seth Chaiklin diff --git a/source/text/shared/00/0001.xhp b/source/text/shared/00/0001.xhp index 06a587c9e..88e5aa0ec 100644 --- a/source/text/shared/00/0001.xhp +++ b/source/text/shared/00/0001.xhp @@ -223,10 +223,17 @@ -Standarde.g. in Format - Para StyleUFI: Name is Default on Tools-Options-Writer-Basic Fonts +StandardUFI: Name is Default on Tools-Options-Writer-Basic Fonts Resets the values visible in the dialog back to the default installation values. A confirmation does not appear before the defaults are reloaded. + +Reset to Parent +Values for the current tab are set to those found in the corresponding tab of the style specified in “Inherit from” in Organizer. In all cases, also when “Inherit from” is “- None -”, current tab values specified in “Contains” are removed. + + +This option appears only for Paragraph Style, Character Style, and Frame Style. + ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: ESC meeting agenda: 2021-03-25 16:00 Berlin time - renaming - a serious tongue-in-cheek proposal
On Thu, Mar 25, 2021 at 8:13 PM Eike Rathke wrote: > we would have to decide on female 'gata' or male 'gato' > Don't you dare to assume a gender. To be gender neutral, how about using "WOKE". ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: include/o3tl
include/o3tl/safeint.hxx | 13 +++-- 1 file changed, 3 insertions(+), 10 deletions(-) New commits: commit f8965272055bf9e7f3a26ff9f729d88ee856b592 Author: Caolán McNamara AuthorDate: Thu Mar 25 16:33:16 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 20:39:19 2021 +0100 cid#1474353 experiment to silence Untrusted loop bound Change-Id: I4436427109c92a28890a1bc7f669841c40ec2020 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113101 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/include/o3tl/safeint.hxx b/include/o3tl/safeint.hxx index 71239d59c718..c2610edacec6 100644 --- a/include/o3tl/safeint.hxx +++ b/include/o3tl/safeint.hxx @@ -239,18 +239,11 @@ make_unsigned(T value) // tools like -fsanitize=implicit-conversion should still be able to detect truncation: template constexpr T1 narrowing(T2 value) { return value; } -// std::min wrapped to inform coverity that the result is now sanitized -#if defined(__COVERITY__) -extern "C" void __coverity_tainted_data_sanitize__(void *); -#endif - +// std::min wrapped to inform coverity that the result is now deemed sanitized +// coverity[ -taint_source ] template inline T sanitizing_min(T a, T b) { -T ret = std::min(a, b); -#if defined(__COVERITY__) -__coverity_tainted_data_sanitize__(&ret); -#endif -return ret; +return std::min(a, b); } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/source
sw/source/filter/ww8/ww8scan.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 694e33c220e9918152aedadfcecddfceb3f5845f Author: Caolán McNamara AuthorDate: Thu Mar 25 16:12:54 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 20:36:52 2021 +0100 cid#1473931 silence Untrusted allocation size is *is* checked Change-Id: If8e8eafdbb8deb94c63e7e3a0aa5aaac29e52353 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113100 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/sw/source/filter/ww8/ww8scan.cxx b/sw/source/filter/ww8/ww8scan.cxx index 8fbf388cacb1..bd51f9d5bb69 100644 --- a/sw/source/filter/ww8/ww8scan.cxx +++ b/sw/source/filter/ww8/ww8scan.cxx @@ -6954,7 +6954,7 @@ WW8Style::WW8Style(SvStream& rStream, WW8Fib& rFibPara) OSL_ENSURE(m_cstd <= nMaxPossibleRecords, "allegedly more styles that available data"); -m_cstd = std::min(m_cstd, nMaxPossibleRecords); +m_cstd = o3tl::sanitizing_min(m_cstd, nMaxPossibleRecords); } // Read1STDFixed() reads a style. If the style is completely existent, ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: svx/source sw/source
svx/source/svdraw/svdedtv.cxx | 12 +++ svx/source/svdraw/svdobj.cxx | 38 + sw/source/core/frmedt/feshview.cxx |2 - 3 files changed, 43 insertions(+), 9 deletions(-) New commits: commit 50b731c84cb17d7f05a690d90588e90ee267d1c2 Author: Jim Raykowski AuthorDate: Thu Nov 12 13:18:16 2020 -0900 Commit: Noel Grandin CommitDate: Thu Mar 25 20:28:30 2021 +0100 tdf#34828 Give draw object a name when made For Writer and Calc this patch sets a name to a newly created draw object. The name is constructed from the defined singular name of the object, followed by a space, followed by the first available whole number begining with 1 that will provide name uniqueness. For Draw/Impress names are not set for an object on creation. Unnamed objects have unique names given only in the Navigator tree. The unnamed object names shown in the tree are based on the order of shapes in the document. This patch does not change any name behavior for Draw/Impress. Change-Id: I91f31364c8258f7abb5810a5865fefd6b249da03 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105774 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/svx/source/svdraw/svdedtv.cxx b/svx/source/svdraw/svdedtv.cxx index 56cd41c700b1..c49474cf6c20 100644 --- a/svx/source/svdraw/svdedtv.cxx +++ b/svx/source/svdraw/svdedtv.cxx @@ -36,6 +36,7 @@ #include #include +#include using namespace com::sun::star; @@ -1002,6 +1003,17 @@ bool SdrEditView::InsertObjectAtView(SdrObject* pObj, SdrPageView& rPV, SdrInser AddUndo(GetModel()->GetSdrUndoFactory().CreateUndoNewObject(*pObj)); } +css::uno::Reference xServices(GetModel()->getUnoModel(), + css::uno::UNO_QUERY); +if (xServices->supportsService("com.sun.star.sheet.SpreadsheetDocument") || +xServices->supportsService("com.sun.star.text.TextDocument")) +{ +const bool bUndo(IsUndoEnabled()); +GetModel()->EnableUndo(false); +pObj->MakeNameUnique(); +GetModel()->EnableUndo(bUndo); +} + if (!(nOptions & SdrInsertFlags::DONTMARK)) { if (!(nOptions & SdrInsertFlags::ADDMARK)) UnmarkAllObj(); MarkObj(pObj,&rPV); diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx index 9413f5152d47..71272cb85a20 100644 --- a/svx/source/svdraw/svdobj.cxx +++ b/svx/source/svdraw/svdobj.cxx @@ -118,6 +118,9 @@ #include #include +#include +#include + using namespace ::com::sun::star; @@ -3060,6 +3063,22 @@ bool SdrObject::IsTextBox() const void SdrObject::MakeNameUnique() { +if (GetName().isEmpty()) +{ +if (const E3dScene* pE3dObj = dynamic_cast(this)) +{ +SdrObjList* pObjList = pE3dObj->GetSubList(); +if (pObjList) +{ +SdrObject* pObj0 = pObjList->GetObj(0); +if (pObj0) +SetName(pObj0->TakeObjNameSingul()); +} +} +else +SetName(TakeObjNameSingul()); +} + std::unordered_set aNameSet; MakeNameUnique(aNameSet); } @@ -3086,17 +3105,20 @@ void SdrObject::MakeNameUnique(std::unordered_set& rNameSet) } } -OUString sName(GetName()); -OUString sRootName(GetName()); -sal_Int32 index = sName.lastIndexOf("_"); -if ( index > 0) -sRootName = sRootName.copy(0, index); +OUString sName(GetName().trim()); +OUString sRootName(sName); -sal_uInt32 n = 0; -while (rNameSet.find(sName) != rNameSet.end()) +if (!sName.isEmpty() && rtl::isAsciiDigit(sName[sName.getLength() - 1])) { -sName = sRootName + "_" + OUString::number(n++); +sal_Int32 nPos(sName.getLength() - 1); +while (nPos > 0 && rtl::isAsciiDigit(sName[--nPos])); +sRootName = sName.copy(0, nPos + 1).trim(); } +else +sName += " 1"; + +for (sal_uInt32 n = 1; rNameSet.find(sName) != rNameSet.end(); n++) +sName = sRootName + " " + OUString::number(n); rNameSet.insert(sName); SetName(sName); diff --git a/sw/source/core/frmedt/feshview.cxx b/sw/source/core/frmedt/feshview.cxx index af1a729eb446..749a58439f0d 100644 --- a/sw/source/core/frmedt/feshview.cxx +++ b/sw/source/core/frmedt/feshview.cxx @@ -2038,7 +2038,7 @@ bool SwFEShell::ImpEndCreate() { bool bRestore = GetDoc()->GetIDocumentUndoRedo().DoesDrawUndo(); GetDoc()->GetIDocumentUndoRedo().DoDrawUndo(false); -rSdrObj.SetName(GetUniqueShapeName()); +rSdrObj.MakeNameUnique(); GetDoc()->GetIDocumentUndoRedo().DoDrawUndo(bRestore); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: ESC meeting agenda: 2021-03-25 16:00 Berlin time - renaming - a serious tongue-in-cheek proposal
Hi, On Thursday, 2021-03-25 07:52:27 +, antlists wrote: > On 24/03/2021 23:53, Thorsten Behrens wrote: > > antlists wrote: > > > For those who get the Rossini, my favourite would be "gatti" (or > > > whatever the singular form is). gatto (male) or gatta (female) > > I like where this is going. :) > > something as violently efficient as '__aa' - to make sure the most > > important branch always comes out top? > Trouble is, __aa is six keystrokes on my keyboard, while gatti is five. 'dog' is only three keystrokes and 'god' reverse, so we could blame everything wrong going on that. Also "eat your own dog food". I'm for 'cat' though, but 'squirrel' would be nicer (for personal reasons). To cater for non-English languages we could choose Spanish, we would have to decide on female 'gata' or male 'gato' which is even only four keystrokes. 'ardilla' (nice sounding squirrel). SCNR Eike -- GPG key 0x6A6CD5B765632D3A - 2265 D7F3 A7B0 95CC 3918 630B 6A6C D5B7 6563 2D3A signature.asc Description: PGP signature ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] libcdr.git: src/lib
src/lib/CDRParser.cpp |3 +++ 1 file changed, 3 insertions(+) New commits: commit d9e6f53fad91ef2a8a2f7a6dd1776c2b779f34af Author: Fridrich Štrba AuthorDate: Thu Mar 25 18:47:48 2021 +0100 Commit: Fridrich Štrba CommitDate: Thu Mar 25 18:47:48 2021 +0100 silence warnings of newer boost in json parser Change-Id: Icfbd31cb08c994c494758dcd86b72ea68b4f54b0 diff --git a/src/lib/CDRParser.cpp b/src/lib/CDRParser.cpp index 299673a..5b11d75 100644 --- a/src/lib/CDRParser.cpp +++ b/src/lib/CDRParser.cpp @@ -17,6 +17,9 @@ #ifndef BOOST_ALL_NO_LIB #define BOOST_ALL_NO_LIB 1 #endif +#ifndef BOOST_BIND_GLOBAL_PLACEHOLDERS +#define BOOST_BIND_GLOBAL_PLACEHOLDERS 1 +#endif #include #include #include ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
ESC meeting minutes: 2021-03-25
* Present: + Caolan, Sophie, Lubos, Thorsten, Michael S, Heiko, Cloph, Olivier, Xisco, Michael M, Aron * Completed Action Items: + None * Pending Action Items: + None * Release Engineering update (Cloph) + 7.2 alpha 1 in 2nd week of May + 7.1 status: 7.1.2 rc2 was tagged yesterday, builds completing + 7.0 status: 7.0.6 rc1 on the week of 18th April + Remotes: Android, iOS + Android viewer * master branch rename (Cloph) + https://redmine.documentfoundation.org/issues/3442 + see mailing list thread at https://lists.freedesktop.org/archives/libreoffice/2021-March/087045.html + who says this is actually a good change? (Lubos) + how do we know this is a good change? + from a discussion in IRC after https://github.com/github/renaming, first discussed ESC-2021-01-14 (Heiko) + statement noone complained doesn’t say much – prolly not many affected people in the community (which touches at the problem) (Thorsten) + broadly IT industry overwhelmingly male & white + discussing only ‘master’ name branch, not master/slave (Lubos) + so perhaps reason – why no reason, may be turned off. + some amount of guessing here. + how far do you want to go? (Michael M) + some concern around the slippery slope on-list + generally – lets follow industry here (Thorsten) + master for branches – debate is ongoing (Thorsten) + comes from bitkeeper arguably ? + discussion: https://mail.gnome.org/archives/desktop-devel-list/2019-May/msg00066.html + not convinced (Lubos) + blog saying don’t make silly token changes in liu of real change + if we decide it – perhaps its just a token change, not talking + bit of a guessing game then? (Thorsten) + main question - is there a harm if we change? (Thorsten) + there is always a cost, though not large (Michael M) + though supportive of the rename myself. + some costs paid already with list renames (Lubos) + that’s not major but more for master + bigger + concern about future taking of offence at ever smaller things. + moral licensing issue, following the trend + hear the concern re: endless stream of nonsense changes (Thorsten) + decidedly not what this is about + renaming the branch name is a small thing – don’t care much this way or another – feeling much stronger pwrt. actual master/slave. + in a way git branch name is a smaller issue. + society is always changing, we should not stay behind too much + we need to be friendly / welcoming & accept change + were concerns re: changing file format (Michael M) + can’t (Thorsten) + can’t change API, or ODF – which has master-pages there in a reasonable timeframe + it’s not the end of the world if the ESC passes for the moment. + changed German → English names in comments. + lots of changes cause other people work: net positive on balance + feel an over-estimate of gain, and under-estimate of cost (Lubos) + only direct feedback: its a token change. + git up-stream has not changed yet + git up-stream has to deal with tons of downstreams (Christian) + many have changes, and many have not (Lubos) + blog post: github – virtue signalling around ‘master’ branch + cheap / look-good virtue ? + if consensus on the RFC as a reasonable bound ? (Michael M) + perhaps helpful to stick to this. + didn’t realize git upstream didn’t change (Michael S) + tabled decision up-stream June/July – didn’t change (Thorsten) + are planning to change in version 3.0 (Aron) + decision has been made. + propose follow git with the rename in 3.0 ? (Michael M) + has no impact on the cost (Christian) + changes non-technical work we need to do (Lubos) + concern around vocabulary we can use in future (Olivier) + when does git 3.0 land ? (Christian) + “towards the end of the year” – from the thread (Miklos) + git make renaming a bit more smooth + also feature to have aliases for branches (Christian) + could we change it now with an alias ? (Michael) + unclear if gerrit supports it (Christian) + benefit is small, cost is small – leave it to infra (Michael S) + don’t mind (Christian) + 1st April might not be best re: timing for other reasons + don’t want to delay it indefinitely + not a big deal, don’t think it has a measurable impact + all about context cf. sauce naming dispute + who am I to judge + concerns on the mailing list (Michael M) + slightly skewed discussion on the list (Christian) + opposite is also true if not deciding to do it (Thorsten) + in this venue finding a sensible approach is good. + indeed, with people not here it’s harder. + there’s of course a cl
[Libreoffice-commits] libcdr.git: src/lib
src/lib/CDRParser.cpp | 81 ++ 1 file changed, 30 insertions(+), 51 deletions(-) New commits: commit 695586b02a9bf5e79c3e0865c9f1006595e15071 Author: Fridrich Štrba AuthorDate: Thu Mar 25 17:05:12 2021 +0100 Commit: Fridrich Štrba CommitDate: Thu Mar 25 17:05:12 2021 +0100 Fixes for omnibus txsm Change-Id: I227aef5ff9ef68f1a377181c6779358383971507 diff --git a/src/lib/CDRParser.cpp b/src/lib/CDRParser.cpp index de3df96..299673a 100644 --- a/src/lib/CDRParser.cpp +++ b/src/lib/CDRParser.cpp @@ -2479,59 +2479,39 @@ void libcdr::CDRParser::readTxsm(librevenge::RVNGInputStream *input, unsigned le return readTxsm6(input); if (m_version >= 1600) return readTxsm16(input); + +input->seek(0x24, librevenge::RVNG_SEEK_CUR); if (m_version >= 1500) - input->seek(0x25, librevenge::RVNG_SEEK_CUR); -else - input->seek(0x24, librevenge::RVNG_SEEK_CUR); -if (readU32(input)) -{ - if (m_version < 800) -input->seek(32, librevenge::RVNG_SEEK_CUR); -} -if (m_version < 800) + input->seek(1, librevenge::RVNG_SEEK_CUR); +else if (m_version < 800) input->seek(4, librevenge::RVNG_SEEK_CUR); -unsigned textId = readU32(input); -input->seek(48, librevenge::RVNG_SEEK_CUR); -if (m_version >= 800) -{ - if (readU32(input)) - { -input->seek(32, librevenge::RVNG_SEEK_CUR); -if (m_version >= 1300) - input->seek(8, librevenge::RVNG_SEEK_CUR); - } -} -if (m_version >= 1500) - input->seek(12, librevenge::RVNG_SEEK_CUR); -unsigned num = readU32(input); -unsigned num4 = 1; -if (!num) -{ - if (m_version >= 800) -input->seek(4, librevenge::RVNG_SEEK_CUR); +unsigned numFrames = readU32(input); +unsigned textId = 0; +for (unsigned i=0; i < numFrames; ++i) +{ + unsigned frameId = readU32(input); + textId = frameId; + input->seek(48, librevenge::RVNG_SEEK_CUR); + input->seek(36, librevenge::RVNG_SEEK_CUR); if (m_version > 800) input->seek(2, librevenge::RVNG_SEEK_CUR); - if (m_version >= 1400) + if (m_version > 1300) input->seek(2, librevenge::RVNG_SEEK_CUR); - input->seek(24, librevenge::RVNG_SEEK_CUR); - if (m_version < 800) -input->seek(8, librevenge::RVNG_SEEK_CUR); - num4 = readU32(input); + if (m_version > 1400) +input->seek(12, librevenge::RVNG_SEEK_CUR); } -for (unsigned j = 0; j < num4 && getRemainingLength(input) >= 14; ++j) +unsigned numPara = readU32(input); + +for (unsigned j = 0; j < numPara; ++j) { unsigned stlId = readU32(input); - if (m_version >= 1300 && num) -input->seek(1, librevenge::RVNG_SEEK_CUR); input->seek(1, librevenge::RVNG_SEEK_CUR); - unsigned numRecords = readU32(input); + unsigned numStyles = readU32(input); std::map styles; - unsigned i = 0; - for (i=0; i= 3; ++i) + for (unsigned i = 0; i < numStyles; ++i) { -unsigned char fl0 = readU8(input); -readU8(input); +readU16(input); // num chars using this style unsigned char fl2 = readU8(input); unsigned char fl3 = 0; if (m_version >= 800) @@ -2568,10 +2548,10 @@ void libcdr::CDRParser::readTxsm(librevenge::RVNGInputStream *input, unsigned le std::map::const_iterator iter = m_fillStyles.find(fillId); if (iter != m_fillStyles.end()) style.m_fillStyle = iter->second; - if (m_version >= 1600) + if (m_version >= 1300) input->seek(48, librevenge::RVNG_SEEK_CUR); } -if (fl2&0x80) // Font Outl Colour +if (fl2&0x80) // Font Outl ColourStld { unsigned outlId = readU32(input); std::map::const_iterator iter = m_lineStyles.find(outlId); @@ -2591,13 +2571,14 @@ void libcdr::CDRParser::readTxsm(librevenge::RVNGInputStream *input, unsigned le if (fl3&0x20) // Something { unsigned flag = readU8(input); + input->seek(-1, librevenge::RVNG_SEEK_CUR); if (flag) -input->seek(52, librevenge::RVNG_SEEK_CUR); + { +input->seek(4, librevenge::RVNG_SEEK_CUR); // ftil fild Id +if (m_version >= 1500) + input->seek(48, librevenge::RVNG_SEEK_CUR); + } } -if (fl0 == 0x02) - if (m_version >= 1300) -input->seek(48, librevenge::RVNG_SEEK_CUR); - styles[2*i] = style; } unsigned numChars = readU32(input); @@ -2605,7 +2586,7 @@ void libcdr::CDRParser::readTxsm(librevenge::RVNGInputStream *input, unsigned le if (numChars > getRemainingLength(input) / charSize) numChars = getRemainingLength(input) / charSize; std::vector charDescriptions(numChars); - for (i=0; i= 1200) @@ -2733,8 +2714,6 @@
[Libreoffice-commits] core.git: sc/source
sc/source/core/tool/interpr1.cxx | 109 ++- 1 file changed, 73 insertions(+), 36 deletions(-) New commits: commit 042dbf83122b14fd1dd32705c8f8b7d65c22f21b Author: Eike Rathke AuthorDate: Thu Mar 25 12:04:22 2021 +0100 Commit: Eike Rathke CommitDate: Thu Mar 25 16:31:29 2021 +0100 Resolves: tdf#141146 Fix LOOKUP in array with result scalar / single reference The returns are identical to the cell range search. Also, the single reference case is just a special case of range reference and acts as row vector (as number of rows is not greater than number of columns), equally extending the passed "range" if found position is greater than 1. Extending a result range such leads to the result cell not being listened to and not acting on its changes, this was always the case for results of an extended range, and Excel seems to have the same problem. This is logical because the range cell is unknown in advance, and certainly we don't want to make LOOKUP() a volatile function being executed on each change everywhere. Solutions to this could be: - create a single cell broadcaster/listener on the fly while pushing the out-of-band cell result - this is nasty and modifying the model while interpreting is ugly and error prone and it's unclear who should destroy such broadcaster if the query or data range/array changed - so this is a no-go - create a range broadcaster/listener for the entire row right of the cell - would mean to inspect during listener setup to which parameter of which OpCode a reference belongs - really? ...no - which also doesn't help if a given range is too short and is extended - would mean to always extend the listener either as row or column * doubtable if it is really worth it for this one time off fouled up Excel behaviour * or should we rather return an error for out-of-band results? - but then again for ranges it always worked this like + do not advertise, or strongly deprecate such use + a result range should have the same length as the search range/array Change-Id: Ie903f4491844306d3768ee40bd16786ebe648461 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113085 Reviewed-by: Eike Rathke Tested-by: Jenkins diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx index 65200917a8cc..6c3b01c6a049 100644 --- a/sc/source/core/tool/interpr1.cxx +++ b/sc/source/core/tool/interpr1.cxx @@ -6589,10 +6589,9 @@ void ScInterpreter::ScLookup() SCSIZE nLenMajor = 0; // length of major direction bool bVertical = true; // whether to lookup vertically or horizontally -// The third parameter, result array, for double, string and single reference. +// The third parameter, result array, double, string and reference. double fResVal = 0.0; svl::SharedString aResStr; -ScAddress aResAdr; StackVar eResArrayType = svUnknown; if (nParamCount == 3) @@ -6614,6 +6613,11 @@ void ScInterpreter::ScLookup() } } break; +case svSingleRef: +PopSingleRef( nResCol1, nResRow1, nResTab); +nResCol2 = nResCol1; +nResRow2 = nResRow1; +break; case svMatrix: case svExternalSingleRef: case svExternalDoubleRef: @@ -6640,9 +6644,6 @@ void ScInterpreter::ScLookup() case svString: aResStr = GetString(); break; -case svSingleRef: -PopSingleRef( aResAdr ); -break; default: PushIllegalParameter(); return; @@ -6788,13 +6789,12 @@ void ScInterpreter::ScLookup() PushString( aResStr ); break; case svDoubleRef: -aResAdr.Set( nResCol1, nResRow1, nResTab); -[[fallthrough]]; case svSingleRef: -PushCellResultToken( true, aResAdr, nullptr, nullptr); +PushCellResultToken( true, ScAddress( nResCol1, nResRow1, nResTab), nullptr, nullptr); break; default: -OSL_FAIL( "ScInterpreter::ScLookup: unhandled eResArrayType, single value data"); +assert(!"ScInterpreter::ScLookup: unhandled eResArrayType, single value data"); +PushIllegalParameter(); } } else @@ -6811,7 +6811,8 @@ void ScInterpreter::ScLookup() PushCellResultToken( true, aDataAdr, nullptr, nullptr); break; default: -OSL_FAIL( "ScInterpreter::ScLookup: unhandled eDataArrayType, single value data"); +a
[Libreoffice-commits] core.git: sc/qa
sc/qa/unit/ucalc.cxx | 32 sc/qa/unit/ucalc.hxx |2 ++ 2 files changed, 34 insertions(+) New commits: commit c8c5a06eed6c22e40bda9787ace5467d551130b6 Author: Xisco Fauli AuthorDate: Thu Mar 25 15:03:40 2021 +0100 Commit: Xisco Fauli CommitDate: Thu Mar 25 16:02:38 2021 +0100 tdf#98642: sc_ucalc: Add unittest Change-Id: I38e08ebec6f0a6a50290e8009cffbddfe89ba934 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113099 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx index ec424f97f1d9..52dedc42c070 100644 --- a/sc/qa/unit/ucalc.cxx +++ b/sc/qa/unit/ucalc.cxx @@ -3399,6 +3399,38 @@ void Test::testAdvancedFilter() m_pDoc->DeleteTab(0); } +void Test::testTdf98642() +{ +m_pDoc->InsertTab(0, "Sheet1"); +m_pDoc->SetString(0, 0, 0, "test"); + +ScRangeData* pName1 = new ScRangeData( *m_pDoc, "name1", "$Sheet1.$A$1"); +ScRangeData* pName2 = new ScRangeData( *m_pDoc, "name2", "$Sheet1.$A$1"); + +std::unique_ptr pGlobalRangeName(new ScRangeName()); +pGlobalRangeName->insert(pName1); +pGlobalRangeName->insert(pName2); +m_pDoc->SetRangeName(std::move(pGlobalRangeName)); + +m_pDoc->SetString(1, 0, 0, "=name1"); +m_pDoc->SetString(1, 1, 0, "=name2"); + +CPPUNIT_ASSERT_EQUAL(OUString("test"), m_pDoc->GetString(1, 0, 0)); +CPPUNIT_ASSERT_EQUAL(OUString("test"), m_pDoc->GetString(1, 1, 0)); + +OUString aFormula; +m_pDoc->GetFormula(1,0,0, aFormula); +CPPUNIT_ASSERT_EQUAL(OUString("=name1"), aFormula); +m_pDoc->GetFormula(1,1,0, aFormula); + +// Without the fix in place, this test would have failed with +// - Expected: =name2 +// - Actual : =name1 +CPPUNIT_ASSERT_EQUAL(OUString("=name2"), aFormula); + +m_pDoc->DeleteTab(0); +} + void Test::testCopyPaste() { m_pDoc->InsertTab(0, "Sheet1"); diff --git a/sc/qa/unit/ucalc.hxx b/sc/qa/unit/ucalc.hxx index 1f6dc580922c..d5000f042c1e 100644 --- a/sc/qa/unit/ucalc.hxx +++ b/sc/qa/unit/ucalc.hxx @@ -380,6 +380,7 @@ public: void testAutofilter(); void testAutoFilterTimeValue(); void testAdvancedFilter(); +void testTdf98642(); void testCopyPaste(); void testCopyPasteAsLink(); void testCopyPasteTranspose(); @@ -746,6 +747,7 @@ public: CPPUNIT_TEST(testAutofilter); CPPUNIT_TEST(testAutoFilterTimeValue); CPPUNIT_TEST(testAdvancedFilter); +CPPUNIT_TEST(testTdf98642); CPPUNIT_TEST(testCopyPaste); CPPUNIT_TEST(testCopyPasteAsLink); CPPUNIT_TEST(testCopyPasteTranspose); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - sc/source
sc/source/ui/app/inputhdl.cxx |5 +++-- sc/source/ui/unoobj/docuno.cxx |5 + 2 files changed, 8 insertions(+), 2 deletions(-) New commits: commit 65990058f041c3f1d280a69d411eb4ceacf5a721 Author: Jan Holesovsky AuthorDate: Wed Mar 24 15:39:05 2021 +0100 Commit: Jan Holesovsky CommitDate: Thu Mar 25 15:51:48 2021 +0100 lok: Disable the "AutoInput" again. This partially reverts "lok: sc - suppress LOK editengine events for the calc input bar." The feature itself is very problematic in Online: 1) causes unwanted jumps to other cells, 2) causes the selection blinking in the cell when typing, and 3) it is very annoying in the form that in which it is implemented in LibreOffice anyway, compared to other office suites. Let's disable it, and enable again when we address the above issues. This (partially) reverts commit 91319ad56887f932b2da334db560d5d0a79a0280. Change-Id: I2234455c29069f74d13896474f3499035935931b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113047 Tested-by: Jenkins CollaboraOffice Reviewed-by: Jan Holesovsky diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx index 7e0bb9272970..954af2a304cd 100644 --- a/sc/source/ui/app/inputhdl.cxx +++ b/sc/source/ui/app/inputhdl.cxx @@ -806,7 +806,6 @@ ScInputHandler::ScInputHandler() if (comphelper::LibreOfficeKit::isActive()) { ScInputHandler::bOptLoaded = true;// Evaluate App options -ScInputHandler::bAutoComplete = true; // Is set in KeyInput } } @@ -2680,7 +2679,9 @@ void ScInputHandler::UpdateFormulaMode() if (pInputWin) pInputWin->SetFormulaMode(true); -if ( bAutoComplete ) +// in LOK, we always need to perform the GetFormulaData() call so +// that the formula insertion works +if (bAutoComplete || comphelper::LibreOfficeKit::isActive()) GetFormulaData(); UpdateParenthesis(); diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index 0e74d7dd5cda..9d2539a25bcd 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -1177,6 +1177,11 @@ void ScModelObj::initializeForTiledRendering(const css::uno::SequenceGetAppOptions() ); +aAppOptions.SetAutoComplete(false); +SC_MOD()->SetAppOptions(aAppOptions); + for (const beans::PropertyValue& rValue : rArguments) { if (rValue.Name == ".uno:SpellOnline" && rValue.Value.has()) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/filter/excel/xistream.cxx |7 --- 1 file changed, 4 insertions(+), 3 deletions(-) New commits: commit 6fbc612c1f32d1f12a1f33feb3ef08520ef5a91e Author: Caolán McNamara AuthorDate: Thu Mar 25 13:18:21 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 15:46:59 2021 +0100 cid#1448242 silence bogus Untrusted allocation size Change-Id: Ieb157af917d1a8745ca91d3cd6c54b2b7119a3fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113097 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/sc/source/filter/excel/xistream.cxx b/sc/source/filter/excel/xistream.cxx index 7cf5d972e401..f1ae53dcbd6c 100644 --- a/sc/source/filter/excel/xistream.cxx +++ b/sc/source/filter/excel/xistream.cxx @@ -19,6 +19,7 @@ #include #include +#include #include #include #include @@ -831,7 +832,7 @@ std::size_t XclImpStream::ReadUniStringExtHeader( bool& rb16Bit, sal_uInt8 nFlag OUString XclImpStream::ReadRawUniString( sal_uInt16 nChars, bool b16Bit ) { -OUStringBuffer aRet(std::min(nChars, mnRawRecLeft / (b16Bit ? 2 : 1))); +OUStringBuffer aRet(o3tl::sanitizing_min(nChars, mnRawRecLeft / (b16Bit ? 2 : 1))); sal_uInt16 nCharsLeft = nChars; sal_uInt16 nReadSize; @@ -839,7 +840,7 @@ OUString XclImpStream::ReadRawUniString( sal_uInt16 nChars, bool b16Bit ) { if( b16Bit ) { -nReadSize = std::min(nCharsLeft, mnRawRecLeft / 2); +nReadSize = o3tl::sanitizing_min(nCharsLeft, mnRawRecLeft / 2); OSL_ENSURE( (nReadSize <= nCharsLeft) || !(mnRawRecLeft & 0x1), "XclImpStream::ReadRawUniString - missing a byte" ); } @@ -911,7 +912,7 @@ void XclImpStream::IgnoreRawUniString( sal_uInt16 nChars, bool b16Bit ) { if( b16Bit ) { -nReadSize = ::std::min< sal_uInt16 >( nCharsLeft, mnRawRecLeft / 2 ); +nReadSize = o3tl::sanitizing_min(nCharsLeft, mnRawRecLeft / 2); OSL_ENSURE( (nReadSize <= nCharsLeft) || !(mnRawRecLeft & 0x1), "XclImpStream::IgnoreRawUniString - missing a byte" ); Ignore( nReadSize * 2 ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: bean/com
bean/com/sun/star/comp/beans/OOoBean.java | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) New commits: commit b4a741291d609a422f0e870ac7cd0668e8dbd0be Author: Caolán McNamara AuthorDate: Thu Mar 25 13:11:58 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 15:46:43 2021 +0100 cid#1473991 Dereference null return value Change-Id: I11d9d685a278d31f591927b67637e9224a99fb27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113096 Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/bean/com/sun/star/comp/beans/OOoBean.java b/bean/com/sun/star/comp/beans/OOoBean.java index ca9442d58427..05b5288ea528 100644 --- a/bean/com/sun/star/comp/beans/OOoBean.java +++ b/bean/com/sun/star/comp/beans/OOoBean.java @@ -1405,10 +1405,9 @@ xLayoutManager.showElement("private:resource/menubar/menubar"); iConnection.addEventListener( this ); // listen on a terminating OOo -try { -getOOoDesktop().addTerminateListener( this ); -} -catch ( Throwable aExc ) {} +com.sun.star.frame.XDesktop xDesktop = getOOoDesktop(); +if (xDesktop != null) +xDesktop.addTerminateListener( this ); // start this thread as a daemon setDaemon( true ); @@ -1425,7 +1424,9 @@ xLayoutManager.showElement("private:resource/menubar/menubar"); // do not listen on a terminating OOo anymore try { -getOOoDesktop().removeTerminateListener( this ); +com.sun.star.frame.XDesktop xDesktop = getOOoDesktop(); +if (xDesktop != null) +xDesktop.removeTerminateListener( this ); } catch ( Throwable aExc ) {} ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sd/source sd/uiconfig
sd/source/filter/html/htmlex.hxx|1 + sd/source/filter/html/pubdlg.cxx| 23 ++- sd/source/ui/inc/pubdlg.hxx |1 + sd/uiconfig/simpress/ui/publishingdialog.ui | 24 +++- 4 files changed, 43 insertions(+), 6 deletions(-) New commits: commit 1bad47097694de957857c9c891bf79a4873a97c4 Author: Andreas Heinisch AuthorDate: Wed Mar 24 21:13:38 2021 +0100 Commit: Noel Grandin CommitDate: Thu Mar 25 15:04:45 2021 +0100 tdf#67614 - Added the FHD image resolution Added the possibility to chose full hd image resolution when exporting slides via html. Change-Id: I38c721c98093fbd21d9761708edf68e26d0c97ae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113069 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sd/source/filter/html/htmlex.hxx b/sd/source/filter/html/htmlex.hxx index cad0c0cd45cf..aeef943cb8f6 100644 --- a/sd/source/filter/html/htmlex.hxx +++ b/sd/source/filter/html/htmlex.hxx @@ -40,6 +40,7 @@ namespace tools { class Rectangle; } #define PUB_LOWRES_WIDTH640 #define PUB_MEDRES_WIDTH800 #define PUB_HIGHRES_WIDTH 1024 +#define PUB_FHDRES_WIDTH1920 #define PUB_THUMBNAIL_WIDTH 256 #define PUB_THUMBNAIL_HEIGHT 192 diff --git a/sd/source/filter/html/pubdlg.cxx b/sd/source/filter/html/pubdlg.cxx index 2d283e3ae41b..5fe558f1dd22 100644 --- a/sd/source/filter/html/pubdlg.cxx +++ b/sd/source/filter/html/pubdlg.cxx @@ -429,6 +429,7 @@ SdPublishingDlg::SdPublishingDlg(weld::Window* pWindow, DocumentType eDocType) m_xPage3_Resolution_1->connect_clicked(LINK(this,SdPublishingDlg, ResolutionHdl )); m_xPage3_Resolution_2->connect_clicked(LINK(this,SdPublishingDlg, ResolutionHdl )); m_xPage3_Resolution_3->connect_clicked(LINK(this,SdPublishingDlg, ResolutionHdl )); +m_xPage3_Resolution_4->connect_clicked(LINK(this, SdPublishingDlg, ResolutionHdl)); m_xPage2_ChgDefault->connect_clicked(LINK(this,SdPublishingDlg, SlideChgHdl)); m_xPage2_ChgAuto->connect_clicked(LINK(this,SdPublishingDlg, SlideChgHdl)); @@ -564,6 +565,7 @@ void SdPublishingDlg::CreatePages() m_xPage3_Resolution_1 = m_xBuilder->weld_radio_button("resolution1Radiobutton"); m_xPage3_Resolution_2 = m_xBuilder->weld_radio_button("resolution2Radiobutton"); m_xPage3_Resolution_3 = m_xBuilder->weld_radio_button("resolution3Radiobutton"); +m_xPage3_Resolution_4 = m_xBuilder->weld_radio_button("resolution4Radiobutton"); m_xPage3_Title3 = m_xBuilder->weld_label("effectsLabel"); m_xPage3_SldSound = m_xBuilder->weld_check_button("sldSoundCheckbutton"); m_xPage3_HiddenSlides = m_xBuilder->weld_check_button("hiddenSlidesCheckbutton"); @@ -578,6 +580,7 @@ void SdPublishingDlg::CreatePages() aAssistentFunc.InsertControl(3, m_xPage3_Resolution_1.get()); aAssistentFunc.InsertControl(3, m_xPage3_Resolution_2.get()); aAssistentFunc.InsertControl(3, m_xPage3_Resolution_3.get()); +aAssistentFunc.InsertControl(3, m_xPage3_Resolution_4.get()); aAssistentFunc.InsertControl(3, m_xPage3_Title3.get()); aAssistentFunc.InsertControl(3, m_xPage3_SldSound.get()); aAssistentFunc.InsertControl(3, m_xPage3_HiddenSlides.get()); @@ -725,11 +728,13 @@ void SdPublishingDlg::GetParameterSequence( Sequence< PropertyValue >& rParams ) // Page 3 aValue.Name = "Width"; -sal_Int32 nTmpWidth = 640; +sal_Int32 nTmpWidth = PUB_LOWRES_WIDTH; if( m_xPage3_Resolution_2->get_active() ) -nTmpWidth = 800; +nTmpWidth = PUB_MEDRES_WIDTH; else if( m_xPage3_Resolution_3->get_active() ) -nTmpWidth = 1024; +nTmpWidth = PUB_HIGHRES_WIDTH; +else if (m_xPage3_Resolution_4->get_active()) +nTmpWidth = PUB_FHDRES_WIDTH; aValue.Value <<= nTmpWidth; aProps.push_back( aValue ); @@ -946,6 +951,7 @@ IMPL_LINK( SdPublishingDlg, ResolutionHdl, weld::Button&, rButton, void ) m_xPage3_Resolution_1->set_sensitive(&rButton == m_xPage3_Resolution_1.get()); m_xPage3_Resolution_2->set_sensitive(&rButton == m_xPage3_Resolution_2.get()); m_xPage3_Resolution_3->set_sensitive(&rButton == m_xPage3_Resolution_3.get()); +m_xPage3_Resolution_4->set_sensitive(&rButton == m_xPage3_Resolution_4.get()); } // Clickhandler for the ValueSet with the bitmap-buttons @@ -1296,6 +1302,7 @@ void SdPublishingDlg::SetDesign( SdPublishingDesign const * pDesign ) m_xPage3_Resolution_1->set_sensitive(pDesign->m_nResolution == PUB_LOWRES_WIDTH); m_xPage3_Resolution_2->set_sensitive(pDesign->m_nResolution == PUB_MEDRES_WIDTH); m_xPage3_Resolution_3->set_sensitive(pDesign->m_nResolution == PUB_HIGHRES_WIDTH); +m_xPage3_Resolution_4->set_sensitive(pDesign->m_nResolution == PUB_FHDRES_WIDTH); m_xPage3_SldSound->set_sensitive( pDesign->m_bSlideSound ); m_xPage3_HiddenSlides->set_sensitive( pDesign->m_bHiddenSlides ); @@ -1357,8 +1364,14 @@
[Libreoffice-commits] core.git: include/svl sc/inc sc/qa sc/source svl/source
include/svl/zforlist.hxx |7 -- sc/inc/cellform.hxx |2 - sc/inc/column.hxx|5 +++- sc/inc/queryentry.hxx|3 +- sc/inc/table.hxx |2 - sc/qa/uitest/autofilter/autofilter.py| 15 ++ sc/qa/uitest/data/autofilter/time_value.xlsx |binary sc/source/core/data/column.cxx |3 +- sc/source/core/data/column3.cxx |5 ++-- sc/source/core/data/documen3.cxx |2 - sc/source/core/data/table3.cxx | 13 +++- sc/source/core/tool/cellform.cxx |4 +-- sc/source/core/tool/queryentry.cxx |2 - sc/source/ui/unoobj/datauno.cxx | 14 - sc/source/ui/view/gridwin.cxx| 28 --- svl/source/numbers/zforlist.cxx |6 +++-- 16 files changed, 79 insertions(+), 32 deletions(-) New commits: commit 4fd1333ba4bb4f2311e9098291154772bd310429 Author: Balazs Varga AuthorDate: Thu Mar 11 14:44:49 2021 +0100 Commit: László Németh CommitDate: Thu Mar 25 15:00:31 2021 +0100 tdf#140968 tdf#140978 XLSX import: fix lost rounded filters if the stored filter values are in the visible cell format (e.g. rounded values) instead of the original (editing) values. Now AutoFilter popup window shows the items according to the visible cell format (e.g. 1.0 instead of 1.01 or 0.99), but still grouping them based on the "editing format" (e.g. not rounded values which visible during editing), i.e. there could be repeated values in the filtering conditions (e.g. two options "1.0" and "1.0" for 1.01 and 0.99). Note: Next step will be to group and filter based on the actual cell format, like MSO does, to simplify filtering of values rounded by the cell format (e.g. selecting the single AutoFilter condition "1.0" to filter both 1.01 and 0.99). Change-Id: I430da5e09794fc4ed8acf79b6485926f46b70277 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112343 Tested-by: Jenkins Reviewed-by: László Németh diff --git a/include/svl/zforlist.hxx b/include/svl/zforlist.hxx index fe148e978466..7a8703873460 100644 --- a/include/svl/zforlist.hxx +++ b/include/svl/zforlist.hxx @@ -560,9 +560,12 @@ public: OUString& sOutString, const Color** ppColor, bool bUseStarFormat = false ); /** Format a number according to the standard default format matching -the given format index */ +the given format index. rOutString will be the real cell string (e.g. +a number rounded by the cell format, which rounded value is used +in the filtering condition now), instead of the EditFormat string +(e.g a not rounded value, which is visible during editing).*/ void GetInputLineString( const double& fOutNumber, - sal_uInt32 nFIndex, OUString& rOutString ); + sal_uInt32 nFIndex, OUString& rOutString, bool bFiltering = false ); /** Format a number according to a format code string to be scanned. @return diff --git a/sc/inc/cellform.hxx b/sc/inc/cellform.hxx index afda8feea89a..02ea8b6e6347 100644 --- a/sc/inc/cellform.hxx +++ b/sc/inc/cellform.hxx @@ -44,7 +44,7 @@ public: static void GetInputString( const ScRefCellValue& rCell, sal_uInt32 nFormat, OUString& rString, SvNumberFormatter& rFormatter, -const ScDocument& rDoc ); +const ScDocument& rDoc, bool bFiltering = false ); static OUString GetOutputString( ScDocument& rDoc, const ScAddress& rPos, const ScRefCellValue& rCell ); diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx index 1395d7ec7825..4f88f556e9eb 100644 --- a/sc/inc/column.hxx +++ b/sc/inc/column.hxx @@ -134,6 +134,8 @@ class ScColumn SCCOL nCol; SCTAB nTab; +bool mbFiltering; // it is true if there is a filtering in the column + friend class ScDocument;// for FillInfo friend class ScTable; friend class ScValueIterator; @@ -181,6 +183,7 @@ public: ScDocument& GetDoc() const { return pAttrArray->GetDoc(); } SCTAB GetTab() const { return nTab; } SCCOL GetCol() const { return nCol; } +bool HasFiltering() const { return mbFiltering; } sc::CellStoreType& GetCellStore() { return maCells; } const sc::CellStoreType& GetCellStore() const { return maCells; } sc::CellTextAttrStoreType& GetCellAttrStore() { return maCellTextAttrs; } @@ -534,7 +537,7 @@ public: void GetFilterEntries( sc::ColumnBlockConstPosition& rBlockPos, SCROW nStartRow, SCROW nEndRow, -ScFilterEntries& rFilterEntries ); +ScFilterEntries& rFilterEntries, bool bFiltering ); bool GetDataEntries( SCROW nRow, std::set& rStrings, bool bLimit ) const;
[Libreoffice-commits] core.git: sw/uiconfig
sw/uiconfig/swriter/ui/paradialog.ui |6 ++ 1 file changed, 6 insertions(+) New commits: commit 8940975262a98dc1087712e366f595289ac650b3 Author: Seth Chaiklin AuthorDate: Wed Feb 17 14:02:49 2021 +0100 Commit: Seth Chaiklin CommitDate: Thu Mar 25 14:40:46 2021 +0100 tdf#128469 tooltip and extended tooltip for Reset in Paragraph dialog tooltip and extended tooltip added to "Reset" button for Paragraph dialog. Change-Id: Ica6fede2b57e8a38d989d1db870e308160c4a0cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111038 Tested-by: Jenkins Reviewed-by: Seth Chaiklin diff --git a/sw/uiconfig/swriter/ui/paradialog.ui b/sw/uiconfig/swriter/ui/paradialog.ui index ebb523d379fa..d70b7bca6903 100644 --- a/sw/uiconfig/swriter/ui/paradialog.ui +++ b/sw/uiconfig/swriter/ui/paradialog.ui @@ -29,6 +29,12 @@ True True True +Unsaved modifications to this tab are reverted. + + +Revert any changes made on the tab shown here to the settings that were present when this dialog was opened. + + False ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: ios/CustomTarget_iOS_setup.mk
ios/CustomTarget_iOS_setup.mk |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit 3d495a867a26c4861386c0002ee8cacba89c5a5a Author: Tor Lillqvist AuthorDate: Thu Mar 25 15:21:40 2021 +0200 Commit: Tor Lillqvist CommitDate: Thu Mar 25 15:30:12 2021 +0200 Fix editing mistake for iOS build Spelling dictionaries go into a separate directory. Change-Id: Ia8bc14d8e3320533c35a70884f7b4cf190e19fe4 diff --git a/ios/CustomTarget_iOS_setup.mk b/ios/CustomTarget_iOS_setup.mk index 8a082bcd5273..f44a154470bb 100644 --- a/ios/CustomTarget_iOS_setup.mk +++ b/ios/CustomTarget_iOS_setup.mk @@ -80,10 +80,10 @@ $(IOSGEN)/native-code.h: $(BUILDDIR)/config_host.mk \ # Install the Swiss German dictionary and use it for Liechtenstein, too. # Install also thesauruses. if test -d $(INSTDIR)/share/extensions/dict-de; then \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/thes/de_CH.aff; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/thes/de_CH.dic; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/thes/de_LI.aff; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/thes/de_LI.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_CH.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_CH.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_LI.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_LI.dic; \ cp $(INSTDIR)/share/extensions/*/th_*_v2.* $(IOSRES)/share/thes; \ cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.dat $(IOSRES)/share/thes/th_en_GB_v2.dat; \ cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.idx $(IOSRES)/share/thes/th_en_GB_v2.idx; \ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] libcdr.git: src/lib
src/lib/CDRParser.cpp | 128 +- 1 file changed, 66 insertions(+), 62 deletions(-) New commits: commit f14c31a18622db4930d43c3e38bc774815cd61fb Author: Fridrich Štrba AuthorDate: Thu Mar 25 14:30:02 2021 +0100 Commit: Fridrich Štrba CommitDate: Thu Mar 25 14:30:02 2021 +0100 Some advance in txsm6 Change-Id: Ib81df0f50fa81d0c9b573d5b276ea66d2212e9b2 diff --git a/src/lib/CDRParser.cpp b/src/lib/CDRParser.cpp index 539c6cf..de3df96 100644 --- a/src/lib/CDRParser.cpp +++ b/src/lib/CDRParser.cpp @@ -2766,76 +2766,80 @@ void libcdr::CDRParser::readTxsm16(librevenge::RVNGInputStream *input) void libcdr::CDRParser::readTxsm6(librevenge::RVNGInputStream *input) { - unsigned fflag1 = readU32(input); input->seek(0x20, librevenge::RVNG_SEEK_CUR); - unsigned textId = readU32(input); - input->seek(48, librevenge::RVNG_SEEK_CUR); - input->seek(4, librevenge::RVNG_SEEK_CUR); - if (!fflag1) -input->seek(8, librevenge::RVNG_SEEK_CUR); - unsigned stlId = readU32(input); - unsigned numSt = readU32(input); - unsigned i = 0; - std::map styles; - for (; i= 58; ++i) - { -CDRStyle style; -unsigned char flag = readU8(input); -input->seek(3, librevenge::RVNG_SEEK_CUR); -if (flag&0x01) -{ - unsigned short fontId = readU16(input); - std::map::const_iterator iterFont = m_fonts.find(fontId); - if (iterFont != m_fonts.end()) + unsigned numFrames = readU32(input); + unsigned textId = 0; + for (unsigned j=0; jseek(48, librevenge::RVNG_SEEK_CUR); // Trafo 6*8 bytes +input->seek(8, librevenge::RVNG_SEEK_CUR); // Maybe flags + } + unsigned numPara = readU32(input); + for (unsigned j=0; j styles; +for (unsigned i=0; iseek(3, librevenge::RVNG_SEEK_CUR); + if (flag&0x01) { -style.m_fontName = iterFont->second.m_name; -style.m_charSet = iterFont->second.m_encoding; +unsigned short fontId = readU16(input); +std::map::const_iterator iterFont = m_fonts.find(fontId); +if (iterFont != m_fonts.end()) +{ + style.m_fontName = iterFont->second.m_name; + style.m_charSet = iterFont->second.m_encoding; +} +unsigned short charSet = readU16(input); +if (charSet) + style.m_charSet = charSet; } - unsigned short charSet = readU16(input); - if (charSet) -style.m_charSet = charSet; -} -else - input->seek(4, librevenge::RVNG_SEEK_CUR); -input->seek(4, librevenge::RVNG_SEEK_CUR); -if (flag&0x04) - style.m_fontSize = readCoordinate(input); -else + else +input->seek(4, librevenge::RVNG_SEEK_CUR); input->seek(4, librevenge::RVNG_SEEK_CUR); -input->seek(44, librevenge::RVNG_SEEK_CUR); -if (flag&0x10) -{ - unsigned fillId = readU32(input); - std::map::const_iterator iter = m_fillStyles.find(fillId); - if (iter != m_fillStyles.end()) -style.m_fillStyle = iter->second; + if (flag&0x04) +style.m_fontSize = readCoordinate(input); + else +input->seek(4, librevenge::RVNG_SEEK_CUR); + input->seek(44, librevenge::RVNG_SEEK_CUR); + if (flag&0x10) + { +unsigned fillId = readU32(input); +std::map::const_iterator iter = m_fillStyles.find(fillId); +if (iter != m_fillStyles.end()) + style.m_fillStyle = iter->second; + } + if (flag&0x20) + { +unsigned outlId = readU32(input); +std::map::const_iterator iter = m_lineStyles.find(outlId); +if (iter != m_lineStyles.end()) + style.m_lineStyle = iter->second; + } + styles[2*i] = style; } -if (flag&0x20) +unsigned numChars = readU32(input); +input->seek(4, librevenge::RVNG_SEEK_CUR); +std::vector textData; +std::vector charDescriptions; +textData.reserve(numChars); +charDescriptions.reserve(numChars); +for (unsigned i=0; i::const_iterator iter = m_lineStyles.find(outlId); - if (iter != m_lineStyles.end()) -style.m_lineStyle = iter->second; + textData.push_back(readU8(input)); + input->seek(5, librevenge::RVNG_SEEK_CUR); + charDescriptions.push_back(readU8(input) << 1); + input->seek(5, librevenge::RVNG_SEEK_CUR); } -styles[2*i] = style; - } - unsigned numChars = readU32(input); - if (numChars > getRemainingLength(input) / 12) -numChars = getRemainingLength(input) / 12; - std::vector textData; - std::vector charDescriptions; - textData.reserve(numChars); - charDescriptions.reserve(numChars); - for (i=0; iseek(4, librevenge::RVNG_SEEK_CUR); -textData.push_back(readU8(input)); -input->seek(5, librevenge::RVNG_SEEK_CUR); -charDescriptions.push_back(readU8(input) << 1); -input->seek(1, librevenge::RVNG_SEEK_CUR); +if (!textData.empty()) + m_collector->collectText(textId, stlId, textData, charDescriptions, styles); } - if (!textData.em
[Libreoffice-commits] core.git: solenv/bin
solenv/bin/native-code.py |6 ++ 1 file changed, 6 insertions(+) New commits: commit 3dba2e4a325fa0fdfbbedb0ffc1fcf678bfcbc94 Author: Tor Lillqvist AuthorDate: Thu Mar 25 12:23:43 2021 +0200 Commit: Tor Lillqvist CommitDate: Thu Mar 25 14:27:34 2021 +0100 Include the pdfimport library constructor in the mobile apps if enabled This is part of implementing https://github.com/CollaboraOnline/online/issues/1824 . Change-Id: I68dacc2de0dc1f09da03fa213d5cff56a2343c77 Signed-off-by: Tor Lillqvist Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113079 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113095 diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py index 404aaf42f9f4..6c46c1b6a6b9 100755 --- a/solenv/bin/native-code.py +++ b/solenv/bin/native-code.py @@ -663,6 +663,12 @@ draw_constructor_list = [ "css_comp_Impress_oox_PowerPointExport", # writerperfect/source/draw/wpftdraw.component "com_sun_star_comp_Draw_VisioImportFilter_get_implementation", +# sdext/source/pdfimport/pdfimport.component +"sdext_PDFIHybridAdaptor_get_implementation", +"sdext_PDFIRawAdaptor_Writer_get_implementation", +"sdext_PDFIRawAdaptor_Draw_get_implementation", +"sdext_PDFIRawAdaptor_Impress_get_implementation", +"sdext_PDFDetector_get_implementation", ] writer_factory_list = [ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: emfio/inc emfio/source
emfio/inc/mtftools.hxx|6 +++--- emfio/source/reader/mtftools.cxx | 26 +++--- emfio/source/reader/wmfreader.cxx |8 3 files changed, 26 insertions(+), 14 deletions(-) New commits: commit 6f2fe8bbc4909f457509391522cae4b8084e69e5 Author: Bartosz Kosiorek AuthorDate: Wed Mar 24 14:45:43 2021 +0100 Commit: Bartosz Kosiorek CommitDate: Thu Mar 25 14:25:13 2021 +0100 WMF/EMF Convert all index type of Objects to unsigned Based on WMF and EMF documentation, all indexes should be unsigned. With this commit it was applied, which simplifies code. Change-Id: I3257da7e595ace45622c6d865fd4b034dc605cb8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113039 Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek diff --git a/emfio/inc/mtftools.hxx b/emfio/inc/mtftools.hxx index 286442767d3a..2d31fe4ef4ad 100644 --- a/emfio/inc/mtftools.hxx +++ b/emfio/inc/mtftools.hxx @@ -605,11 +605,11 @@ namespace emfio voidSetTextAlign(sal_uInt32 nAlign); voidCreateObject(std::unique_ptr pObject); -voidCreateObjectIndexed(sal_Int32 nIndex, std::unique_ptr pObject); +voidCreateObjectIndexed(sal_uInt32 nIndex, std::unique_ptr pObject); voidCreateObject(); -voidDeleteObject(sal_Int32 nIndex); -voidSelectObject(sal_Int32 nIndex); +voidDeleteObject(sal_uInt32 nIndex); +voidSelectObject(sal_uInt32 nIndex); rtl_TextEncodingGetCharSet() const { return maFont.GetCharSet(); }; const vcl::Font&GetFont() const { return maFont; } voidSetTextLayoutMode(ComplexTextLayoutFlags nLayoutMode); diff --git a/emfio/source/reader/mtftools.cxx b/emfio/source/reader/mtftools.cxx index fdb8496f1563..5a2f5d1ca806 100644 --- a/emfio/source/reader/mtftools.cxx +++ b/emfio/source/reader/mtftools.cxx @@ -782,10 +782,11 @@ namespace emfio return rPolyPolygon; } -void MtfTools::SelectObject( sal_Int32 nIndex ) +void MtfTools::SelectObject( sal_uInt32 nIndex ) { if ( nIndex & ENHMETA_STOCK_OBJECT ) { +SAL_INFO ( "emfio", "\t\t ENHMETA_STOCK_OBJECT, StockObject Enumeration: 0x" << std::hex << nIndex ); sal_uInt16 nStockId = static_cast(nIndex); switch( nStockId ) { @@ -802,12 +803,17 @@ namespace emfio } break; case GRAY_BRUSH : -case DKGRAY_BRUSH : { maFillStyle = WinMtfFillStyle( COL_GRAY ); mbFillStyleSelected = true; } break; +case DKGRAY_BRUSH : +{ +maFillStyle = WinMtfFillStyle( COL_GRAY7 ); +mbFillStyleSelected = true; +} +break; case BLACK_BRUSH : { maFillStyle = WinMtfFillStyle( COL_BLACK ); @@ -845,13 +851,19 @@ namespace emfio GDIObj *pGDIObj = nullptr; -if ( o3tl::make_unsigned(nIndex) < mvGDIObj.size() ) +if ( nIndex < mvGDIObj.size() ) pGDIObj = mvGDIObj[ nIndex ].get(); if ( pGDIObj ) { + +SAL_INFO ( "emfio", "\t\t Index: " << nIndex ); if (const auto pen = dynamic_cast(pGDIObj)) +{ maLineStyle = *pen; +SAL_INFO ( "emfio", "\t Line Style, Color: 0x" << std::hex << maLineStyle.aLineColor +<< ", Weight: " << maLineStyle.aLineInfo.GetWidth() ); +} else if (const auto brush = dynamic_cast( pGDIObj)) { @@ -958,7 +970,7 @@ namespace emfio mvGDIObj[ nIndex ] = std::move(pObject); } -void MtfTools::CreateObjectIndexed( sal_Int32 nIndex, std::unique_ptr pObject ) +void MtfTools::CreateObjectIndexed( sal_uInt32 nIndex, std::unique_ptr pObject ) { if ( ( nIndex & ENHMETA_STOCK_OBJECT ) != 0 ) return; @@ -989,7 +1001,7 @@ namespace emfio } } } -if ( o3tl::make_unsigned(nIndex) >= mvGDIObj.size() ) +if ( nIndex >= mvGDIObj.size() ) ImplResizeObjectArry( nIndex + 16 ); mvGDIObj[ nIndex ] = std::move(pObject); @@ -1000,11 +1012,11 @@ namespace emfio CreateObject(std::make_unique()); } -void MtfTools::DeleteObject( sal_Int32 nIndex ) +void MtfTools::DeleteObject( sal_uInt32 nIndex ) { if ( ( nIndex & ENHMETA_STOCK_OBJECT ) == 0 ) { -if ( o3tl::make_unsigned(nIndex) < mvGDIObj.size() ) +if ( nInd
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - ios/CustomTarget_iOS_setup.mk
ios/CustomTarget_iOS_setup.mk |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit b8cff74cf836173b5cfcbea68c1ba3a2c3021047 Author: Tor Lillqvist AuthorDate: Thu Mar 25 15:21:40 2021 +0200 Commit: Tor Lillqvist CommitDate: Thu Mar 25 15:22:23 2021 +0200 Fix editing mistake for iOS build Spelling dictionaries go into a separate directory. Change-Id: Ia8bc14d8e3320533c35a70884f7b4cf190e19fe4 diff --git a/ios/CustomTarget_iOS_setup.mk b/ios/CustomTarget_iOS_setup.mk index 970f8ff61e4b..974ce01dbc64 100644 --- a/ios/CustomTarget_iOS_setup.mk +++ b/ios/CustomTarget_iOS_setup.mk @@ -76,10 +76,10 @@ $(IOSGEN)/native-code.h: $(BUILDDIR)/config_host.mk \ # Install the Swiss German dictionary and use it for Liechtenstein, too. # Install also thesauruses. if test -d $(INSTDIR)/share/extensions/dict-de; then \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/thes/de_CH.aff; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/thes/de_CH.dic; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/thes/de_LI.aff; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/thes/de_LI.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_CH.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_CH.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_LI.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_LI.dic; \ cp $(INSTDIR)/share/extensions/*/th_*_v2.* $(IOSRES)/share/thes; \ cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.dat $(IOSRES)/share/thes/th_en_GB_v2.dat; \ cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.idx $(IOSRES)/share/thes/th_en_GB_v2.idx; \ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: officecfg/registry
officecfg/registry/data/org/openoffice/Office/Accelerators.xcu | 24 ++ 1 file changed, 24 insertions(+) New commits: commit 6c333f95fbdec8fa65701507b33ac53ccbccba2f Author: Gabor Kelemen AuthorDate: Tue Jan 5 08:53:41 2021 +0100 Commit: Heiko Tietze CommitDate: Thu Mar 25 14:21:47 2021 +0100 tdf#107588 Assign F4 shortcut to Image Properties in Writer Change-Id: Ia251d80777a3f34ab34b64f8a64ced5a343f8937 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108883 Tested-by: Jenkins Reviewed-by: Heiko Tietze diff --git a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu index fbccb8a9b0f8..41f5888d6e6d 100644 --- a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu +++ b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu @@ -2287,6 +2287,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing .uno:ChangeCaseRotateCase + + +I10N SHORTCUTS - NO TRANSLATE +.uno:GraphicDialog + + I10N SHORTCUTS - NO TRANSLATE @@ -3704,6 +3710,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing .uno:ChangeCaseRotateCase + + +I10N SHORTCUTS - NO TRANSLATE +.uno:GraphicDialog + + I10N SHORTCUTS - NO TRANSLATE @@ -6083,6 +6095,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing .uno:ChangeCaseRotateCase + + +I10N SHORTCUTS - NO TRANSLATE +.uno:GraphicDialog + + I10N SHORTCUTS - NO TRANSLATE @@ -6921,6 +6939,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing .uno:ChangeCaseRotateCase + + +I10N SHORTCUTS - NO TRANSLATE +.uno:GraphicDialog + + I10N SHORTCUTS - NO TRANSLATE ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: compilerplugins/clang dbaccess/source include/xmloff sc/source sdext/source sd/source vcl/source xmloff/source
compilerplugins/clang/unusedvarsglobal.py|2 compilerplugins/clang/unusedvarsglobal.untouched.results | 26 - compilerplugins/clang/unusedvarsglobal.writeonly.results | 320 ++- dbaccess/source/ui/browser/genericcontroller.cxx |9 include/xmloff/xmlimp.hxx|1 sc/source/ui/inc/inscodlg.hxx|1 sd/source/ui/inc/framework/FrameworkHelper.hxx |3 sdext/source/presenter/PresenterHelper.hxx |1 vcl/source/filter/FilterConfigCache.cxx |7 vcl/source/filter/FilterConfigCache.hxx |1 xmloff/source/draw/sdpropls.cxx | 10 xmloff/source/forms/elementimport.cxx|1 xmloff/source/forms/elementimport.hxx|1 13 files changed, 71 insertions(+), 312 deletions(-) New commits: commit eab3fa1f372887c913b2f2d85bbccadede10355d Author: Noel AuthorDate: Thu Mar 25 13:56:39 2021 +0200 Commit: Noel Grandin CommitDate: Thu Mar 25 14:13:12 2021 +0100 loplugin:unusedvarsglobal Change-Id: Ie73c8bec0196c680311b0959f3a17c3af900ce88 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113084 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/compilerplugins/clang/unusedvarsglobal.py b/compilerplugins/clang/unusedvarsglobal.py index db46b9fee1ca..da268794bb6e 100755 --- a/compilerplugins/clang/unusedvarsglobal.py +++ b/compilerplugins/clang/unusedvarsglobal.py @@ -127,7 +127,7 @@ def natural_sort_key(s, _nsre=re.compile('([0-9]+)')): # sort by both the source-line and the datatype, so the output file ordering is stable # when we have multiple items on the same source line def v_sort_key(v): -return natural_sort_key(v[0]) + [v1]] +return natural_sort_key(v[0]) + [v[1]] # sort results by name and line number tmp1list = sorted(untouchedSet, key=lambda v: v_sort_key(v)) diff --git a/compilerplugins/clang/unusedvarsglobal.untouched.results b/compilerplugins/clang/unusedvarsglobal.untouched.results index cdc7a6e89477..4a40feec0bf2 100644 --- a/compilerplugins/clang/unusedvarsglobal.untouched.results +++ b/compilerplugins/clang/unusedvarsglobal.untouched.results @@ -1,38 +1,44 @@ -canvas/workben/canvasdemo.cxx:672 +canvas/workben/canvasdemo.cxx:669 (anonymous namespace)::DemoApp aApp -connectivity/source/drivers/evoab2/EApi.h:52 -gconstpointer (*)(EContact *, EContactField) e_contact_get_const cppu/source/uno/check.cxx:315 (anonymous namespace)::BinaryCompatible_Impl aTest -framework/source/services/ContextChangeEventMultiplexer.cxx:381 +framework/source/services/ContextChangeEventMultiplexer.cxx:370 framework::(anonymous namespace)::Hook g_hook hwpfilter/source/nodes.h:92 int count -pyuno/source/loader/pyuno_loader.cxx:240 -pyuno_loader::(anonymous namespace)::PythonInit s_Init pyuno/source/module/pyuno_gc.cxx:45 pyuno::(anonymous namespace)::StaticDestructorGuard guard sal/osl/all/utility.cxx:45 osl::(anonymous namespace)::OGlobalTimer aGlobalTimer -sal/qa/osl/file/osl_File.cxx:5199 +sal/qa/osl/file/osl_File.cxx:4970 (anonymous namespace)::GlobalObject theGlobalObject sal/rtl/cmdargs.cxx:46 (anonymous namespace)::ArgHolder argHolder +sal/rtl/strtmpl.hxx:1258 +IMPL_RTL_STRINGDATA data +sc/source/ui/inc/inscodlg.hxx:88 +_Bool bPreviousAllCheck +sdext/source/presenter/PresenterHelper.hxx:33 +rtl::OUString msCenterPaneURL soltools/cpp/cpp.h:239 int Lflag soltools/mkdepend/parse.c:40 symhash * maininclist soltools/mkdepend/pr.c:34 int width +starmath/inc/ElementsDockingWindow.hxx:81 +std::tuple [0] m_a6Categories svx/source/gengal/gengal.cxx:323 (anonymous namespace)::GalApp aGalApp -vcl/backendtest/VisualBackendTest.cxx:745 +vcl/backendtest/VisualBackendTest.cxx:799 (anonymous namespace)::VisualBackendTestApp aApplication vcl/source/uipreviewer/previewer.cxx:113 (anonymous namespace)::UIPreviewApp aApp -vcl/workben/icontest.cxx:216 +vcl/workben/icontest.cxx:214 (anonymous namespace)::IconTestApp aApp vcl/workben/mtfdemo.cxx:162 (anonymous namespace)::DemoMtfApp aApp -vcl/workben/vcldemo.cxx:2445 +vcl/workben/vcldemo.cxx:2258 (anonymous namespace)::DemoApp aApp +xmloff/source/forms/elementimport.hxx:54 +xmloff::OElementNameMap::MapString2Element s_sElementTranslations diff --git a/compilerplugins/clang/unusedvarsglobal.writeonly.results b/compilerplugins/clang/unusedvarsglobal.writeonly.results index 92413e328e2c..a79fcd405751 100644 --- a/compilerplugins/clang/unusedvarsglobal.writeonly.results +++ b/compilerplugins/clang/unusedvarsglobal.writeonly.results @@ -1,38 +1,18 @@ -basctl/source/basicide/localizationmgr.cxx:52 -rtl::OUStringLiteral aSemi -chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx:149 -sal_uInt16 [7] nAreaWhichPairs -chart2/source/controller/itemsetwrapper/SchWh
[Libreoffice-commits] core.git: Branch 'distro/vector/vector-7.0' - sw/qa sw/source
sw/qa/extras/htmlexport/htmlexport.cxx | 33 + sw/source/filter/html/htmltabw.cxx |6 ++ 2 files changed, 39 insertions(+) New commits: commit 833de9c3dbf52adaa2e62d0e5f624dce9ec0113d Author: Miklos Vajna AuthorDate: Wed Mar 24 16:38:18 2021 +0100 Commit: Miklos Vajna CommitDate: Thu Mar 25 13:49:49 2021 +0100 sw reqif-xhtml export: fix unexpected height for The ReqIF validator complains about this, similar to the already disabled width. (cherry picked from commit ab6a7a9addfc059d8f1fbeaa6c601229d420) Change-Id: I05137a9dcc7e94bffe92269e98d310724a144b24 diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx b/sw/qa/extras/htmlexport/htmlexport.cxx index 6fdf15730dde..5e1264fcadb4 100644 --- a/sw/qa/extras/htmlexport/htmlexport.cxx +++ b/sw/qa/extras/htmlexport/htmlexport.cxx @@ -684,6 +684,39 @@ DECLARE_HTMLEXPORT_TEST(testReqIfTable2, "reqif-table2.odt") CPPUNIT_ASSERT(aStream.indexOf("") != -1); } +CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testReqIfTableHeight) +{ +// Given a document with a table in it, with an explicit row height: +loadURL("private:factory/swriter", nullptr); +uno::Sequence aTableProperties = { +comphelper::makePropertyValue("Rows", static_cast(1)), +comphelper::makePropertyValue("Columns", static_cast(1)), +}; +dispatchCommand(mxComponent, ".uno:InsertTable", aTableProperties); +uno::Reference xTablesSupplier(mxComponent, uno::UNO_QUERY); +uno::Reference xTables(xTablesSupplier->getTextTables(), +uno::UNO_QUERY); +uno::Reference xTable(xTables->getByIndex(0), uno::UNO_QUERY); +uno::Reference xRow(xTable->getRows()->getByIndex(0), uno::UNO_QUERY); +xRow->setPropertyValue("Height", uno::makeAny(static_cast(1000))); + +// When exporting to reqif-xhtml: +uno::Reference xStorable(mxComponent, uno::UNO_QUERY); +uno::Sequence aStoreProperties = { +comphelper::makePropertyValue("FilterName", OUString("HTML (StarWriter)")), +comphelper::makePropertyValue("FilterOptions", OUString("xhtmlns=reqif-xhtml")), +}; +xStorable->storeToURL(maTempFile.GetURL(), aStoreProperties); + +// Then make sure that the explicit cell height is omitted from the output: +SvMemoryStream aStream; +HtmlExportTest::wrapFragment(maTempFile, aStream); +xmlDocUniquePtr pDoc = parseXmlStream(&aStream); +// Without the accompanying fix in place, this test would have failed, explicit height was +// written, which is not valid reqif-xhtml. +assertXPathNoAttribute(pDoc, "//reqif-xhtml:td", "height"); +} + DECLARE_HTMLEXPORT_TEST(testXHTMLUseCSS, "xhtml-css.odt") { SvStream* pStream = maTempFile.GetStream(StreamMode::READ); diff --git a/sw/source/filter/html/htmltabw.cxx b/sw/source/filter/html/htmltabw.cxx index f7d5951ae585..1febebd9ff34 100644 --- a/sw/source/filter/html/htmltabw.cxx +++ b/sw/source/filter/html/htmltabw.cxx @@ -380,6 +380,12 @@ void SwHTMLWrtTable::OutTableCell( SwHTMLWriter& rWrt, sOut.append("\""); } +if (rWrt.mbReqIF) +{ +// ReqIF implies strict XHTML: no height for . +nHeight = 0; +} + if( nHeight ) { sOut.append(' ').append(OOO_STRING_SVTOOLS_HTML_O_height) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: GSoC 2021
Hi Moaz, you reach the mentors via IRC, Matrix, or Telegram. We all read this ML, so it's also an option (the second best as it spams everyone's inbox). Please read https://wiki.documentfoundation.org/Development/GSoC/2021 and introduce yourself first (sorry if you did and I missed it). Cheers, Heiko On 25.03.21 11:54, Moaz Eldefrawy wrote: Hey, I am interested in *Style Highlighter *project. However, I have not been able to contact the project mentors. Secondly, I followed this link < You sent February 28 at 1:48 AM https://wiki.documentfoundation.org/Development/Create_new_dialog_in_Impress>. I am not sure it actually works. I have tried following it twice. I can't seem to find other docs that target the same subject. I played with glade and read a bit in the UNO API and read some test units, but I still can't achieve the goal of the link (which is to create a UI component with minimal logic). I hope this is the right place to ask these questions. Thanks. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice -- Dr. Heiko Tietze, UX-Designer and UX-Mentor Tel: +49 30 5557992-63 | Mail: heiko.tie...@documentfoundation.org The Document Foundation, Kurfürstendamm 188, 10707 Berlin, DE Gemeinnützige rechtsfähige Stiftung des bürgerlichen Rechts Legal details: https://www.documentfoundation.org/imprint OpenPGP_signature Description: OpenPGP digital signature ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'feature/wasm' - configure.ac vcl/Library_vcl.mk
configure.ac | 18 ++ vcl/Library_vcl.mk |2 +- 2 files changed, 15 insertions(+), 5 deletions(-) New commits: commit 83a22bf335e98f06313ab0203c2e364288cc0064 Author: Jan-Marek Glogowski AuthorDate: Thu Mar 25 13:13:53 2021 +0100 Commit: Jan-Marek Glogowski CommitDate: Thu Mar 25 13:24:06 2021 +0100 Hack Windows static build stuff Change-Id: Ied05b72e95fceb47881f080d2b10eca29dfce73f diff --git a/configure.ac b/configure.ac index 018b6b3883f5..108bc270fcba 100644 --- a/configure.ac +++ b/configure.ac @@ -3704,7 +3704,7 @@ fi if test "$_os" = "iOS" -o "$build_cpu" != "$host_cpu" -o -n "$DISABLE_DYNLOADING"; then # To allow building Windows multi-arch releases without cross-tooling -if test -z "$WIN_MULTI_ARCH" -a -z "$WIN_OTHER_ARCH"; then +if test -z "$WIN_MULTI_ARCH" -a -z "$WIN_OTHER_ARCH" -o -n "$DISABLE_DYNLOADING"; then cross_compiling="yes" fi fi @@ -5541,9 +5541,15 @@ if test "$USING_X11" != TRUE; then test_dbus=no build_gstreamer_1_0=no test_kf5=no -test_qt5=yes test_gtk3_kde5=no -enable_cairo_canvas=yes +if test "$DISABLE_DYNLOADING" = "TRUE" -a "$OS" != "WNT"; then +enable_cairo_canvas=yes +test_qt5=yes +enable_qt5=yes +else +enable_cairo_canvas=no +test_qt5=no +fi fi if test "$OS" = "EMSCRIPTEN"; then @@ -9422,7 +9428,11 @@ no|disable) # Python is required to build LibreOffice. In theory we could separate the build-time Python # requirement from the choice whether to include Python stuff in the installer, but why # bother? -AC_MSG_ERROR([Python is required at build time.]) +if test "$cross_compiling" = yes; then +enable_python=system +else +AC_MSG_ERROR([Python is required at build time.]) +fi fi enable_python=no AC_MSG_RESULT([none]) diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk index 6921f5f8cf4a..4b82c3eaea12 100644 --- a/vcl/Library_vcl.mk +++ b/vcl/Library_vcl.mk @@ -772,7 +772,7 @@ endif ifeq ($(OS),WNT) $(eval $(call gb_Library_add_exception_objects,vcl,\ vcl/source/opengl/win/WinDeviceInfo \ -vcl/source/app/salplug \ +$(if $(DISABLE_DYNLOADING),vcl/wasm/salplug,vcl/source/app/salplug) \ )) $(eval $(call gb_Library_use_system_win32_libs,vcl,\ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: helpcontent2
helpcontent2 |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 96900c6de49de3ff41f99e13bb6991b8b17d29f0 Author: Rafael Lima AuthorDate: Thu Mar 25 12:54:57 2021 +0100 Commit: Gerrit Code Review CommitDate: Thu Mar 25 12:54:57 2021 +0100 Update git submodules * Update helpcontent2 from branch 'master' to 32d2b31b39929b5899126f2a36919ceef8b7f809 - Fix a few more localization issues in SF Help pages Change-Id: Iaf2b2c528d42a2d6f6d7ec55c1836c2d5a2c7ca4 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112967 Tested-by: Jenkins Reviewed-by: Olivier Hallot diff --git a/helpcontent2 b/helpcontent2 index 91287a050719..32d2b31b3992 16 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit 91287a050719f9c151327cc629cd4630cf61e804 +Subproject commit 32d2b31b39929b5899126f2a36919ceef8b7f809 ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] help.git: source/text
source/text/sbasic/shared/03/sf_dialogcontrol.xhp | 26 +++--- source/text/sbasic/shared/03/sf_filesystem.xhp|6 ++--- source/text/sbasic/shared/03/sf_l10n.xhp | 10 3 files changed, 21 insertions(+), 21 deletions(-) New commits: commit 32d2b31b39929b5899126f2a36919ceef8b7f809 Author: Rafael Lima AuthorDate: Wed Mar 24 20:02:13 2021 +0100 Commit: Olivier Hallot CommitDate: Thu Mar 25 12:54:57 2021 +0100 Fix a few more localization issues in SF Help pages Change-Id: Iaf2b2c528d42a2d6f6d7ec55c1836c2d5a2c7ca4 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112967 Tested-by: Jenkins Reviewed-by: Olivier Hallot diff --git a/source/text/sbasic/shared/03/sf_dialogcontrol.xhp b/source/text/sbasic/shared/03/sf_dialogcontrol.xhp index 008b89a6a..19c8e39b8 100644 --- a/source/text/sbasic/shared/03/sf_dialogcontrol.xhp +++ b/source/text/sbasic/shared/03/sf_dialogcontrol.xhp @@ -120,7 +120,7 @@ TimeField - TreeControl + TreeControl @@ -155,7 +155,7 @@ Boolean -Button +Button Specifies if a command button has or not the behaviour of a Cancel button. @@ -567,7 +567,7 @@ UNOobject -TreeControl +TreeControl The UNO object representing the tree control data model. Refer to https://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1awt_1_1tree_1_1XMutableTreeDataModel.html"; name="awt.tree.XMutableTreeDataModel">XMutableTreeDataModel in Application Programming Interface (API) documentation for detailed information. @@ -594,7 +594,7 @@ Button -Boolean +Boolean For toggle buttons only @@ -616,7 +616,7 @@ ComboBox -String +String The selected value. The ListIndex property is an alternate option. @@ -638,7 +638,7 @@ DateField -Date +Date @@ -649,7 +649,7 @@ FileControl -String +String A file name formatted in accordance with the FileNaming property of the ScriptForge.FileSystem service @@ -693,7 +693,7 @@ PatternField -String +String @@ -715,7 +715,7 @@ RadioButton -Boolean +Boolean Each button has its own name. They are linked together if their TAB positions are contiguous. If a radiobutton is set to True, the other related buttons are automatically set to False @@ -737,7 +737,7 @@ TextField -String +String The text appearing in the field @@ -748,7 +748,7 @@ TimeField -Date +Date @@ -1083,7 +1083,7 @@ oControl.FindNode(DisplayValue = Empty, DataValue = Empty [, CaseSensitive = False]) As Object - One argument out of DisplayValueor DataValue must be specified. If both present, one match is sufficient to select the node. + One argument out of DisplayValue or DataValue must be specified. If both present, one match is sufficient to select the node. DisplayValue: The pattern to be matched. See the SF_String.IsLike() method. When equal to the zero-length string (default), this display value is not searched for. DataValue: A string, a numeric value, a date. Use Empty default value when no value applies. CaseSensitive: Default value is False @@ -1129,7 +1129,7 @@ oControl.WriteLine([Line As String]) As Boolean - Line: The string to insert. Default is an empty line. + Line: The string to insert. Default is an empty line. Dim oDlg As Object, oControl As Object diff --git a/source/text/sbasic/shared/03/sf_filesystem.xhp b/source/text/sbasic/shared/03/sf_filesystem.xhp index c24f3779f..e598a3238 100644 --- a/source/text/sbasic/shared/03/sf_filesystem.xhp +++ b/source/text/sbasic/shared/03/sf_filesystem.xhp @@ -573,7 +573,7 @@ Dim filesList As Variant, file As String FSO.FileNaming = "SYS" -filesList = FSO.Files("/home/user/", "*.txt") +filesList = FSO.Files("/home/user/", "*.txt") For Each file In filesList ' ... Next file @@ -796,7 +796,7 @@ Source: It can be a FileName or NamePattern to designate one or more files to be moved. Destination: If Source is a F
[Libreoffice-commits] libcdr.git: src/lib
src/lib/CDRParser.cpp |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 5594f776dfef54e09780c62fca9cd85426a0b2d6 Author: Fridrich Štrba AuthorDate: Thu Mar 25 12:46:36 2021 +0100 Commit: Fridrich Štrba CommitDate: Thu Mar 25 12:46:36 2021 +0100 Default style id for txsm5 Change-Id: Ia7ada38f62d17abebc3d7d29d023750aac4dd451 diff --git a/src/lib/CDRParser.cpp b/src/lib/CDRParser.cpp index 4ea95e0..539c6cf 100644 --- a/src/lib/CDRParser.cpp +++ b/src/lib/CDRParser.cpp @@ -2854,7 +2854,7 @@ void libcdr::CDRParser::readTxsm5(librevenge::RVNGInputStream *input) unsigned numPara = readU16(input); for (unsigned j=0; jseek(2, librevenge::RVNG_SEEK_CUR); +unsigned stlId = readU16(input); unsigned numSt = readU16(input); std::map styles; for (unsigned i= 0; i= 34 */; ++i) @@ -2919,7 +2919,7 @@ void libcdr::CDRParser::readTxsm5(librevenge::RVNGInputStream *input) charDescriptions.push_back((readU16(input) >> 3) & 0xff); } if (!textData.empty()) - m_collector->collectText(textId, 0, textData, charDescriptions, styles); + m_collector->collectText(textId, stlId, textData, charDescriptions, styles); } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sfx2/source svx/source
sfx2/source/dialog/basedlgs.cxx |2 +- svx/source/dialog/srchdlg.cxx |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) New commits: commit 82f473c87da72a3d7aac80249d408a02caa25afa Author: Caolán McNamara AuthorDate: Thu Mar 25 10:43:49 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 12:45:20 2021 +0100 fix crash on pressing esc in search/replace dialog activate can be called during tear down as focus is transferred between widgets as they die Change-Id: Ia8d65b4d3c2e0ea4b8238e598ace0cc0d0e7d738 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113080 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/sfx2/source/dialog/basedlgs.cxx b/sfx2/source/dialog/basedlgs.cxx index fcebc6ea041c..1f10f73ce5e4 100644 --- a/sfx2/source/dialog/basedlgs.cxx +++ b/sfx2/source/dialog/basedlgs.cxx @@ -118,7 +118,7 @@ IMPL_LINK_NOARG(SfxDialogController, FocusChangeHdl, weld::Container&, void) void SfxModelessDialogController::Activate() { -if (!m_xImpl) +if (!m_xImpl || !m_xImpl->pMgr) return; m_pBindings->SetActiveFrame(m_xImpl->pMgr->GetFrame()); m_xImpl->pMgr->Activate_Impl(); diff --git a/svx/source/dialog/srchdlg.cxx b/svx/source/dialog/srchdlg.cxx index 06836388a33c..2045730344d4 100644 --- a/svx/source/dialog/srchdlg.cxx +++ b/svx/source/dialog/srchdlg.cxx @@ -373,6 +373,8 @@ void SvxSearchDialog::ChildWinDispose() SvxSearchDialog::~SvxSearchDialog() { m_aPresentIdle.Stop(); +pSearchItem.reset(); +pImpl.reset(); } void SvxSearchDialog::Construct_Impl() @@ -598,7 +600,6 @@ bool SvxSearchDialog::IsOtherOptionsExpanded() const void SvxSearchDialog::Activate() { // apply possible transliteration changes of the SvxSearchItem member -DBG_ASSERT( pSearchItem, "SearchItem missing" ); if (pSearchItem) { m_xMatchCaseCB->set_active( pSearchItem->GetExact() ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - solenv/bin
solenv/bin/native-code.py |1 + 1 file changed, 1 insertion(+) New commits: commit 2e1adf0f7c1443a259c3e4fb0695dee97d539b48 Author: Tor Lillqvist AuthorDate: Thu Mar 25 12:23:43 2021 +0200 Commit: Tor Lillqvist CommitDate: Thu Mar 25 12:44:39 2021 +0100 Include the pdfimport library constructor in the mobile apps if enabled This is part of implementing https://github.com/CollaboraOnline/online/issues/1824 . Change-Id: I68dacc2de0dc1f09da03fa213d5cff56a2343c77 Signed-off-by: Tor Lillqvist Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113079 diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py index 6ab9d7c8e68d..996a12247ca8 100755 --- a/solenv/bin/native-code.py +++ b/solenv/bin/native-code.py @@ -60,6 +60,7 @@ core_factory_list = [ ("libvcllo.a", "vcl_component_getFactory"), ("libspelllo.a", "spell_component_getFactory"), ("libpdffilterlo.a", "pdffilter_component_getFactory"), +("libpdfimportlo.a", "pdfimport_component_getFactory", "#if HAVE_FEATURE_PDFIMPORT"), ("libsvgiolo.a", "svgio_component_getFactory"), ("libsvtlo.a", "svt_component_getFactory"), ("libctllo.a", "ctl_component_getFactory"), ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa vcl/unx
sw/qa/extras/ooxmlexport/ooxmlexport13.cxx |2 +- vcl/unx/gtk3/gtk3gtkframe.cxx |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) New commits: commit 34d6ad3df09ff7a68d00ae69cc03796b1566dfa1 Author: Andrea Gelmini AuthorDate: Sat Mar 20 18:39:14 2021 +0100 Commit: Christian Lohmaier CommitDate: Thu Mar 25 12:32:23 2021 +0100 Fix typos Change-Id: I734d34847b6e75991b65a620de6e1bdf2122742d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112818 Tested-by: Christian Lohmaier Reviewed-by: Christian Lohmaier diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx index c9049e893827..c50a75c6daa1 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx @@ -103,7 +103,7 @@ DECLARE_OOXMLEXPORT_TEST(testTdf140182_extraPagebreak, "tdf140182_extraPagebreak // that is handled so to break only 1 page that result only 2 pages. // Because of the table, a hack (m_bDummyParaAddedForTableInSection) is set for the entire section, // that canceled the page break + section break special case handling, resulting 3 pages. -// The accompanying fix eliminates this cancelation. +// The accompanying fix eliminates this cancellation. CPPUNIT_ASSERT_EQUAL(2, getPages()); } diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index e52ff192869f..5ab09bf5ad7f 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -1554,7 +1554,7 @@ void GtkSalFrame::SetPosSize( tools::Long nX, tools::Long nY, tools::Long nWidth m_bDefaultSize = false; // tdf#131031 Just setting maGeometry.nWidth/nHeight will delete -// the evtl. implicitely existing space at top for the gtk native MenuBar, +// the evtl. implicitly existing space at top for the gtk native MenuBar, // will make the Window too big and the StatusBar at the bottom vanish // and thus breaks the fix in tdf#130841. const int nImplicitMenuBarHeight(m_pSalMenu ? m_pSalMenu->GetMenuBarHeight() : 0); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: connectivity/source
connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 4759ed1e5dec9c2bbabeaeebb1a330293b021a24 Author: Caolán McNamara AuthorDate: Thu Mar 25 11:03:09 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 12:11:42 2021 +0100 fix connectivity build since... commit a0656ec6fc2b41e65f1b40dbd64f546175e2762f Date: Thu Mar 25 09:53:33 2021 +0300 const OUString -> const OUStringLiteral Mostly automated rewrite Change-Id: Id15273edde05933927378e45baadebc0727d558e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113083 Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx b/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx index d677c4fe9ae7..ead76b086ce5 100644 --- a/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx +++ b/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx @@ -1140,7 +1140,7 @@ Reference< XResultSet > SAL_CALL OEvoabDatabaseMetaData::getTables( ORowSetValueDecoratorRef(), ORowSetValueDecoratorRef(), new ORowSetValueDecorator(aHumanName), //tablename -new ORowSetValueDecorator(aTable), +new ORowSetValueDecorator(ORowSetValue(aTable)), new ORowSetValueDecorator(aUID)}; //comment //I'd prefer to swap the comment and the human name and //just use e_source_registry_ref_source(get_e_source_registry(), aUID); @@ -1195,7 +1195,7 @@ Reference< XResultSet > SAL_CALL OEvoabDatabaseMetaData::getTables( ORowSetValueDecoratorRef(), ORowSetValueDecoratorRef(), new ORowSetValueDecorator(aName), -new ORowSetValueDecorator(aTable), +new ORowSetValueDecorator(ORowSetValue(aTable)), ODatabaseMetaDataResultSet::getEmptyValue()}; aRows.push_back(aRow); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sd/qa sw/qa
sd/qa/uitest/impress_tests/tdf134734.py | 111 sw/qa/uitest/writer_tests/tdf134734.py | 92 ++ 2 files changed, 203 insertions(+) New commits: commit 8a859cdecdd49e186b95a051ee31756770d50e9c Author: Michael Stahl AuthorDate: Tue Mar 23 18:51:28 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 12:11:20 2021 +0100 tdf#134734 sd,sw: add UITests Change-Id: I674066b1c998f35e1d21a575669a131721e41113 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113004 Tested-by: Jenkins Reviewed-by: Michael Stahl diff --git a/sd/qa/uitest/impress_tests/tdf134734.py b/sd/qa/uitest/impress_tests/tdf134734.py new file mode 100644 index ..29641e06403a --- /dev/null +++ b/sd/qa/uitest/impress_tests/tdf134734.py @@ -0,0 +1,111 @@ +# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +from uitest.framework import UITestCase +from libreoffice.uno.propertyvalue import mkPropertyValues +from uitest.uihelper.common import get_state_as_dict, select_pos +from com.sun.star.drawing.FillStyle import SOLID +import importlib + +class TestClass(UITestCase): +def test_master_page_background(self): +self.ui_test.create_doc_in_start_center("impress") +document = self.ui_test.get_component() +TemplateDialog = self.xUITest.getTopFocusWindow() +close = TemplateDialog.getChild("close") +self.ui_test.close_dialog_through_button(close) + +# set margins and fill color +self.ui_test.execute_dialog_through_command(".uno:PageSetup") +DrawPageDialog = self.xUITest.getTopFocusWindow() +xTabs = DrawPageDialog.getChild("tabcontrol") +select_pos(xTabs, "0") +checkBackgroundFullSize = DrawPageDialog.getChild("checkBackgroundFullSize") + self.assertEqual(get_state_as_dict(checkBackgroundFullSize)["Selected"], "false") +spinMargLeft = DrawPageDialog.getChild("spinMargLeft") +for _ in range(20): +spinMargLeft.executeAction("UP",tuple()) +spinMargRight = DrawPageDialog.getChild("spinMargRight") +for _ in range(15): +spinMargRight.executeAction("UP",tuple()) +spinMargTop = DrawPageDialog.getChild("spinMargTop") +for _ in range(10): +spinMargTop.executeAction("UP",tuple()) +spinMargBot = DrawPageDialog.getChild("spinMargBot") +for _ in range(5): +spinMargBot.executeAction("UP",tuple()) +xTabs = DrawPageDialog.getChild("tabcontrol") +select_pos(xTabs, "1") +btncolor = DrawPageDialog.getChild("btncolor") +btncolor.executeAction("CLICK",tuple()) +ok = DrawPageDialog.getChild("ok") +self.ui_test.close_dialog_through_button(ok) + +self.assertEqual( + document.DrawPages.getByIndex(0).Background.FillStyle, SOLID) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderLeft, 1016) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderRight, 762) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderTop, 508) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderBottom, 254) +self.assertEqual( + document.MasterPages.getByIndex(0).BackgroundFullSize, False) + +# check it +self.ui_test.execute_dialog_through_command(".uno:PageSetup") +DrawPageDialog = self.xUITest.getTopFocusWindow() +xTabs = DrawPageDialog.getChild("tabcontrol") +select_pos(xTabs, "0") +checkBackgroundFullSize = DrawPageDialog.getChild("checkBackgroundFullSize") + self.assertEqual(get_state_as_dict(checkBackgroundFullSize)["Selected"], "false") +checkBackgroundFullSize.executeAction("CLICK",tuple()) +ok = DrawPageDialog.getChild("ok") +self.ui_test.close_dialog_through_button(ok) + +self.assertEqual( + document.DrawPages.getByIndex(0).Background.FillStyle, SOLID) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderLeft, 1016) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderRight, 762) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderTop, 508) +self.assertEqual( + document.DrawPages.getByIndex(0).BorderBottom, 254) +self.assertEqual( + document.MasterPages.getByIndex(0).BackgroundFullSize, True) + +# uncheck it again +self.ui_test.execute_dialog_through_command(".uno:PageSetup") +DrawPageDialog = self.xUITest.getTopFocusWindow() +xTabs = DrawPageDialog.getChild("tabcontrol") +select_pos(xTabs, "0") +checkBackgroundFullSize = DrawPage
[Libreoffice-commits] core.git: vcl/unx
vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 7d51bfdd3c00aa1acb42d16f672da3e620e23368 Author: Caolán McNamara AuthorDate: Thu Mar 25 10:56:12 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 12:11:05 2021 +0100 fix gtk3_kde5 build since... commit a0656ec6fc2b41e65f1b40dbd64f546175e2762f Date: Thu Mar 25 09:53:33 2021 +0300 const OUString -> const OUStringLiteral Mostly automated rewrite Change-Id: Ia5e24f7c5ed9e4608c264435463c60f417c2c915 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113082 Tested-by: Caolán McNamara Reviewed-by: Caolán McNamara diff --git a/vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.cxx b/vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.cxx index 840ef268d4b1..4bccf1e24d72 100644 --- a/vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.cxx +++ b/vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.cxx @@ -63,7 +63,7 @@ OUString applicationDirPath() OUString findPickerExecutable() { const auto path = applicationDirPath(); -static const OUStringLiteral app(u"lo_kde5filepicker"); +const OUString app("lo_kde5filepicker"); OUString ret; osl_searchFileURL(app.pData, path.pData, &ret.pData); if (ret.isEmpty()) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: GSoC 2021
On 25.3.2021 12.54, Moaz Eldefrawy wrote: I am interested in *Style Highlighter *project. However, I have not been able to contact the project mentors. Secondly, I followed this link < You sent February 28 at 1:48 AM https://wiki.documentfoundation.org/Development/Create_new_dialog_in_Impress>. I am not sure it actually works. I have tried following it twice. I can't seem to find other docs that target the same subject. I played with glade and read a bit in the UNO API and read some test units, but I still can't achieve the goal of the link (which is to create a UI component with minimal logic). The Impress dialog article is outdated and can not be followed as-is at the moment. Ilmari ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
GSoC 2021
Hey, I am interested in *Style Highlighter *project. However, I have not been able to contact the project mentors. Secondly, I followed this link https://wiki.documentfoundation.org/Development/Create_new_dialog_in_Impress>. I am not sure it actually works. I have tried following it twice. I can't seem to find other docs that target the same subject. I played with glade and read a bit in the UNO API and read some test units, but I still can't achieve the goal of the link (which is to create a UI component with minimal logic). I hope this is the right place to ask these questions. Thanks. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: cui/uiconfig include/svx offapi/com sd/inc sd/qa sd/source svx/source
cui/uiconfig/ui/pageformatpage.ui |2 include/svx/svdpage.hxx|3 offapi/com/sun/star/drawing/GenericDrawPage.idl|8 sd/inc/sdpage.hxx |4 sd/qa/unit/data/odp/background.odp |binary sd/qa/unit/export-tests.cxx| 148 ++ sd/source/core/sdpage.cxx | 15 - sd/source/core/sdpage2.cxx |3 sd/source/ui/func/fupage.cxx | 20 - svx/source/sdr/contact/viewcontactofmasterpagedescriptor.cxx |9 svx/source/sdr/contact/viewcontactofsdrpage.cxx|8 svx/source/sdr/contact/viewobjectcontactofmasterpagedescriptor.cxx | 13 svx/source/svdraw/svdpage.cxx | 15 + 13 files changed, 212 insertions(+), 36 deletions(-) New commits: commit dda83832529fd8c7d02bdf14890faf84a3512112 Author: Michael Stahl AuthorDate: Thu Mar 18 17:43:13 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 11:11:53 2021 +0100 tdf#134734 svx,sd: BackgroundFullSize There is already a boolean SdPage::mbBackgroundFullSize, UNO property and ODF import/export, but curiously no trace of it ever doing anything. There is some mystery handling of SID_ATTR_PAGE_EXT2 there but in the dialog that is only handled for SVX_PAGE_MODE_CENTER from Calc for a completely different purpose. Move mbBackgroundFullSize to base class SdrPage so that ViewContactOfMasterPageDescriptor can access it to paint. There's an oddity in the handling of the property where the dialog works on the master page and not on the current slide, not sure why it was implemented this way. Change-Id: If6e1329e3f77e0a1a7226d5e51ceb221ea86c401 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112783 Tested-by: Jenkins Reviewed-by: Michael Stahl diff --git a/cui/uiconfig/ui/pageformatpage.ui b/cui/uiconfig/ui/pageformatpage.ui index 9332ebb0a204..b6974eebc15d 100644 --- a/cui/uiconfig/ui/pageformatpage.ui +++ b/cui/uiconfig/ui/pageformatpage.ui @@ -643,7 +643,7 @@ True -0 +1 6 2 diff --git a/include/svx/svdpage.hxx b/include/svx/svdpage.hxx index 8ac47f247415..ff936bd3a0a2 100644 --- a/include/svx/svdpage.hxx +++ b/include/svx/svdpage.hxx @@ -409,6 +409,7 @@ private: sal_Int32 mnBorderUpper; // top page margin sal_Int32 mnBorderRight; // right page margin sal_Int32 mnBorderLower; // bottom page margin +bool mbBackgroundFullSize = false; ///< Background object to represent the whole page. std::unique_ptr mpLayerAdmin; std::unique_ptr mpSdrPageProperties; @@ -479,6 +480,8 @@ public: sal_Int32 GetUpperBorder() const; sal_Int32 GetRightBorder() const; sal_Int32 GetLowerBorder() const; +voidSetBackgroundFullSize(bool bIn); +boolIsBackgroundFullSize() const; // New MasterPage interface bool TRG_HasMasterPage() const { return (nullptr != mpMasterPageDescriptor); } diff --git a/offapi/com/sun/star/drawing/GenericDrawPage.idl b/offapi/com/sun/star/drawing/GenericDrawPage.idl index e78d94b2587a..05073deb3cb3 100644 --- a/offapi/com/sun/star/drawing/GenericDrawPage.idl +++ b/offapi/com/sun/star/drawing/GenericDrawPage.idl @@ -148,6 +148,14 @@ published service GenericDrawPage making the z-order the default navigation order for top level shapes. */ [optional, property] com::sun::star::container::XIndexAccess NavigationOrder; + +/** does the background cover the full page or only inside the +margins? + +@since LibreOffice 7.2 + */ +[optional, property] boolean BackgroundFullSize; + }; diff --git a/sd/inc/sdpage.hxx b/sd/inc/sdpage.hxx index d1662ee43308..ae97ff0b18e1 100644 --- a/sd/inc/sdpage.hxx +++ b/sd/inc/sdpage.hxx @@ -119,7 +119,6 @@ friend class sd::UndoAttrObject; OUStringmaFileName; ///< file name. OUStringmaBookmarkName; ///< Bookmark name. boolmbScaleObjects; ///< Objects should be scaled -boolmbBackgroundFullSize; ///< Background object to represent the whole page. rtl_TextEncoding meCharSet; ///< Text encoding sal_uInt16 mnPaperBin; ///< PaperBin SdPageLink* mpPageLink; ///< Page link (at left sides only) @@ -275,9 +274,6 @@ public: bool bReverseOrder = false); voidEndListenOutlineText(); -voidSetBackgroundFullSize( bool bIn ); -boolIsBackgroundFullSize() const { return mb
[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-4' - 11 commits - include/svl include/xmloff shell/source solenv/gbuild svl/source sw/source xmloff/source xmlsecurity/inc xmlsecurity/
include/svl/sigstruct.hxx | 39 include/xmloff/xmlimp.hxx |6 include/xmloff/xmlnmspe.hxx |7 include/xmloff/xmltoken.hxx | 13 shell/source/win32/SysShExec.cxx | 31 solenv/gbuild/platform/com_GCC_defs.mk|4 svl/source/crypto/cryptosign.cxx | 16 sw/source/core/edit/edfcol.cxx|3 xmloff/source/core/xmlimp.cxx | 26 xmloff/source/core/xmltoken.cxx | 13 xmloff/source/token/tokens.txt| 10 xmlsecurity/inc/biginteger.hxx|3 xmlsecurity/inc/xmlsignaturehelper.hxx| 12 xmlsecurity/inc/xsecctl.hxx | 20 xmlsecurity/source/component/documentdigitalsignatures.cxx| 148 xmlsecurity/source/dialogs/digitalsignaturesdialog.cxx| 15 xmlsecurity/source/helper/documentsignaturehelper.cxx | 63 xmlsecurity/source/helper/documentsignaturemanager.cxx| 12 xmlsecurity/source/helper/ooxmlsecexporter.cxx| 212 - xmlsecurity/source/helper/ooxmlsecparser.cxx | 26 xmlsecurity/source/helper/pdfsignaturehelper.cxx |8 xmlsecurity/source/helper/xmlsignaturehelper.cxx | 162 xmlsecurity/source/helper/xsecctl.cxx | 194 - xmlsecurity/source/helper/xsecparser.cxx | 1756 -- xmlsecurity/source/helper/xsecparser.hxx | 106 xmlsecurity/source/helper/xsecsign.cxx| 60 xmlsecurity/source/helper/xsecverify.cxx | 227 - xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx |4 xmlsecurity/source/xmlsec/mscrypt/x509certificate_mscryptimpl.cxx | 47 xmlsecurity/source/xmlsec/mscrypt/xmlsignature_mscryptimpl.cxx|2 xmlsecurity/source/xmlsec/nss/x509certificate_nssimpl.cxx | 25 xmlsecurity/source/xmlsec/nss/xmlsignature_nssimpl.cxx|4 32 files changed, 2476 insertions(+), 798 deletions(-) New commits: commit 03e930e15d701402871d3aea16c2fc46e59a609e Author: Michael Stahl AuthorDate: Thu Feb 25 14:17:48 2021 +0100 Commit: Michael Stahl CommitDate: Wed Mar 24 14:51:45 2021 +0100 xmlsecurity: improve handling of multiple X509Data elements Combine everything related to a certificate in a new struct X509Data. The CertDigest is not actually written in the X509Data element but in xades:Cert, so try to find the matching entry in XSecController::setX509CertDigest(). There was a confusing interaction with PGP signatures, where ouGpgKeyID was used for import, but export wrote the value from ouCertDigest instead - this needed fixing. The main point of this is enforcing a constraint from xmldsig-core 4.5.4: All certificates appearing in an X509Data element MUST relate to the validation key by either containing it or being part of a certification chain that terminates in a certificate containing the validation key. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111254 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 9e82509b09f5fe2eb77bcdb8fd193c71923abb67) xmlsecurity: improve handling of multiple certificates per X509Data It turns out that an X509Data element can contain an arbitrary number of each of its child elements. How exactly certificates of an issuer chain may or should be distributed across multiple X509Data elements isn't terribly obvious. One thing that is clear is that any element that refers to or contains one particular certificate has to be a child of the same X509Data element, although in no particular order, so try to match the 2 such elements that the parser supports in XSecController::setX509Data(). Presumably the only way it makes sense to have multiple signing certificates is if they all contain the same key but are signed by different CAs. This case isn't handled currently; CheckX509Data() will complain there's not a single chain and validation of the certificates will fail. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111500 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 5af5ea893bcb8a8eb472ac11133da10e5a604e66) xmlsecurity: add EqualDistinguishedNam
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - include/svl svl/source sw/source xmlsecurity/inc xmlsecurity/source
include/svl/sigstruct.hxx | 32 + svl/source/crypto/cryptosign.cxx | 16 sw/source/core/edit/edfcol.cxx|3 xmlsecurity/inc/biginteger.hxx|3 xmlsecurity/inc/xmlsignaturehelper.hxx| 12 xmlsecurity/inc/xsecctl.hxx | 14 xmlsecurity/source/component/documentdigitalsignatures.cxx| 54 +-- xmlsecurity/source/dialogs/digitalsignaturesdialog.cxx| 15 xmlsecurity/source/helper/documentsignaturehelper.cxx | 63 ++- xmlsecurity/source/helper/documentsignaturemanager.cxx| 12 xmlsecurity/source/helper/ooxmlsecexporter.cxx| 22 - xmlsecurity/source/helper/ooxmlsecparser.cxx | 22 + xmlsecurity/source/helper/pdfsignaturehelper.cxx |8 xmlsecurity/source/helper/xmlsignaturehelper.cxx | 161 ++ xmlsecurity/source/helper/xsecctl.cxx | 80 ++-- xmlsecurity/source/helper/xsecparser.cxx | 144 xmlsecurity/source/helper/xsecsign.cxx| 30 + xmlsecurity/source/helper/xsecverify.cxx | 124 ++- xmlsecurity/source/xmlsec/mscrypt/x509certificate_mscryptimpl.cxx | 47 ++ xmlsecurity/source/xmlsec/mscrypt/xmlsignature_mscryptimpl.cxx|2 xmlsecurity/source/xmlsec/nss/x509certificate_nssimpl.cxx | 25 + xmlsecurity/source/xmlsec/nss/xmlsignature_nssimpl.cxx|4 22 files changed, 679 insertions(+), 214 deletions(-) New commits: commit 803c5810f368a026f7db621d3c88ef35980057eb Author: Michael Stahl AuthorDate: Thu Feb 25 14:17:48 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 10:38:56 2021 +0100 xmlsecurity: improve handling of multiple X509Data elements Combine everything related to a certificate in a new struct X509Data. The CertDigest is not actually written in the X509Data element but in xades:Cert, so try to find the matching entry in XSecController::setX509CertDigest(). There was a confusing interaction with PGP signatures, where ouGpgKeyID was used for import, but export wrote the value from ouCertDigest instead - this needed fixing. The main point of this is enforcing a constraint from xmldsig-core 4.5.4: All certificates appearing in an X509Data element MUST relate to the validation key by either containing it or being part of a certification chain that terminates in a certificate containing the validation key. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111254 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 9e82509b09f5fe2eb77bcdb8fd193c71923abb67) xmlsecurity: improve handling of multiple certificates per X509Data It turns out that an X509Data element can contain an arbitrary number of each of its child elements. How exactly certificates of an issuer chain may or should be distributed across multiple X509Data elements isn't terribly obvious. One thing that is clear is that any element that refers to or contains one particular certificate has to be a child of the same X509Data element, although in no particular order, so try to match the 2 such elements that the parser supports in XSecController::setX509Data(). Presumably the only way it makes sense to have multiple signing certificates is if they all contain the same key but are signed by different CAs. This case isn't handled currently; CheckX509Data() will complain there's not a single chain and validation of the certificates will fail. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111500 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 5af5ea893bcb8a8eb472ac11133da10e5a604e66) xmlsecurity: add EqualDistinguishedNames() Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111545 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 1d3da3486d827dd5e7a3bf1c7a533f5aa9860e42) xmlsecurity: avoid exception in DigitalSignaturesDialog::getCertificate() Fallback to PGP if there's no X509 signing certificate because CheckX509Data() failed prevents the dialog from popping up. To avoid confusing the user in this situation, the dialog should show no certificate, which is already the case. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111664 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 90b725675c2964f4a151d802d9afedd8bc2ae1a7) xmlsecurity: fix crash in DocumentDigitalSignatures::isAuthorTrusted() If the argument
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - xmlsecurity/source
xmlsecurity/source/helper/ooxmlsecexporter.cxx | 198 +++-- 1 file changed, 126 insertions(+), 72 deletions(-) New commits: commit 1e18994a0028ef17498abe72755f3cbf08397f8b Author: Miklos Vajna AuthorDate: Tue May 19 15:33:44 2020 +0200 Commit: Michael Stahl CommitDate: Thu Mar 25 10:38:15 2021 +0100 oox, svx, sw, xmlsecurity: clang-format these files I added these files more or less recently and they have long lines. Use clang-format to break at a sane column limit. Change-Id: Id4ef832e4843fc81f4a497385e49ccb835a7197f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94503 Reviewed-by: Miklos Vajna Tested-by: Jenkins (cherry picked from commit 868acbd97b58b200731ca25ece4019de734e5726) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113057 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/xmlsecurity/source/helper/ooxmlsecexporter.cxx b/xmlsecurity/source/helper/ooxmlsecexporter.cxx index cf87d6e1ad17..e38aba90ee66 100644 --- a/xmlsecurity/source/helper/ooxmlsecexporter.cxx +++ b/xmlsecurity/source/helper/ooxmlsecexporter.cxx @@ -85,25 +85,19 @@ public: bool OOXMLSecExporter::Impl::isOOXMLBlacklist(const OUString& rStreamName) { -static const std::initializer_list vBlacklist = -{ -"/%5BContent_Types%5D.xml", -"/docProps/app.xml", -"/docProps/core.xml", -// Don't attempt to sign other signatures for now. -"/_xmlsignatures" -}; +static const std::initializer_list vBlacklist += { "/%5BContent_Types%5D.xml", "/docProps/app.xml", "/docProps/core.xml", +// Don't attempt to sign other signatures for now. +"/_xmlsignatures" }; // Just check the prefix, as we don't care about the content type part of the stream name. -return std::any_of(vBlacklist.begin(), vBlacklist.end(), [&](const OUStringLiteral& rLiteral) -{ +return std::any_of(vBlacklist.begin(), vBlacklist.end(), [&](const OUStringLiteral& rLiteral) { return rStreamName.startsWith(rLiteral); }); } bool OOXMLSecExporter::Impl::isOOXMLRelationBlacklist(const OUString& rRelationName) { -static const std::initializer_list vBlacklist = -{ +static const std::initializer_list vBlacklist = { "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties";, "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties";, "http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin"; @@ -113,7 +107,8 @@ bool OOXMLSecExporter::Impl::isOOXMLRelationBlacklist(const OUString& rRelationN void OOXMLSecExporter::Impl::writeSignedInfo() { -m_xDocumentHandler->startElement("SignedInfo", uno::Reference(new SvXMLAttributeList())); +m_xDocumentHandler->startElement( +"SignedInfo", uno::Reference(new SvXMLAttributeList())); writeCanonicalizationMethod(); writeSignatureMethod(); @@ -126,18 +121,18 @@ void OOXMLSecExporter::Impl::writeCanonicalizationMethod() { rtl::Reference pAttributeList(new SvXMLAttributeList()); pAttributeList->AddAttribute("Algorithm", ALGO_C14N); -m_xDocumentHandler->startElement("CanonicalizationMethod", uno::Reference(pAttributeList.get())); +m_xDocumentHandler->startElement( +"CanonicalizationMethod", uno::Reference(pAttributeList.get())); m_xDocumentHandler->endElement("CanonicalizationMethod"); - } void OOXMLSecExporter::Impl::writeCanonicalizationTransform() { rtl::Reference pAttributeList(new SvXMLAttributeList()); pAttributeList->AddAttribute("Algorithm", ALGO_C14N); -m_xDocumentHandler->startElement("Transform", uno::Reference(pAttributeList.get())); +m_xDocumentHandler->startElement( +"Transform", uno::Reference(pAttributeList.get())); m_xDocumentHandler->endElement("Transform"); - } void OOXMLSecExporter::Impl::writeSignatureMethod() @@ -149,7 +144,8 @@ void OOXMLSecExporter::Impl::writeSignatureMethod() else pAttributeList->AddAttribute("Algorithm", ALGO_RSASHA256); -m_xDocumentHandler->startElement("SignatureMethod", uno::Reference(pAttributeList.get())); +m_xDocumentHandler->startElement( +"SignatureMethod", uno::Reference(pAttributeList.get())); m_xDocumentHandler->endElement("SignatureMethod"); } @@ -163,21 +159,27 @@ void OOXMLSecExporter::Impl::writeSignedInfoReferences() { rtl::Reference pAttributeList(new SvXMLAttributeList()); if (rReference.ouURI != "idSignedProperties") -pAttributeList->AddAttribute("Type", "http://www.w3.org/2000/09/xmldsig#Object";); +pAttributeList->AddAttribute("Type", + "http://www.w3.org/2000/09/xmldsig#Object";); else -pAttribute
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - xmlsecurity/source
xmlsecurity/source/component/documentdigitalsignatures.cxx | 130 ++--- 1 file changed, 66 insertions(+), 64 deletions(-) New commits: commit e5583cb1dbe75344486ecbab2fb664bd1d809d4e Author: Samuel Mehrbrodt AuthorDate: Wed Apr 29 07:42:24 2020 +0200 Commit: Michael Stahl CommitDate: Thu Mar 25 10:37:31 2021 +0100 Remove unnecessary if block And format code inside Change-Id: Ied0d98935134bf6f7bc8c929645ad5faac9affa3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93116 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt (cherry picked from commit cf36fe5eb41910c26d58fb25e54ccf2e0ee01365) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113056 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/xmlsecurity/source/component/documentdigitalsignatures.cxx b/xmlsecurity/source/component/documentdigitalsignatures.cxx index 37ea37bf8992..71251eda2f8a 100644 --- a/xmlsecurity/source/component/documentdigitalsignatures.cxx +++ b/xmlsecurity/source/component/documentdigitalsignatures.cxx @@ -515,85 +515,87 @@ DocumentDigitalSignatures::ImplVerifySignatures( Sequence< css::security::DocumentSignatureInformation > aInfos(nInfos); css::security::DocumentSignatureInformation* arInfos = aInfos.getArray(); -if ( nInfos ) +for (int n = 0; n < nInfos; ++n) { -for( int n = 0; n < nInfos; ++n ) -{ -DocumentSignatureAlgorithm mode = DocumentSignatureHelper::getDocumentAlgorithm( -m_sODFVersion, aSignInfos[n]); -const std::vector< OUString > aElementsToBeVerified = -DocumentSignatureHelper::CreateElementList( -rxStorage, eMode, mode); +DocumentSignatureAlgorithm mode += DocumentSignatureHelper::getDocumentAlgorithm(m_sODFVersion, aSignInfos[n]); +const std::vector aElementsToBeVerified += DocumentSignatureHelper::CreateElementList(rxStorage, eMode, mode); -const SignatureInformation& rInfo = aSignInfos[n]; -css::security::DocumentSignatureInformation& rSigInfo = arInfos[n]; +const SignatureInformation& rInfo = aSignInfos[n]; +css::security::DocumentSignatureInformation& rSigInfo = arInfos[n]; -if (rInfo.ouGpgCertificate.isEmpty()) // X.509 +if (rInfo.ouGpgCertificate.isEmpty()) // X.509 +{ +if (!rInfo.ouX509Certificate.isEmpty()) +rSigInfo.Signer = xSecEnv->createCertificateFromAscii(rInfo.ouX509Certificate); +if (!rSigInfo.Signer.is()) +rSigInfo.Signer = xSecEnv->getCertificate( +rInfo.ouX509IssuerName, + xmlsecurity::numericStringToBigInteger(rInfo.ouX509SerialNumber)); + +// On Windows checking the certificate path is buggy. It does name matching (issuer, subject name) +// to find the parent certificate. It does not take into account that there can be several certificates +// with the same subject name. +try { -if (!rInfo.ouX509Certificate.isEmpty()) -rSigInfo.Signer = xSecEnv->createCertificateFromAscii( rInfo.ouX509Certificate ) ; -if (!rSigInfo.Signer.is()) -rSigInfo.Signer = xSecEnv->getCertificate( rInfo.ouX509IssuerName, - xmlsecurity::numericStringToBigInteger( rInfo.ouX509SerialNumber ) ); - -// On Windows checking the certificate path is buggy. It does name matching (issuer, subject name) -// to find the parent certificate. It does not take into account that there can be several certificates -// with the same subject name. - -try { -rSigInfo.CertificateStatus = xSecEnv->verifyCertificate(rSigInfo.Signer, - Sequence >()); -} catch (SecurityException& ) { -OSL_FAIL("Verification of certificate failed"); -rSigInfo.CertificateStatus = css::security::CertificateValidity::INVALID; -} +rSigInfo.CertificateStatus = xSecEnv->verifyCertificate( +rSigInfo.Signer, Sequence>()); } -else if (xGpgSecEnv.is()) // GPG +catch (SecurityException&) { -// TODO not ideal to retrieve cert by keyID, might -// collide, or PGPKeyID format might change - can't we -// keep the xCert itself in rInfo? -rSigInfo.Signer = xGpgSecEnv->getCertificate( rInfo.ouGpgKeyID, xmlsecurity::numericStringToBigInteger("") ); -rSigInfo.CertificateStatus = xGpgSecEnv->verifyCertificate(rSigInfo.Signer, -
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - xmlsecurity/inc xmlsecurity/source
xmlsecurity/inc/xsecctl.hxx |1 xmlsecurity/source/helper/xsecparser.cxx | 290 +-- xmlsecurity/source/helper/xsecparser.hxx |1 xmlsecurity/source/helper/xsecverify.cxx | 19 ++ 4 files changed, 221 insertions(+), 90 deletions(-) New commits: commit 575a4bfdcffd91cd0b910a29cf3ecb56a07d9e99 Author: Michael Stahl AuthorDate: Fri Feb 19 17:56:21 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 10:36:19 2021 +0100 xmlsecurity: ignore elements in ds:Object that aren't signed Change-Id: I2e4411f0907b89e7ad6e0185cee8f12b600515e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111253 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 2bfa00e6bf4b2a310a8b8f5060acec85b5f7a3ce) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111909 Reviewed-by: Caolán McNamara (cherry picked from commit 94ce59dd02fcfcaa1eb4f195b45a9a2edbd58242) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113055 Tested-by: Michael Stahl diff --git a/xmlsecurity/inc/xsecctl.hxx b/xmlsecurity/inc/xsecctl.hxx index 7baa219fb13c..782e286ae85a 100644 --- a/xmlsecurity/inc/xsecctl.hxx +++ b/xmlsecurity/inc/xsecctl.hxx @@ -252,6 +252,7 @@ private: /// Sets algorithm from . void setSignatureMethod(svl::crypto::SignatureMethodAlgorithm eAlgorithmID); void switchGpgSignature(); +bool haveReferenceForId(OUString const& rId) const; void addReference( const OUString& ouUri, sal_Int32 nDigestID, diff --git a/xmlsecurity/source/helper/xsecparser.cxx b/xmlsecurity/source/helper/xsecparser.cxx index 1418b7b43b46..f46277f96ea1 100644 --- a/xmlsecurity/source/helper/xsecparser.cxx +++ b/xmlsecurity/source/helper/xsecparser.cxx @@ -95,6 +95,42 @@ auto XSecParser::Context::CreateChildContext( return std::make_unique(m_rParser, std::move(pOldNamespaceMap)); } +/** +note: anything in ds:Object should be trusted *only* if there is a ds:Reference + to it so it is signed (exception: the xades:EncapsulatedX509Certificate). + ds:SignedInfo precedes all ds:Object. + + There may be multiple ds:Signature for purpose of counter-signatures + but the way XAdES describes these, only the ds:SignatureValue element + would be referenced, so requiring a ds:Reference for anything in + ds:Object shouldn't cause issues. + */ +class XSecParser::ReferencedContextImpl +: public XSecParser::Context +{ +protected: +bool m_isReferenced; + +public: +ReferencedContextImpl(XSecParser & rParser, +std::unique_ptr pOldNamespaceMap, +bool const isReferenced) +: XSecParser::Context(rParser, std::move(pOldNamespaceMap)) +, m_isReferenced(isReferenced) +{ +} + +OUString CheckIdAttrReferenced(css::uno::Reference const& xAttrs) +{ +OUString const id(m_rParser.HandleIdAttr(xAttrs)); +if (!id.isEmpty() && m_rParser.m_pXSecController->haveReferenceForId(id)) +{ +m_isReferenced = true; +} +return id; +} +}; + class XSecParser::LoPGPOwnerContext : public XSecParser::Context { @@ -228,21 +264,29 @@ class XSecParser::DsX509CertificateContext }; class XSecParser::DsX509SerialNumberContext -: public XSecParser::Context +: public XSecParser::ReferencedContextImpl { private: OUString m_Value; public: DsX509SerialNumberContext(XSecParser & rParser, -std::unique_ptr pOldNamespaceMap) -: XSecParser::Context(rParser, std::move(pOldNamespaceMap)) +std::unique_ptr pOldNamespaceMap, +bool const isReferenced) +: ReferencedContextImpl(rParser, std::move(pOldNamespaceMap), isReferenced) { } virtual void EndElement() override { -m_rParser.m_pXSecController->setX509SerialNumber(m_Value); +if (m_isReferenced) +{ +m_rParser.m_pXSecController->setX509SerialNumber(m_Value); +} +else +{ +SAL_INFO("xmlsecurity.helper", "ignoring unsigned X509SerialNumber"); +} } virtual void Characters(OUString const& rChars) override @@ -252,21 +296,29 @@ class XSecParser::DsX509SerialNumberContext }; class XSecParser::DsX509IssuerNameContext -: public XSecParser::Context +: public XSecParser::ReferencedContextImpl { private: OUString m_Value; public: DsX509IssuerNameContext(XSecParser & rParser, -std::unique_ptr pOldNamespaceMap) -: XSecParser::Context(rParser, std::move(pOldNamespaceMap)) +std::unique_ptr pOldNamespaceMap, +bool const isReferenced) +: ReferencedContextImpl(rParser, std::move(pOldNames
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - xmlsecurity/source
xmlsecurity/source/helper/xsecctl.cxx| 120 ++- xmlsecurity/source/helper/xsecparser.cxx | 39 -- xmlsecurity/source/helper/xsecsign.cxx | 26 ++ xmlsecurity/source/helper/xsecverify.cxx | 45 +-- 4 files changed, 107 insertions(+), 123 deletions(-) New commits: commit 3324385cd28386b063f097a05da0aa7a69e1a3a3 Author: Noel Grandin AuthorDate: Tue May 12 16:17:25 2020 +0200 Commit: Michael Stahl CommitDate: Thu Mar 25 10:25:33 2021 +0100 expand out some namespace aliases [xmlsecurity/source/helper] Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94093 Tested-by: Jenkins Reviewed-by: Noel Grandin (cherry picked from commit 943fbfad668da76f7d0ebd4f4d8cdd67224d2f01) plus one line in xsecverify.cxx from: commit f59d9e7ea09482c2e9e5f52a8d0445e4cebc3df5 Author: Noel Grandin AuthorDate: Fri Apr 3 15:53:49 2020 +0200 new loplugin:unusedvariableplus a particularly aggressive checker, which is why it is off by default Change-Id: I5fdb554a1b116824843f35645bc1cea3ca91e0f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113052 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/xmlsecurity/source/helper/xsecctl.cxx b/xmlsecurity/source/helper/xsecctl.cxx index ab108d13c224..cac30006b6a7 100644 --- a/xmlsecurity/source/helper/xsecctl.cxx +++ b/xmlsecurity/source/helper/xsecctl.cxx @@ -41,10 +41,6 @@ #include "ooxmlsecexporter.hxx" #include -namespace cssu = com::sun::star::uno; -namespace cssl = com::sun::star::lang; -namespace cssxc = com::sun::star::xml::crypto; -namespace cssxs = com::sun::star::xml::sax; using namespace com::sun::star; namespace @@ -53,11 +49,11 @@ OUString getDigestURI(sal_Int32 nID) { switch( nID ) { -case cssxc::DigestID::SHA1: +case css::xml::crypto::DigestID::SHA1: return ALGO_XMLDSIGSHA1; -case cssxc::DigestID::SHA256: +case css::xml::crypto::DigestID::SHA256: return ALGO_XMLDSIGSHA256; -case cssxc::DigestID::SHA512: +case css::xml::crypto::DigestID::SHA512: return ALGO_XMLDSIGSHA512; default: return ALGO_XMLDSIGSHA1; @@ -71,13 +67,13 @@ OUString getSignatureURI(svl::crypto::SignatureMethodAlgorithm eAlgorithm, sal_I { switch (nDigestID) { -case cssxc::DigestID::SHA1: +case css::xml::crypto::DigestID::SHA1: aRet = ALGO_ECDSASHA1; break; -case cssxc::DigestID::SHA256: +case css::xml::crypto::DigestID::SHA256: aRet = ALGO_ECDSASHA256; break; -case cssxc::DigestID::SHA512: +case css::xml::crypto::DigestID::SHA512: aRet = ALGO_ECDSASHA512; break; default: @@ -90,11 +86,11 @@ OUString getSignatureURI(svl::crypto::SignatureMethodAlgorithm eAlgorithm, sal_I switch (nDigestID) { -case cssxc::DigestID::SHA1: +case css::xml::crypto::DigestID::SHA1: return ALGO_RSASHA1; -case cssxc::DigestID::SHA256: +case css::xml::crypto::DigestID::SHA256: return ALGO_RSASHA256; -case cssxc::DigestID::SHA512: +case css::xml::crypto::DigestID::SHA512: return ALGO_RSASHA512; default: return ALGO_RSASHA1; @@ -102,7 +98,7 @@ OUString getSignatureURI(svl::crypto::SignatureMethodAlgorithm eAlgorithm, sal_I } } -XSecController::XSecController( const cssu::Reference& rxCtx ) +XSecController::XSecController( const css::uno::Reference& rxCtx ) : mxCtx(rxCtx) , m_nNextSecurityId(1) , m_bIsPreviousNodeInitializable(false) @@ -177,15 +173,15 @@ void XSecController::createXSecComponent( ) m_xXMLDocumentWrapper = nullptr; m_xSAXEventKeeper = nullptr; -cssu::Reference< cssl::XMultiComponentFactory > xMCF( mxCtx->getServiceManager() ); +css::uno::Reference< css::lang::XMultiComponentFactory > xMCF( mxCtx->getServiceManager() ); #if HAVE_FEATURE_GPGME -uno::Reference< lang::XServiceInfo > xServiceInfo( m_xSecurityContext, cssu::UNO_QUERY ); +uno::Reference< lang::XServiceInfo > xServiceInfo( m_xSecurityContext, css::uno::UNO_QUERY ); if (xServiceInfo->getImplementationName() == "com.sun.star.xml.security.gpg.XMLSecurityContext_GpgImpl") m_xXMLSignature.set(new XMLSignature_GpgImpl()); else // xmlsec or mscrypt #endif - m_xXMLSignature.set(xMCF->createInstanceWithContext("com.sun.star.xml.crypto.XMLSignature", mxCtx), cssu::UNO_QUERY); + m_xXMLSignature.set(xMCF->createInstanceWithContext("com.sun.star.xml.crypto.XMLSignature", mxCtx), css::uno::UNO_QUERY); bool bSuccess = m_xXMLSignature.is(); if ( bSuccess ) @@ -205,11 +201,11 @@ void XSecController::createXSecCompo
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - include/xmloff xmloff/source xmlsecurity/source
include/xmloff/xmlimp.hxx|6 include/xmloff/xmlnmspe.hxx |7 include/xmloff/xmltoken.hxx | 13 xmloff/source/core/xmlimp.cxx| 26 xmloff/source/core/xmltoken.cxx | 13 xmloff/source/token/tokens.txt | 10 xmlsecurity/source/helper/xsecparser.cxx | 1634 --- xmlsecurity/source/helper/xsecparser.hxx | 99 - 8 files changed, 1427 insertions(+), 381 deletions(-) New commits: commit 205135016edb54d65ace93d5b7a416f381169e88 Author: Michael Stahl AuthorDate: Fri Feb 12 16:42:51 2021 +0100 Commit: Samuel Mehrbrodt CommitDate: Thu Mar 25 10:28:20 2021 +0100 xmlsecurity: replace XSecParser implementation Implement Namespaces in XML and follow xmldsig-core and XAdES schemas. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110833 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 12b15be8f4f930a04d8056b9219ac969b42a9784) xmlsecurity: move XSecParser state into contexts Reviewed-on: https://gerrit.libreoffice.org/c/core/+/58 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 59df9e70ce1a7ec797b836bda7f9642912febc53) xmlsecurity: move XSecParser Reference state into contexts Reviewed-on: https://gerrit.libreoffice.org/c/core/+/59 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit cfeb89a758b5f0ec406f0d72444e52ed2f47b85e) Change-Id: I03537b51bb757ecbfa63a826b38de543c70ba032 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111907 Tested-by: Jenkins Reviewed-by: Caolán McNamara (cherry picked from commit ad5930e87e788780a255523f106deb1dde5d7b37) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113053 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/include/xmloff/xmlimp.hxx b/include/xmloff/xmlimp.hxx index 6d0dda96596a..8d557789aa4c 100644 --- a/include/xmloff/xmlimp.hxx +++ b/include/xmloff/xmlimp.hxx @@ -229,8 +229,12 @@ class XMLOFF_DLLPUBLIC SvXMLImport : public cppu::WeakImplHelper< static void initializeNamespaceMaps(); void registerNamespaces(); -std::unique_ptr processNSAttributes( +public: +static std::unique_ptr processNSAttributes( +std::unique_ptr & rpNamespaceMap, +SvXMLImport *const pImport, const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList); +private: void Characters(const OUString& aChars); css::uno::Reference< css::task::XStatusIndicator > mxStatusIndicator; diff --git a/include/xmloff/xmlnmspe.hxx b/include/xmloff/xmlnmspe.hxx index a00628b6b999..cc97a9c5aaa4 100644 --- a/include/xmloff/xmlnmspe.hxx +++ b/include/xmloff/xmlnmspe.hxx @@ -138,6 +138,13 @@ XML_NAMESPACE( XML_NAMESPACE_FIELD, 100U ) XML_NAMESPACE( XML_NAMESPACE_CSS3TEXT,103U ) // CSS Text Level 3 XML_NAMESPACE( XML_NAMESPACE_FORMX, 101U ) // form interop extensions +// OOo extension digital signatures, used in ODF 1.1 +const sal_uInt16 XML_NAMESPACE_DSIG_OOO =200; +// ODF 1.2 digital signature namespaces +const sal_uInt16 XML_NAMESPACE_DSIG =201; +const sal_uInt16 XML_NAMESPACE_DS = 202; +const sal_uInt16 XML_NAMESPACE_XADES132 =203; +const sal_uInt16 XML_NAMESPACE_XADES141 =204; #endif // INCLUDED_XMLOFF_XMLNMSPE_HXX diff --git a/include/xmloff/xmltoken.hxx b/include/xmloff/xmltoken.hxx index b5105e5da0f3..a0e52903060a 100644 --- a/include/xmloff/xmltoken.hxx +++ b/include/xmloff/xmltoken.hxx @@ -133,6 +133,19 @@ namespace xmloff { namespace token { XML_NP_GRDDL, XML_N_GRDDL, +// OOo extension digital signatures, used in ODF 1.1 +XML_NP_DSIG_OOO, +XML_N_DSIG_OOO, +// ODF 1.2 digital signatures +XML_NP_DSIG, +XML_N_DSIG, +XML_NP_DS, +XML_N_DS, +XML_NP_XADES132, +XML_N_XADES132, +XML_NP_XADES141, +XML_N_XADES141, + // ODF Enhanced namespaces XML_NP_OFFICE_EXT, XML_N_OFFICE_EXT, diff --git a/xmloff/source/core/xmlimp.cxx b/xmloff/source/core/xmlimp.cxx index ef63550ff2be..bfc9d3fe819a 100644 --- a/xmloff/source/core/xmlimp.cxx +++ b/xmloff/source/core/xmlimp.cxx @@ -653,6 +653,8 @@ void SAL_CALL SvXMLImport::endDocument() } std::unique_ptr SvXMLImport::processNSAttributes( +std::unique_ptr & rpNamespaceMap, +SvXMLImport *const pImport, // TODO??? const uno::Reference< xml::sax::XAttributeList >& xAttrList) { std::unique_ptr pRewindMap; @@ -660,12 +662,13 @@ std::unique_ptr SvXMLImport::processNSAttributes( for( sal_Int16 i=0; i < nAttrCount; i++ ) { const OUString& rAttrName = xAttrList->getNameByIndex( i ); -if ( rAttrName == "office:version" ) +if (pImport && rAttrName == "office:version")
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - include/svl xmlsecurity/inc xmlsecurity/source
include/svl/sigstruct.hxx|7 +- xmlsecurity/inc/xsecctl.hxx |5 - xmlsecurity/source/helper/ooxmlsecparser.cxx |4 - xmlsecurity/source/helper/xsecctl.cxx|2 xmlsecurity/source/helper/xsecparser.cxx | 81 +-- xmlsecurity/source/helper/xsecparser.hxx |6 -- xmlsecurity/source/helper/xsecsign.cxx |4 - xmlsecurity/source/helper/xsecverify.cxx | 39 + 8 files changed, 68 insertions(+), 80 deletions(-) New commits: commit 15bd9a85a3ab6f2c78bb2b2db2c767cae0f9578b Author: Michael Stahl AuthorDate: Thu Feb 18 19:22:31 2021 +0100 Commit: Samuel Mehrbrodt CommitDate: Thu Mar 25 10:33:46 2021 +0100 xmlsecurity: XSecParser confused about multiple timestamps LO writes timestamp both to dc:date and xades:SigningTime elements. The parser tries to avoid reading multiple dc:date, preferring the first one, but doesn't care about multiple xades:SigningTime, for undocumented reasons. Ideally something should check all read values for consistency. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/60 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 4ab8d9c09a5873ca0aea56dafa1ab34758d52ef7) xmlsecurity: remove XSecController::setPropertyId() Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111252 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit d2a345e1163616fe3201ef1d6c758e2e819214e0) Change-Id: Ic018ee89797a1c8a4f870ae102af48006de930ef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111908 Tested-by: Jenkins Reviewed-by: Caolán McNamara (cherry picked from commit abe77c4fcb9ea97d9fff07eaea6d8863bcba5b02) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113054 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/include/svl/sigstruct.hxx b/include/svl/sigstruct.hxx index f6ee242c84d1..7a0296fa9fae 100644 --- a/include/svl/sigstruct.hxx +++ b/include/svl/sigstruct.hxx @@ -103,6 +103,9 @@ struct SignatureInformation // XAdES EncapsulatedX509Certificate values std::set maEncapsulatedX509Certificates; +OUString ouSignatureId; +// signature may contain multiple time stamps - check they're consistent +bool hasInconsistentSigningTime = false; //We also keep the date and time as string. This is done when this //structure is created as a result of a XML signature being read. //When then a signature is added or another removed, then the original @@ -115,8 +118,8 @@ struct SignatureInformation //and the converted time is written back, then the string looks different //and the signature is broken. OUString ouDateTime; -OUString ouSignatureId; -OUString ouPropertyId; +/// The Id attribute of the element that contains the . +OUString ouDateTimePropertyId; /// Characters of the element inside the signature. OUString ouDescription; /// The Id attribute of the element that contains the . diff --git a/xmlsecurity/inc/xsecctl.hxx b/xmlsecurity/inc/xsecctl.hxx index 351c94a2a3e6..7baa219fb13c 100644 --- a/xmlsecurity/inc/xsecctl.hxx +++ b/xmlsecurity/inc/xsecctl.hxx @@ -271,8 +271,8 @@ private: void setGpgCertificate( OUString const & ouGpgCert ); void setGpgOwner( OUString const & ouGpgOwner ); -void setDate( OUString const & ouDate ); -void setDescription(const OUString& rDescription); +void setDate(OUString const& rId, OUString const& ouDate); +void setDescription(OUString const& rId, OUString const& rDescription); void setCertDigest(const OUString& rCertDigest); void setValidSignatureImage(const OUString& rValidSigImg); void setInvalidSignatureImage(const OUString& rInvalidSigImg); @@ -283,7 +283,6 @@ public: private: void setId( OUString const & ouId ); -void setPropertyId( OUString const & ouPropertyId ); css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener > prepareSignatureToRead( sal_Int32 nSecurityId ); diff --git a/xmlsecurity/source/helper/ooxmlsecparser.cxx b/xmlsecurity/source/helper/ooxmlsecparser.cxx index c22e8c2261bf..a200de60c07a 100644 --- a/xmlsecurity/source/helper/ooxmlsecparser.cxx +++ b/xmlsecurity/source/helper/ooxmlsecparser.cxx @@ -192,12 +192,12 @@ void SAL_CALL OOXMLSecParser::endElement(const OUString& rName) } else if (rName == "mdssi:Value") { -m_pXSecController->setDate(m_aMdssiValue); +m_pXSecController->setDate("", m_aMdssiValue); m_bInMdssiValue = false; } else if (rName == "SignatureComments") { -m_pXSecController->setDescription(m_aSignatureComments); +m_pXSecController->setDescription("", m_aSignatureComments); m_bInSignatureComments = false; } else if (rName == "X509IssuerName") diff --git a/
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - 2 commits - xmlsecurity/source
xmlsecurity/source/helper/xmlsignaturehelper.cxx |1 + xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx |4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) New commits: commit a38e0961002310562da2c32b96fa539eaa2a23c4 Author: Caolán McNamara AuthorDate: Mon Feb 8 17:05:28 2021 + Commit: Michael Stahl CommitDate: Thu Mar 25 10:25:21 2021 +0100 default to CertificateValidity::INVALID so if CertGetCertificateChain fails we don't want validity to be css::security::CertificateValidity::VALID which is what the old default of 0 equates to notably commit 1e0bc66d16aee28ce8bd9582ea32178c63841902 Date: Thu Nov 5 16:55:26 2009 +0100 jl137: #103420# better logging turned the nss equivalent of SecurityEnvironment_NssImpl::verifyCertificate from 0 to CertificateValidity::INVALID like this change does Change-Id: I5350dbc22d1b9b378da2976d3b0abd728f1f4c27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110561 Tested-by: Jenkins Reviewed-by: Miklos Vajna (cherry picked from commit edeb164c1d8ab64116afee4e2140403a362a1358) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113051 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx b/xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx index d9b657891b96..4031df289f44 100644 --- a/xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx +++ b/xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx @@ -755,7 +755,7 @@ sal_Int32 SecurityEnvironment_MSCryptImpl::verifyCertificate( const uno::Reference< css::security::XCertificate >& aCert, const uno::Sequence< uno::Reference< css::security::XCertificate > >& seqCerts) { -sal_Int32 validity = 0; +sal_Int32 validity = css::security::CertificateValidity::INVALID; PCCERT_CHAIN_CONTEXT pChainContext = nullptr; PCCERT_CONTEXT pCertContext = nullptr; @@ -899,7 +899,7 @@ sal_Int32 SecurityEnvironment_MSCryptImpl::verifyCertificate( } else { -SAL_INFO("xmlsecurity.xmlsec", "CertGetCertificateChaine failed."); +SAL_INFO("xmlsecurity.xmlsec", "CertGetCertificateChain failed."); } } commit e6bb72dd4c6a9f9743f3585e22576f589e5e74ba Author: Caolán McNamara AuthorDate: Thu Mar 11 20:23:31 2021 + Commit: Michael Stahl CommitDate: Thu Mar 25 10:25:09 2021 +0100 do same set error state as ReadAndVerifySignature does this function is nearly exactly the same as ReadAndVerifySignature except it doesn't set error-state on exception during parse Change-Id: Ife881f639a11d3185920ca62cc2cd22812fae36d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112366 Tested-by: Jenkins Reviewed-by: Michael Stahl Reviewed-by: Miklos Vajna Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112412 (cherry picked from commit 52a23d595b820cab27d76d0e7c129f2757c762d6) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113050 Tested-by: Michael Stahl diff --git a/xmlsecurity/source/helper/xmlsignaturehelper.cxx b/xmlsecurity/source/helper/xmlsignaturehelper.cxx index 6ec834053a17..22c056e70da1 100644 --- a/xmlsecurity/source/helper/xmlsignaturehelper.cxx +++ b/xmlsecurity/source/helper/xmlsignaturehelper.cxx @@ -402,6 +402,7 @@ bool XMLSignatureHelper::ReadAndVerifySignatureStorageStream(const css::uno::Ref catch(const uno::Exception&) { DBG_UNHANDLED_EXCEPTION("xmlsecurity.helper"); +mbError = true; } mpXSecController->releaseSignatureReader(); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - solenv/gbuild
solenv/gbuild/platform/com_GCC_defs.mk |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 6cb7dc556281162d2fcb55eee646d59e3acdeb30 Author: Michael Stahl AuthorDate: Sat Feb 27 22:30:41 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 10:24:36 2021 +0100 gbuild: don't use -Wunused-macros with sccache In at least soltools, jurt and gperf generated files, build with GCC and sccache 0.2.16-alpha.0 reports spurious -Werror=implicit-fallthrough= due to comments and these go away by configuring sccache with rewrite_includes_only = true. But his results in cc1: error: ‘-fdirectives-only’ is incompatible with ‘-Wunused-macros’ so disable that like for clang-with-icecream builds. Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111716 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 6fb9f368c6824a8ff7bc5bc5cf66fc2df7d055b7) Change-Id: I6dec38e86aa6e22591d7a700a8daddf3fed88b16 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113048 Tested-by: Michael Stahl Reviewed-by: Michael Stahl diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk index 712a61df544f..9e3b695360cd 100644 --- a/solenv/gbuild/platform/com_GCC_defs.mk +++ b/solenv/gbuild/platform/com_GCC_defs.mk @@ -62,7 +62,7 @@ gb_CFLAGS_COMMON := \ -Wstrict-prototypes \ -Wundef \ -Wunreachable-code \ - $(if $(and $(COM_IS_CLANG),$(or $(findstring icecc,$(CC)),$(findstring icecc,$(CCACHE_PREFIX,,-Wunused-macros) \ + $(if $(or $(and $(COM_IS_CLANG),$(or $(findstring icecc,$(CC)),$(findstring icecc,$(CCACHE_PREFIX,$(findstring sccache,$(CC))),,-Wunused-macros) \ -finput-charset=UTF-8 \ -fmessage-length=0 \ -fno-common \ @@ -77,7 +77,7 @@ gb_CXXFLAGS_COMMON := \ -Wextra \ -Wundef \ -Wunreachable-code \ - $(if $(and $(COM_IS_CLANG),$(or $(findstring icecc,$(CC)),$(findstring icecc,$(CCACHE_PREFIX,,-Wunused-macros) \ + $(if $(or $(and $(COM_IS_CLANG),$(or $(findstring icecc,$(CXX)),$(findstring icecc,$(CCACHE_PREFIX,$(findstring sccache,$(CXX))),,-Wunused-macros) \ -finput-charset=UTF-8 \ -fmessage-length=0 \ -fno-common \ ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/lhm/libreoffice-6-4+backports' - shell/source
shell/source/win32/SysShExec.cxx | 31 +++ 1 file changed, 19 insertions(+), 12 deletions(-) New commits: commit e3d8bf61586786dcbf5ddb985367483971a0cc4b Author: Stephan Bergmann AuthorDate: Tue Feb 16 09:30:09 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 10:24:54 2021 +0100 Improve checkExtension Change-Id: Iff416a9c5930ad5903f7ee51a2abbc94d5f40800 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110970 Reviewed-by: Mike Kaganski Tested-by: Jenkins (cherry picked from commit f456c4dacf700e064e112ef068ff7edb04239754) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110922 Reviewed-by: Michael Stahl (cherry picked from commit f19d95986756412e5d72047656eec17a720c5e57) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113049 Tested-by: Michael Stahl diff --git a/shell/source/win32/SysShExec.cxx b/shell/source/win32/SysShExec.cxx index c4170d2f9de5..97a8df6e94b6 100644 --- a/shell/source/win32/SysShExec.cxx +++ b/shell/source/win32/SysShExec.cxx @@ -410,21 +410,28 @@ void SAL_CALL CSysShExec::execute( const OUString& aCommand, const OUString& aPa } } pathname = o3tl::toU(path); +// ShellExecuteExW appears to ignore trailing dots, so remove them: +while (pathname.endsWith(".", &pathname)) {} auto const n = pathname.lastIndexOf('.'); if (n > pathname.lastIndexOf('\\')) { auto const ext = pathname.copy(n + 1); -OUString env; -if (osl_getEnvironment(OUString("PATHEXT").pData, &env.pData) != osl_Process_E_None) -{ -SAL_INFO("shell", "osl_getEnvironment(PATHEXT) failed"); -} -if (!(checkExtension(ext, env) - && checkExtension( - ext, - ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;.JAR"))) -{ -throw css::lang::IllegalArgumentException( -"XSystemShellExecute.execute, cannot process <" + aCommand + ">", {}, 0); +if (!ext.isEmpty()) { +OUString env; +if (osl_getEnvironment(OUString("PATHEXT").pData, &env.pData) +!= osl_Process_E_None) +{ +SAL_INFO("shell", "osl_getEnvironment(PATHEXT) failed"); +} +if (!(checkExtension(ext, env) + && checkExtension( + ext, + ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;" + ".JAR;.APPLICATION;.LNK;.SCR"))) +{ +throw css::lang::IllegalArgumentException( +"XSystemShellExecute.execute, cannot process <" + aCommand + ">", {}, +0); +} } } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/inc
sw/inc/strings.hrc |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit ad5a9d3414b9001b3508b9a5d0c8f7947a58250e Author: Seth Chaiklin AuthorDate: Wed Mar 24 20:14:27 2021 +0100 Commit: Seth Chaiklin CommitDate: Thu Mar 25 10:17:11 2021 +0100 adjustment in "Reset to Parent" extended tooltip Change-Id: I3fc3dfdaf018afeced27a36313b2a5bd75b3ba85 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112968 Tested-by: Jenkins Reviewed-by: Seth Chaiklin diff --git a/sw/inc/strings.hrc b/sw/inc/strings.hrc index 263cdcc39361..2ed7893eeda9 100644 --- a/sw/inc/strings.hrc +++ b/sw/inc/strings.hrc @@ -26,7 +26,7 @@ // Dialog buttons #define STR_STANDARD_LABEL NC_("STR_STANDARD_LABEL", "Reset to ~Parent") #define STR_STANDARD_TOOLTIPNC_("STR_STANDARD_TOOLTIP", "Values on this tab specified in “Contains” in Organizer are removed.") -#define STR_STANDARD_EXTENDEDTIP NC_("STR_STANDARD_EXTENDEDTIP", "Reset the values of this page to the values of the parent style. Values on this tab specified in “Contains” in Organizer are removed.") +#define STR_STANDARD_EXTENDEDTIP NC_("STR_STANDARD_EXTENDEDTIP", "Values in this tab are set to the corresponding values of the style specified in “Inherit from” in Organizer. In all cases, also when “Inherit from” is “None”, the current tab values specified in “Contains” are removed.") #define STR_RESET_LABEL NC_("STR_RESET_LABEL", "Reset") #define STR_RESET_TOOLTIP NC_("STR_RESET_TOOLTIP", "Unsaved modifications to this tab are reverted.") #define STR_RESET_EXTENDEDTIP NC_("STR_RESET_EXTENDEDTIP", "Revert any changes made on the current tab to the settings that were present when this dialog was opened, or after the last use of “Apply”.") ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-1' - sw/qa writerfilter/source
sw/qa/extras/ooxmlexport/data/tdf125936_numberingSuperscript.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport16.cxx|6 ++ writerfilter/source/dmapper/DomainMapper.cxx | 10 -- writerfilter/source/dmapper/DomainMapper.hxx |1 + writerfilter/source/dmapper/DomainMapper_Impl.cxx |1 + writerfilter/source/dmapper/DomainMapper_Impl.hxx |3 +++ 6 files changed, 19 insertions(+), 2 deletions(-) New commits: commit 9436ab24a7d08540a7c192df86956d53673c9a08 Author: Justin Luth AuthorDate: Tue Mar 23 12:18:43 2021 +0200 Commit: Miklos Vajna CommitDate: Thu Mar 25 10:04:01 2021 +0100 tdf#125936 writerfilter: treat escapement in numbering like styles deferCharacterProperties wasn't occurring in the numbering import (and so it was affecting the first run of the body text). But just like character styles, it would be better to just consider this auto-superscript instead of to defer it and calculate based on the fontsize - since that really isn't known until layout time, and so only works with direct formating. Change-Id: I9ce5a31c173089603316f4c3389e5f2e5dbe165a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112987 Tested-by: Jenkins Reviewed-by: Justin Luth Reviewed-by: Miklos Vajna diff --git a/sw/qa/extras/ooxmlexport/data/tdf125936_numberingSuperscript.docx b/sw/qa/extras/ooxmlexport/data/tdf125936_numberingSuperscript.docx new file mode 100644 index ..eb856fb3b02e Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf125936_numberingSuperscript.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx index a397bb073ecf..2a1784d32ac1 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx @@ -50,6 +50,12 @@ DECLARE_OOXMLEXPORT_TEST(testTdf140668, "tdf140668.docx") CPPUNIT_ASSERT_EQUAL(1, getPages()); } +DECLARE_OOXMLEXPORT_TEST(testTdf125936_numberingSuperscript, "tdf125936_numberingSuperscript.docx") +{ +// Without the fix, the first character run was superscripted. +CPPUNIT_ASSERT_EQUAL( sal_Int16(0), getProperty(getRun(getParagraph(1), 1, "A-570-108"), "CharEscapement") ); +} + DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf134619_numberingProps, "tdf134619_numberingProps.doc") { // Get the third paragraph's numbering style's 1st level's bullet size diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index f229b200d1ef..4a1481f3ea44 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -1802,7 +1802,7 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, const PropertyMapPtr& rContext ) // The spec says 0 is the same as the lack of the value, so don't parse that. if ( nIntValue ) { -if ( !IsStyleSheetImport() ) +if (!IsStyleSheetImport() && !IsNumberingImport()) m_pImpl->deferCharacterProperty( nSprmId, uno::makeAny( nIntValue )); else if (!m_pImpl->IsDocDefaultsImport()) { @@ -3666,10 +3666,11 @@ void DomainMapper::lcl_table(Id name, writerfilter::Reference::Pointer_t break; case NS_ooxml::LN_NUMBERING: { - +m_pImpl->SetNumberingImport(true); //the same for list tables ref->resolve( *m_pImpl->GetListTable() ); m_pImpl->GetListTable( )->CreateNumberingRules( ); +m_pImpl->SetNumberingImport(false); } break; case NS_ooxml::LN_THEMETABLE: @@ -4001,6 +4002,11 @@ bool DomainMapper::IsStyleSheetImport() const return m_pImpl->IsStyleSheetImport(); } +bool DomainMapper::IsNumberingImport() const +{ +return m_pImpl->IsNumberingImport(); +} + void DomainMapper::enableInteropGrabBag(const OUString& aName) { m_pImpl->m_aInteropGrabBagName = aName; diff --git a/writerfilter/source/dmapper/DomainMapper.hxx b/writerfilter/source/dmapper/DomainMapper.hxx index 46bbd2b39018..4e47dd70a441 100644 --- a/writerfilter/source/dmapper/DomainMapper.hxx +++ b/writerfilter/source/dmapper/DomainMapper.hxx @@ -114,6 +114,7 @@ public: bool IsInTable() const; void SetDocDefaultsImport(bool bSet); bool IsStyleSheetImport() const; +bool IsNumberingImport() const; bool IsInShape() const; void hasControls( const bool bSet ) { mbHasControls = bSet; } diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index ee7cf88dfbc8..7cda0e0df1dc 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -299,6 +299,7 @@ DomainMapper_Impl::DomainMapper_Impl( m_sDefaultParaStyleName(), m_bInDocDefa
[Libreoffice-commits] core.git: Branch 'feature/wasm' - configure.ac cppuhelper/source desktop/source postprocess/Rdb_services.mk solenv/bin sw/source
configure.ac |2 cppuhelper/source/paths.cxx |5 - desktop/source/lib/init.cxx |2 postprocess/Rdb_services.mk |2 solenv/bin/native-code.py | 180 ++ sw/source/uibase/app/swmodule.cxx |9 + 6 files changed, 194 insertions(+), 6 deletions(-) New commits: commit f70e2a88230047a1b315257e086a1b43a5257872 Author: Jan-Marek Glogowski AuthorDate: Thu Mar 25 09:59:51 2021 +0100 Commit: Jan-Marek Glogowski CommitDate: Thu Mar 25 09:59:51 2021 +0100 Working static Writer (use SAL_VCL_QT5_USE_CAIRO) Change-Id: Ie1aab718cbf36b43621e2be644328fdc3fa1c90b diff --git a/configure.ac b/configure.ac index fbe5fdd6c2c9..018b6b3883f5 100644 --- a/configure.ac +++ b/configure.ac @@ -5145,7 +5145,7 @@ if test "$enable_gui" = "no"; then fi USING_X11= DISABLE_GUI=TRUE -AC_DEFINE(HAVE_FEATURE_UI,0) +#AC_DEFINE(HAVE_FEATURE_UI,0) test_cairo=yes fi AC_SUBST(DISABLE_GUI) diff --git a/cppuhelper/source/paths.cxx b/cppuhelper/source/paths.cxx index 0172e4c94a16..25e006d07c96 100644 --- a/cppuhelper/source/paths.cxx +++ b/cppuhelper/source/paths.cxx @@ -20,6 +20,7 @@ #include #include +#include #include @@ -85,7 +86,9 @@ OUString cppu::getUnoIniUri() { } #endif #endif -return uri + "/" SAL_CONFIGFILE("uno"); +uri += "/" SAL_CONFIGFILE("uno"); +SAL_INFO("cppuhelper", "expected uno config: " << uri); +return uri; } bool cppu::nextDirectoryItem(osl::Directory & directory, OUString * url) { diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 5701f5965ce2..78cb33b5a51f 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -3131,7 +3131,7 @@ static void doc_paintTile(LibreOfficeKitDocument* pThis, return; } -#if defined(UNX) && !defined(MACOSX) && !defined(ENABLE_HEADLESS) +#if defined(UNX) && !defined(MACOSX) && !defined(DISABLE_GUI) // Painting of zoomed or HiDPI spreadsheets is special, we actually draw everything at 100%, // and only set cairo's (or CoreGraphic's, in the iOS case) scale factor accordingly, so that diff --git a/postprocess/Rdb_services.mk b/postprocess/Rdb_services.mk index af5d48cdde96..3025dd90c885 100644 --- a/postprocess/Rdb_services.mk +++ b/postprocess/Rdb_services.mk @@ -283,8 +283,8 @@ $(eval $(call gb_Rdb_add_components,services,\ shell/source/unix/exec/syssh \ ) \ $(if $(filter-out MACOSX WNT,$(OS)), \ - $(if $(DISABLE_GUI),, \ shell/source/backends/desktopbe/desktopbe1 \ + $(if $(DISABLE_GUI),, \ vcl/vcl.unx \ ) \ ) \ diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py index b3543edeed92..8ae4cafb7ce6 100755 --- a/solenv/bin/native-code.py +++ b/solenv/bin/native-code.py @@ -698,7 +698,187 @@ desktop_factory_list = [ ] desktop_constructor_list = [ +"com_sun_star_comp_bridge_BridgeFactory_get_implementation", +"com_sun_star_comp_bridge_BridgeFactory_get_implementation", +"com_sun_star_comp_configuration_ConfigurationProvider_get_implementation", +"com_sun_star_comp_configuration_ConfigurationRegistry_get_implementation", +"com_sun_star_comp_configuration_DefaultProvider_get_implementation", +"com_sun_star_comp_configuration_ReadOnlyAccess_get_implementation", +"com_sun_star_comp_configuration_ReadWriteAccess_get_implementation", + "com_sun_star_comp_deployment_component_PackageRegistryBackend_get_implementation", + "com_sun_star_comp_deployment_configuration_PackageRegistryBackend_get_implementation", + "com_sun_star_comp_deployment_executable_PackageRegistryBackend_get_implementation", +"com_sun_star_comp_deployment_ExtensionManager_get_implementation", "com_sun_star_comp_deployment_ExtensionManager_get_implementation", + "com_sun_star_comp_deployment_help_PackageRegistryBackend_get_implementation", +"com_sun_star_comp_deployment_PackageManagerFactory_get_implementation", +"com_sun_star_comp_deployment_PackageManagerFactory_get_implementation", +"com_sun_star_comp_deployment_ProgressLog_get_implementation", + "com_sun_star_comp_deployment_script_PackageRegistryBackend_get_implementation", + "com_sun_star_comp_deployment_sfwk_PackageRegistryBackend_get_implementation", +"com_sun_star_comp_extensions_xml_sax_ParserExpat_get_implementation", +"com_sun_star_comp_frame_SessionListener_get_implementation", +"com_sun_star_comp_framework_AddonsToolBarFactory_get_implementation", +"com_sun_star_comp_framework_Desktop_get_implementation", + "com_sun_star_comp_framework_DocumentAcceleratorConfiguration_get_implementation", +"com_sun_star_comp_framework_Frame_get_implementation", + "com_sun_star_comp_framework_GenericPopupToolbarController_get_implementation", + "com_sun_star_comp_framework_
[Libreoffice-commits] core.git: include/xmloff sw/qa xmloff/qa xmloff/source
include/xmloff/xmlimp.hxx |1 sw/qa/extras/odfexport/data/pagestyle_background_lo64.odt |binary sw/qa/extras/odfexport/data/pagestyle_background_ooo33.odt |binary sw/qa/extras/odfexport/odfexport.cxx | 163 + xmloff/qa/unit/uxmloff.cxx |3 xmloff/source/core/xmlimp.cxx | 11 xmloff/source/style/PageMasterImportContext.cxx| 78 +- 7 files changed, 249 insertions(+), 7 deletions(-) New commits: commit e9c6fd6b4d09ee59b6a86942cbf001f2ba9782e6 Author: Michael Stahl AuthorDate: Thu Mar 18 17:39:01 2021 +0100 Commit: Samuel Mehrbrodt CommitDate: Thu Mar 25 09:53:50 2021 +0100 tdf#134734 xmloff: ODF import compatibility for BackgroundFullSize This is annoyingly complex because LO 6.3 changed the way backgrounds are painted in an inconsistent way. Use the generator version to guess what the document should look like, which of course will give the wrong result if it was created before LO 6.3 and then round-tripped with LO 6.3. Since LO 7.0 at least a hard-coded draw:background-size was written. Change-Id: If9c5d2b32bfa50cbe4fb166132f7223763af850f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112770 Tested-by: Jenkins Reviewed-by: Michael Stahl diff --git a/include/xmloff/xmlimp.hxx b/include/xmloff/xmlimp.hxx index 12a81a32888f..191f6aa59422 100644 --- a/include/xmloff/xmlimp.hxx +++ b/include/xmloff/xmlimp.hxx @@ -556,6 +556,7 @@ public: /// @ATTENTION: when adding a new value more specific than "6x", grep for /// all current uses and adapt them!!! static const sal_uInt16 LO_6x = 60 | LO_flag; +static const sal_uInt16 LO_63x = 63 | LO_flag; static const sal_uInt16 LO_7x = 70 | LO_flag; static const sal_uInt16 ProductVersionUnknown = SAL_MAX_UINT16; diff --git a/sw/qa/extras/odfexport/data/pagestyle_background_lo64.odt b/sw/qa/extras/odfexport/data/pagestyle_background_lo64.odt new file mode 100644 index ..c8b3c3fdd056 Binary files /dev/null and b/sw/qa/extras/odfexport/data/pagestyle_background_lo64.odt differ diff --git a/sw/qa/extras/odfexport/data/pagestyle_background_ooo33.odt b/sw/qa/extras/odfexport/data/pagestyle_background_ooo33.odt new file mode 100644 index ..92098d0bcfc3 Binary files /dev/null and b/sw/qa/extras/odfexport/data/pagestyle_background_ooo33.odt differ diff --git a/sw/qa/extras/odfexport/odfexport.cxx b/sw/qa/extras/odfexport/odfexport.cxx index e307ea6712d3..841019b3073b 100644 --- a/sw/qa/extras/odfexport/odfexport.cxx +++ b/sw/qa/extras/odfexport/odfexport.cxx @@ -1887,6 +1887,169 @@ DECLARE_ODFEXPORT_TEST(testMasterPageWithDrawingPage, "sw_hatch.odt") CPPUNIT_ASSERT_EQUAL(sal_Int16(0), getProperty(xStyle, "FillTransparence")); } +DECLARE_ODFEXPORT_EXPORTONLY_TEST(testPageStyleBackgroundFullSizeOOo, "pagestyle_background_ooo33.odt") +{ +xmlDocUniquePtr pXmlDoc = parseExport("styles.xml"); +// Standard +assertXPath(pXmlDoc, + "/office:document-styles/office:automatic-styles/style:style[@style:family='drawing-page' and @style:name = " + "/office:document-styles/office:master-styles/style:master-page[@style:name='Standard']/attribute::draw:style-name" +"]/style:drawing-page-properties", "background-size", "border"); +assertXPath(pXmlDoc, + "/office:document-styles/office:automatic-styles/style:style[@style:family='drawing-page' and @style:name = " + "/office:document-styles/office:master-styles/style:master-page[@style:name='Standard']/attribute::draw:style-name" +"]/style:drawing-page-properties", "fill", "solid"); +assertXPath(pXmlDoc, + "/office:document-styles/office:automatic-styles/style:style[@style:family='drawing-page' and @style:name = " + "/office:document-styles/office:master-styles/style:master-page[@style:name='Standard']/attribute::draw:style-name" +"]/style:drawing-page-properties", "fill-color", "#99ccff"); +assertXPath(pXmlDoc, + "/office:document-styles/office:automatic-styles/style:style[@style:family='drawing-page' and @style:name = " + "/office:document-styles/office:master-styles/style:master-page[@style:name='Standard']/attribute::draw:style-name" +"]/style:drawing-page-properties", "opacity", "100%"); +// Endnote +assertXPath(pXmlDoc, + "/office:document-styles/office:automatic-styles/style:style[@style:family='drawing-page' and @style:name = " + "/office:document-styles/office:master-styles/style:master-page[@style:name='Endnote']/attribute::draw:style-name" +"]/style:drawing-page-properties", "background-size", "border"); +assertXPath(pXmlDoc, + "/office:document-styles/office:automatic-styles/style:style[@style:family='drawing-page' and @style:name = " + "/office:document-sty
[Libreoffice-commits] mso-dumper.git: 2 commits - Makefile msodumper/docstream.py msodumper/emfrecord.py msodumper/ole1previewrecord.py msodumper/ole1record.py ole1-dump.py ole1preview-dump.py test/do
Makefile |2 dev/null |binary msodumper/docstream.py |3 msodumper/emfrecord.py |5 - msodumper/ole1previewrecord.py | 89 msodumper/ole1record.py| 129 + ole1-dump.py | 10 +-- 7 files changed, 140 insertions(+), 98 deletions(-) New commits: commit 0cbfc5e2b9a5e84d3e164132c682eb79e2cf0a25 Author: Miklos Vajna AuthorDate: Thu Mar 25 09:42:49 2021 +0100 Commit: Miklos Vajna CommitDate: Thu Mar 25 09:49:55 2021 +0100 OLE1: show native data as well Only preview/presentation data was shown earlier. Change-Id: Ia2ff4c19b53c3d4b968235173704b334e596ca79 diff --git a/Makefile b/Makefile index fb90903..0cb047e 100644 --- a/Makefile +++ b/Makefile @@ -6,5 +6,5 @@ check: pycodestyle --ignore=E501 emf-dump.py msodumper/{emf,wmf}record.py pycodestyle --ignore=E501 vsd-dump.py msodumper/vsdstream.py test/vsd-test.py pycodestyle --ignore=E501 swlaycache-dump.py msodumper/swlaycacherecord.py - pycodestyle --ignore=E501 ole1preview-dump.py msodumper/ole1previewrecord.py + pycodestyle --ignore=E501 ole1-dump.py msodumper/ole1record.py pycodestyle --ignore=E501 ole2preview-dump.py msodumper/ole2previewrecord.py diff --git a/msodumper/ole1previewrecord.py b/msodumper/ole1previewrecord.py deleted file mode 100644 index 115ec69..000 --- a/msodumper/ole1previewrecord.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/env python3 -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -from . import globals -from .binarystream import BinaryStream - - -class Ole1PreviewStream(BinaryStream): -def __init__(self, bytes): -BinaryStream.__init__(self, bytes) - -def dump(self): -print('' % self.size) -header = StandardPresentationObject(self, "Header") -header.dump() -self.printAndSet("PresentationDataSize", self.readuInt32(), hexdump=False, offset=True) -self.printAndSet("Reserved1", self.readuInt16()) -self.printAndSet("Reserved2", self.readuInt16()) -self.printAndSet("Reserved3", self.readuInt16()) -self.printAndSet("Reserved4", self.readuInt16()) -print('' % (self.pos, int(self.PresentationDataSize) - 8)) -print('') - - -class Record(BinaryStream): -def __init__(self, parent): -BinaryStream.__init__(self, parent.bytes) -self.parent = parent -self.pos = parent.pos - - -class LengthPrefixedAnsiString(Record): -"""Specified by [MS-OLEDS] 2.1.4, specifies a length-prefixed and -null-terminated ANSI string.""" -def __init__(self, parent, name): -Record.__init__(self, parent) -self.parent = parent -self.pos = parent.pos -self.name = name - -def dump(self): -print('<%s type="LengthPrefixedAnsiString">' % self.name) -self.printAndSet("Length", self.readuInt32(), offset=True) -bytes = [] -for dummy in range(self.Length): -c = self.readuInt8() -bytes.append(c) - -self.printAndSet("String", globals.encodeName("".join(map(lambda c: chr(c), bytes[:-1])), lowOnly=True).encode('utf-8'), hexdump=False, offset=True) - -print('' % self.name) -self.parent.pos = self.pos - - -class StandardPresentationObject(Record): -def __init__(self, parent, name): -Record.__init__(self, parent) -self.name = name - -def dump(self): -print('<%s type="StandardPresentationObject">' % self.name) -header = PresentationObjectHeader(self, "Header") -header.dump() -self.printAndSet("Width", self.readuInt32()) -self.printAndSet("Height", self.readInt32() * -1) - -print('' % self.name) -self.parent.pos = self.pos - - -class PresentationObjectHeader(Record): -def __init__(self, parent, name): -Record.__init__(self, parent) -self.name = name - -def dump(self): -print('<%s type="PresentationObjectHeader">' % self.name) -self.printAndSet("OLEVersion", self.readuInt32()) -self.printAndSet("FormatID", self.readuInt32()) -LengthPrefixedAnsiString(self, "ClassName").dump() - -print('' % self.name) -self.parent.pos = self.pos - -# vim:set filetype=python shiftwidth=4 softtabstop=4 expandtab: diff --git a/msodumper/ole1record.py b/msodumper/ole1record.py new file mode 100644 index 000..c2fce14 --- /dev/null +++ b/msodumper/ole1record.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python3 +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/.
[Libreoffice-commits] core.git: cui/source cui/uiconfig offapi/com schema/odf1.3 sw/inc sw/qa sw/source xmloff/source
cui/source/inc/page.hxx |1 cui/source/tabpages/page.cxx | 16 + cui/uiconfig/ui/pageformatpage.ui | 20 ++ offapi/com/sun/star/style/PageProperties.idl |7 schema/odf1.3/OpenDocument-schema-v1.3.rng|5 sw/inc/hintids.hxx| 139 +++--- sw/qa/extras/odfexport/data/pagestyle_background_lo70.odt |binary sw/qa/extras/odfexport/odfexport.cxx | 107 ++ sw/source/core/bastyp/init.cxx|2 sw/source/core/doc/docdesc.cxx|4 sw/source/core/layout/paintfrm.cxx| 11 - sw/source/core/layout/wsfrm.cxx |1 sw/source/core/unocore/unomap1.cxx|1 sw/source/uibase/app/docst.cxx| 15 + sw/source/uibase/utlui/uitool.cxx | 27 ++ xmloff/source/style/PageMasterExportPropMapper.cxx| 61 -- xmloff/source/style/PageMasterStyleMap.cxx|3 17 files changed, 279 insertions(+), 141 deletions(-) New commits: commit 56d8007a197b095b09423c691a51515567648e80 Author: Michael Stahl AuthorDate: Tue Mar 16 20:10:18 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 09:49:33 2021 +0100 tdf#134734 tdf#141059 tdf#122508 cui,sw,xmloff: BackgroundFullSize * add BackgroundFullSize property to PageProperties * add a checkbox on the SvxPageDescPage * marshal the item via SfxGrabBagItem to avoid changing svxids.hrc * add RES_BACKGROUND_FULL_SIZE item, pool default is "true" which is appropriate for Word import filters * ODF export: remove hard-coded export in XMLPageMasterExportPropMapper::ContextFilter() * use it in SwFrame::PaintSwFrameBackground() * fix painting of bitmaps by also using the page frame area in SwFrame::GetBackgroundBrush(), which was the reason why f006b6339e20af6a3fbd60d97d21590d4ebf5021 painted things inconsistently * force repaint in lcl_DescSetAttr()/SwFrame::UpdateAttrFrame() Change-Id: I4cb64f87c01d17c051936e9b8128395fbb8b4fe5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112594 Tested-by: Jenkins Reviewed-by: Michael Stahl diff --git a/cui/source/inc/page.hxx b/cui/source/inc/page.hxx index 1a2e8fb506c4..1d92d275d3a1 100644 --- a/cui/source/inc/page.hxx +++ b/cui/source/inc/page.hxx @@ -125,6 +125,7 @@ private: std::unique_ptr m_xRegisterLB; std::unique_ptr m_xGutterPositionFT; std::unique_ptr m_xGutterPositionLB; +std::unique_ptr m_xBackgroundFullSizeCB; std::unique_ptr m_xInsideLbl; std::unique_ptr m_xOutsideLbl; std::unique_ptr m_xPrintRangeQueryText; diff --git a/cui/source/tabpages/page.cxx b/cui/source/tabpages/page.cxx index cc3cbcff0bb2..53dfe1e5cb5d 100644 --- a/cui/source/tabpages/page.cxx +++ b/cui/source/tabpages/page.cxx @@ -179,6 +179,7 @@ SvxPageDescPage::SvxPageDescPage(weld::Container* pPage, weld::DialogController* , m_xRegisterLB(m_xBuilder->weld_combo_box("comboRegisterStyle")) , m_xGutterPositionFT(m_xBuilder->weld_label("labelGutterPosition")) , m_xGutterPositionLB(m_xBuilder->weld_combo_box("comboGutterPosition")) +, m_xBackgroundFullSizeCB(m_xBuilder->weld_check_button("checkBackgroundFullSize")) // Strings stored in UI , m_xInsideLbl(m_xBuilder->weld_label("labelInner")) , m_xOutsideLbl(m_xBuilder->weld_label("labelOuter")) @@ -382,6 +383,14 @@ void SvxPageDescPage::Reset( const SfxItemSet* rSet ) // Left. m_xGutterPositionLB->set_active(0); } +it = rGrabBagItem.GetGrabBag().find("BackgroundFullSize"); +bool isBackgroundFullSize{}; +if (it != rGrabBagItem.GetGrabBag().end()) +{ +it->second >>= isBackgroundFullSize; +m_xBackgroundFullSizeCB->set_active(isBackgroundFullSize); +m_xBackgroundFullSizeCB->show(); +} } // general page data @@ -563,6 +572,7 @@ void SvxPageDescPage::Reset( const SfxItemSet* rSet ) m_xHorzBox->save_state(); m_xAdaptBox->save_state(); m_xGutterPositionLB->save_value(); +m_xBackgroundFullSizeCB->save_state(); CheckMarginEdits( true ); @@ -659,6 +669,12 @@ bool SvxPageDescPage::FillItemSet( SfxItemSet* rSet ) aGrabBagItem.GetGrabBag()["GutterAtTop"] <<= bGutterAtTop; bModified = true; } +if (m_xBackgroundFullSizeCB->get_state_changed_from_saved()) +{ +bool const isBackgroundFullSize(m_xBackgroundFullSizeCB->get_active()); +aGrabBagItem.GetGrabBag()["BackgroundFullSize"] <<= isBackgroundFullSize; +bModified = true; +} if (bModified) { diff --git a/cui/uiconfig/ui/pageformatpage.ui b/cui/uiconfi
[Libreoffice-commits] core.git: compilerplugins/clang solenv/gbuild
compilerplugins/clang/plugin.cxx |6 ++ solenv/gbuild/platform/com_GCC_defs.mk |2 +- 2 files changed, 7 insertions(+), 1 deletion(-) New commits: commit 473f2dec087288309cb169bf84c12124e1d7d7d1 Author: Michael Stahl AuthorDate: Sun Mar 14 21:34:03 2021 +0100 Commit: Michael Stahl CommitDate: Thu Mar 25 09:48:23 2021 +0100 compilerplugins: fix clang plugin allowlists for sccache-dist While icecream passes preprocessed (via -frewrite-includes) input to the compiler on stdin, sccache-dist writes it to a file at the same location as the source file in its sandbox. So we need a new heuristic to detect that the input has -frewrite-includes applied; there is not any variable that sccache sets, users could have SCCACHE_CACHE_SIZE set but only if they use the disk cache, so check CXX for now. Also set SCCACHE_EXTRAFILES to include log-areas.dox required by plugin. Change-Id: I4e00bfb0db7dab28f228fc0e85d753506e2c86b1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112480 Tested-by: Jenkins Reviewed-by: Michael Stahl diff --git a/compilerplugins/clang/plugin.cxx b/compilerplugins/clang/plugin.cxx index 753c548cf252..c68eceb67c32 100644 --- a/compilerplugins/clang/plugin.cxx +++ b/compilerplugins/clang/plugin.cxx @@ -251,6 +251,12 @@ StringRef Plugin::getFilenameOfLocation(SourceLocation spellingLocation) const } else { +char const*const pCXX = getenv("CXX"); +if (pCXX && strstr(pCXX, "sccache")) +{ // heuristic; sccache passes file with -frewrite-directives by name +s_Mode = STDIN; +return getFilenameOfLocation(spellingLocation); +} auto const fn(compiler.getSourceManager().getFilename(spellingLocation)); if (!fn.data()) // wtf? happens in sot/source/sdstor/stg.cxx { diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk index 876d57ab6fa2..e07bd2824ff5 100644 --- a/solenv/gbuild/platform/com_GCC_defs.mk +++ b/solenv/gbuild/platform/com_GCC_defs.mk @@ -254,7 +254,7 @@ gb_COMPILER_PLUGINS += -Xclang -plugin-arg-loplugin -Xclang --debug endif # set CCACHE_CPP2=1 to prevent clang generating spurious warnings gb_COMPILER_SETUP += CCACHE_CPP2=1 -gb_COMPILER_PLUGINS_SETUP := ICECC_EXTRAFILES=$(SRCDIR)/include/sal/log-areas.dox CCACHE_EXTRAFILES=$(SRCDIR)/include/sal/log-areas.dox +gb_COMPILER_PLUGINS_SETUP := ICECC_EXTRAFILES=$(SRCDIR)/include/sal/log-areas.dox CCACHE_EXTRAFILES=$(SRCDIR)/include/sal/log-areas.dox SCCACHE_EXTRAFILES=$(SRCDIR)/include/sal/log-areas.dox gb_COMPILER_PLUGINS_WARNINGS_AS_ERRORS := \ -Xclang -plugin-arg-loplugin -Xclang --warnings-as-errors else ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] libcdr.git: src/lib
src/lib/CDRParser.cpp | 133 +++--- 1 file changed, 72 insertions(+), 61 deletions(-) New commits: commit dc41748757362fb3166c2ad4f6a838921ccdb64c Author: Fridrich Štrba AuthorDate: Thu Mar 25 09:48:38 2021 +0100 Commit: Fridrich Štrba CommitDate: Thu Mar 25 09:48:38 2021 +0100 Some advance in txsm5 Change-Id: I52e03639bd8357cae4d1ad382089ddbf73512c7e diff --git a/src/lib/CDRParser.cpp b/src/lib/CDRParser.cpp index 5ddced8..4ea95e0 100644 --- a/src/lib/CDRParser.cpp +++ b/src/lib/CDRParser.cpp @@ -2840,76 +2840,87 @@ void libcdr::CDRParser::readTxsm6(librevenge::RVNGInputStream *input) void libcdr::CDRParser::readTxsm5(librevenge::RVNGInputStream *input) { - input->seek(4, librevenge::RVNG_SEEK_CUR); - unsigned textId = readU16(input); - input->seek(4, librevenge::RVNG_SEEK_CUR); - unsigned stlId = readU16(input); - unsigned numSt = readU16(input); - unsigned i = 0; - std::map styles; - for (; i= 34; ++i) + input->seek(2, librevenge::RVNG_SEEK_CUR); + unsigned numFrames = readU16(input); + unsigned textId = 0; + for (unsigned j=0; jseek(2, librevenge::RVNG_SEEK_CUR); + } + unsigned numPara = readU16(input); + for (unsigned j=0; jseek(1, librevenge::RVNG_SEEK_CUR); -if (flag&0x01) +input->seek(2, librevenge::RVNG_SEEK_CUR); +unsigned numSt = readU16(input); +std::map styles; +for (unsigned i= 0; i= 34 */; ++i) { - unsigned short fontId = readU8(input); - std::map::const_iterator iterFont = m_fonts.find(fontId); - if (iterFont != m_fonts.end()) + CDRStyle style; + unsigned char flag = readU8(input); + input->seek(1, librevenge::RVNG_SEEK_CUR); + if (flag&0x01) { -style.m_fontName = iterFont->second.m_name; -style.m_charSet = iterFont->second.m_encoding; +unsigned short fontId = readU8(input); +std::map::const_iterator iterFont = m_fonts.find(fontId); +if (iterFont != m_fonts.end()) +{ + style.m_fontName = iterFont->second.m_name; + style.m_charSet = iterFont->second.m_encoding; +} +unsigned short charSet = readU8(input); +if (charSet) + style.m_charSet = charSet; } - unsigned short charSet = readU8(input); - if (charSet) -style.m_charSet = charSet; -} -else - input->seek(2, librevenge::RVNG_SEEK_CUR); -input->seek(6, librevenge::RVNG_SEEK_CUR); -if (flag&0x04) - style.m_fontSize = readCoordinate(input); -else + else +input->seek(2, librevenge::RVNG_SEEK_CUR); + input->seek(6, librevenge::RVNG_SEEK_CUR); + if (flag&0x04) +style.m_fontSize = readCoordinate(input); + else +input->seek(2, librevenge::RVNG_SEEK_CUR); input->seek(2, librevenge::RVNG_SEEK_CUR); -input->seek(2, librevenge::RVNG_SEEK_CUR); -if (flag&0x10) + if (flag&0x10) + { +unsigned fillId = readU32(input); +std::map::const_iterator iter = m_fillStyles.find(fillId); +if (iter != m_fillStyles.end()) + style.m_fillStyle = iter->second; + } + else +input->seek(4, librevenge::RVNG_SEEK_CUR); + if (flag&0x20) + { +unsigned outlId = readU32(input); +std::map::const_iterator iter = m_lineStyles.find(outlId); +if (iter != m_lineStyles.end()) + style.m_lineStyle = iter->second; + } + else +input->seek(4, librevenge::RVNG_SEEK_CUR); + input->seek(14, librevenge::RVNG_SEEK_CUR); + styles[2*i] = style; +} +unsigned numChars = readU16(input); +if (numChars > getRemainingLength(input) / 8) + numChars = getRemainingLength(input) / 8; +std::vector textData; +std::vector charDescriptions; +textData.reserve(numChars); +charDescriptions.reserve(numChars); +for (unsigned i=0; i::const_iterator iter = m_fillStyles.find(fillId); - if (iter != m_fillStyles.end()) -style.m_fillStyle = iter->second; -} -else input->seek(4, librevenge::RVNG_SEEK_CUR); -if (flag&0x20) -{ - unsigned outlId = readU32(input); - std::map::const_iterator iter = m_lineStyles.find(outlId); - if (iter != m_lineStyles.end()) -style.m_lineStyle = iter->second; + textData.push_back(readU8(input)); + input->seek(1, librevenge::RVNG_SEEK_CUR); + charDescriptions.push_back((readU16(input) >> 3) & 0xff); } -else - input->seek(4, librevenge::RVNG_SEEK_CUR); -input->seek(14, librevenge::RVNG_SEEK_CUR); -styles[2*i] = style; - } - unsigned numChars = readU16(input); - if (numChars > getRemainingLength(input) / 8) -numChars = getRemainingLength(input) / 8; - std::vector textData; - std::vector charDescriptions; - textData.reserve(numChars); - charDescriptions.reserve(numChars); - for (i=0; iseek(4, librevenge::RVNG_SEEK_CUR); -textData.push_back(readU8(input)); -
[Libreoffice-commits] core.git: include/sfx2 sfx2/source
include/sfx2/dockwin.hxx |2 +- sfx2/source/dialog/dockwin.cxx |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) New commits: commit ed3a13ac9837b52e899bd82ccae1244988e99f47 Author: Caolán McNamara AuthorDate: Wed Mar 24 20:36:08 2021 + Commit: Caolán McNamara CommitDate: Thu Mar 25 09:43:26 2021 +0100 use weld::Box so we can reorder contents Change-Id: Ie0c7351883d6aed37f64edf738e9411f4c31832d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113070 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/include/sfx2/dockwin.hxx b/include/sfx2/dockwin.hxx index a7c87c408958..6a996db64873 100644 --- a/include/sfx2/dockwin.hxx +++ b/include/sfx2/dockwin.hxx @@ -41,7 +41,7 @@ class SFX2_DLLPUBLIC SfxDockingWindow : public ResizableDockingWindow { protected: std::unique_ptr m_xBuilder; -std::unique_ptr m_xContainer; +std::unique_ptr m_xContainer; private: tools::Rectangle aInnerRect; diff --git a/sfx2/source/dialog/dockwin.cxx b/sfx2/source/dialog/dockwin.cxx index d824cbfe4be7..8198d5e837cf 100644 --- a/sfx2/source/dialog/dockwin.cxx +++ b/sfx2/source/dialog/dockwin.cxx @@ -771,7 +771,7 @@ SfxDockingWindow::SfxDockingWindow( SfxBindings *pBindinx, SfxChildWindow *pCW, , pMgr(pCW) { m_xBuilder.reset(Application::CreateInterimBuilder(m_xBox, rUIXMLDescription, true)); -m_xContainer = m_xBuilder->weld_container(rID); +m_xContainer = m_xBuilder->weld_box(rID); pImpl.reset(new SfxDockingWindow_Impl(this)); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: include/tools sc/inc sc/qa sc/source tools/qa tools/source
include/tools/date.hxx |5 + sc/inc/global.hxx |1 + sc/qa/unit/ucalc.cxx| 16 sc/source/core/data/table4.cxx | 23 +++ tools/qa/cppunit/test_date.cxx | 25 + tools/source/datetime/tdate.cxx | 11 +++ 6 files changed, 77 insertions(+), 4 deletions(-) New commits: commit ea61644abe9e7cd35cdb54452dac327782bbc402 Author: Andreas Heinisch AuthorDate: Tue Mar 23 10:54:14 2021 +0100 Commit: Andreas Heinisch CommitDate: Thu Mar 25 09:42:40 2021 +0100 tdf#58745 - Detect end of month when extending a date list Change-Id: Icaa64a493598dc4bb8f2d6d076ad4300e2e4dde6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112976 Tested-by: Jenkins Reviewed-by: Andreas Heinisch diff --git a/include/tools/date.hxx b/include/tools/date.hxx index cd69d16b10b6..6179d637e8ba 100644 --- a/include/tools/date.hxx +++ b/include/tools/date.hxx @@ -188,6 +188,9 @@ public: depending on month/year) */ boolIsValidDate() const; +// Returns true, if the date is the end of the month, false otherwise. +boolIsEndOfMonth() const; + /** Normalize date, invalid day or month values are adapted such that they carry over to the next month or/and year, for example 1999-02-32 becomes 1999-03-04, 1999-13-01 becomes 2000-01-01, 1999-13-42 becomes @@ -239,6 +242,8 @@ public: static sal_Int32 DateToDays( sal_uInt16 nDay, sal_uInt16 nMonth, sal_Int16 nYear ); /// Semantically identical to IsValidDate() member method. static bool IsValidDate( sal_uInt16 nDay, sal_uInt16 nMonth, sal_Int16 nYear ); +/// Semantically identical to IsEndOfMonth() member method. +static bool IsEndOfMonth(sal_uInt16 nDay, sal_uInt16 nMonth, sal_Int16 nYear); /// Semantically identical to Normalize() member method. static bool Normalize( sal_uInt16 & rDay, sal_uInt16 & rMonth, sal_Int16 & rYear ); diff --git a/sc/inc/global.hxx b/sc/inc/global.hxx index 3a1429acb0bc..50041b37b323 100644 --- a/sc/inc/global.hxx +++ b/sc/inc/global.hxx @@ -344,6 +344,7 @@ enum FillDateCmd FILL_DAY, FILL_WEEKDAY, FILL_MONTH, +FILL_END_OF_MONTH, FILL_YEAR }; diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx index ec599ad7a42d..ec424f97f1d9 100644 --- a/sc/qa/unit/ucalc.cxx +++ b/sc/qa/unit/ucalc.cxx @@ -4962,6 +4962,22 @@ void Test::testAutoFill() CPPUNIT_ASSERT_EQUAL( OUString("2012-10-31"), m_pDoc->GetString( 0, 103, 0 ) ); CPPUNIT_ASSERT_EQUAL( OUString("2012-10-31"), m_pDoc->GetString( 0, 104, 0 ) ); +// Clear column A for a new test. +clearRange(m_pDoc, ScRange(0, 0, 0, 0, MAXROW, 0)); +m_pDoc->SetRowHidden(0, MAXROW, 0, false); // Show all rows. + +m_pDoc->SetString(0, 100, 0, "2019-10-31"); +m_pDoc->SetString(0, 101, 0, "2019-11-30"); +m_pDoc->SetString(0, 102, 0, "2019-12-31"); +m_pDoc->Fill(0, 100, 0, 102, nullptr, aMarkData, 3, FILL_TO_BOTTOM, FILL_AUTO); + +// tdf#58745, Without the fix in place, this test would have failed with +// - Expected: 2020-01-31 +// - Actual : 2019-01-11 +CPPUNIT_ASSERT_EQUAL(OUString("2020-01-31"), m_pDoc->GetString(0, 103, 0)); +CPPUNIT_ASSERT_EQUAL(OUString("2020-02-29"), m_pDoc->GetString(0, 104, 0)); +CPPUNIT_ASSERT_EQUAL(OUString("2020-03-31"), m_pDoc->GetString(0, 105, 0)); + // Clear column A for a new test. clearRange(m_pDoc, ScRange(0,0,0,0,MAXROW,0)); m_pDoc->SetRowHidden(0, MAXROW, 0, false); // Show all rows. diff --git a/sc/source/core/data/table4.cxx b/sc/source/core/data/table4.cxx index 02e6c1c31d83..e6c29a5a00e7 100644 --- a/sc/source/core/data/table4.cxx +++ b/sc/source/core/data/table4.cxx @@ -535,7 +535,12 @@ void ScTable::FillAnalyse( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2, tools::Long nDDiff = aDate2.GetDay() - static_cast(aDate1.GetDay()); tools::Long nMDiff = aDate2.GetMonth() - static_cast(aDate1.GetMonth()); tools::Long nYDiff = aDate2.GetYear() - static_cast(aDate1.GetYear()); -if ( nDDiff ) +if (nMDiff && aDate1.IsEndOfMonth() && aDate2.IsEndOfMonth()) +{ +eType = FILL_END_OF_MONTH; +nCmpInc = nMDiff + 12 * nYDiff; +} +else if (nDDiff) { eType = FILL_DAY; nCmpInc = aDate2 - aDate1; @@ -566,7 +571,8 @@ void ScTable::FillAnalyse( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2, nDDiff = aDate2.GetDay() - static_cast(aDate1.GetDay()); nMDiff = aDate2.GetMonth() - static_cast(aDate1.GetMonth()); nYDiff = aDate2.GetYear() - stat
[Libreoffice-commits] core.git: download.lst external/pdfium
download.lst |4 ++-- external/pdfium/Library_pdfium.mk |4 ++-- external/pdfium/inc/pch/precompiled_pdfium.hxx |5 +++-- external/pdfium/ubsan.patch|6 +++--- 4 files changed, 10 insertions(+), 9 deletions(-) New commits: commit d56414fddd0796e63d2d3ae63260de7c6952dc70 Author: Miklos Vajna AuthorDate: Wed Mar 24 21:00:50 2021 +0100 Commit: Miklos Vajna CommitDate: Thu Mar 25 09:01:45 2021 +0100 external: update pdfium to 4450 Change-Id: I93b9a32a82098a7b45e899ef29349c48276aa724 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113067 Tested-by: Jenkins Reviewed-by: Miklos Vajna diff --git a/download.lst b/download.lst index b433fb9b4848..fcb5e165473c 100644 --- a/download.lst +++ b/download.lst @@ -210,8 +210,8 @@ export ORCUS_SHA256SUM := c700d1325f744104d9fca0d5a019434901e9d51a16eedfb05792f9 export ORCUS_TARBALL := liborcus-0.16.1.tar.bz2 export PAGEMAKER_SHA256SUM := 66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d export PAGEMAKER_TARBALL := libpagemaker-0.0.4.tar.xz -export PDFIUM_SHA256SUM := 7676aba84cb064e5e6f3a5173284087372761d1f704b0626570fce0445de520e -export PDFIUM_TARBALL := pdfium-4380.tar.bz2 +export PDFIUM_SHA256SUM := c95d11cf9d05fbf49831b7436d93191f85e3daba2b2b061a7f1327856fc4908f +export PDFIUM_TARBALL := pdfium-4450.tar.bz2 export PIXMAN_SHA256SUM := 21b6b249b51c6800dc9553b65106e1e37d0e25df942c90531d4c3997aa20a88e export PIXMAN_TARBALL := e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz export LIBPNG_SHA256SUM := 505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca diff --git a/external/pdfium/Library_pdfium.mk b/external/pdfium/Library_pdfium.mk index 0e6b110f9a0e..1a0d6c814122 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -387,7 +387,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/css/cfx_csscustomproperty \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssdeclaration \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssenumvalue \ -UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssexttextbuf \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssnumbervalue \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_csspropertyholder \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssrulecollection \ @@ -397,10 +396,11 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssstyleselector \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssstylesheet \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_csssyntaxparser \ -UnpackedTarball/pdfium/core/fxcrt/css/cfx_csstextbuf \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssvalue \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssvaluelist \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssvaluelistparser \ +UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssinputtextbuf \ +UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssoutputtextbuf \ UnpackedTarball/pdfium/core/fxcrt/cfx_datetime \ UnpackedTarball/pdfium/core/fxcrt/bytestring \ UnpackedTarball/pdfium/core/fxcrt/cfx_binarybuf \ diff --git a/external/pdfium/inc/pch/precompiled_pdfium.hxx b/external/pdfium/inc/pch/precompiled_pdfium.hxx index cc82c4555e3a..772d3e6590d4 100644 --- a/external/pdfium/inc/pch/precompiled_pdfium.hxx +++ b/external/pdfium/inc/pch/precompiled_pdfium.hxx @@ -20,6 +20,7 @@ ./bin/update_pch_bisect ./external/pdfium/inc/pch/precompiled_pdfium.hxx "make external/pdfium.build" --find-conflicts */ +#include #if PCH_LEVEL >= 1 #include #include @@ -288,8 +289,9 @@ #include #include #include -#include +#include #include +#include #include #include #include @@ -298,7 +300,6 @@ #include #include #include -#include #include #include #include diff --git a/external/pdfium/ubsan.patch b/external/pdfium/ubsan.patch index 8610e24f2828..cd48b3ee4803 100644 --- a/external/pdfium/ubsan.patch +++ b/external/pdfium/ubsan.patch @@ -1,8 +1,8 @@ --- core/fxcrt/string_data_template.cpp +++ core/fxcrt/string_data_template.cpp -@@ -82,7 +82,8 @@ void StringDataTemplate::CopyContentsAt(size_t offset, - ASSERT(nLen >= 0); - ASSERT(offset + nLen <= m_nAllocLength); +@@ -83,7 +83,8 @@ void StringDataTemplate::CopyContentsAt(size_t offset, + DCHECK(nLen >= 0); + DCHECK(offset + nLen <= m_nAllocLength); - memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); + if (nLen != 0) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/vector/vector-7.0' - dtrans/source
dtrans/source/win32/dtobj/DOTransferable.cxx |4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) New commits: commit 2bf5a0a2184343f2f5f48e3dd071fd696430123a Author: Mike Kaganski AuthorDate: Wed Mar 24 11:29:22 2021 +0300 Commit: Miklos Vajna CommitDate: Thu Mar 25 09:06:55 2021 +0100 Also retry when calling IDataObject::EnumFormatEtc This is a workaround for the problem that was properly resolved in master in commit 7b6c0e63e64eb2ad1e83bd744a0d20f78c7a6b84. Backporting that would depend on other commits with unclear stability, so just use the same approach as in cf1c835e8016f8f1eefea6d625a913c0ac343a63, and make sure the clipboard access for enumeration succeeds. Change-Id: I69e68f2f9b9b3253b28e738bc36ddce8c28c58ef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113017 Tested-by: Mike Kaganski Reviewed-by: Mike Kaganski Reviewed-by: Miklos Vajna diff --git a/dtrans/source/win32/dtobj/DOTransferable.cxx b/dtrans/source/win32/dtobj/DOTransferable.cxx index 8f27e7124e0a..b244d03310f8 100644 --- a/dtrans/source/win32/dtobj/DOTransferable.cxx +++ b/dtrans/source/win32/dtobj/DOTransferable.cxx @@ -21,6 +21,7 @@ #include #include #include +#include #include "DOTransferable.hxx" #include "../misc/ImplHelper.hxx" @@ -313,7 +314,8 @@ sal_Bool SAL_CALL CDOTransferable::isDataFlavorSupported( const DataFlavor& aFla void CDOTransferable::initFlavorList( ) { sal::systools::COMReference pEnumFormatEtc; -HRESULT hr = m_rDataObject->EnumFormatEtc( DATADIR_GET, &pEnumFormatEtc ); +HRESULT hr = sal::systools::RetryIfFailed( +10, 100, [&]() { return m_rDataObject->EnumFormatEtc(DATADIR_GET, &pEnumFormatEtc); }); if ( SUCCEEDED( hr ) ) { pEnumFormatEtc->Reset( ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: configure.ac ios/CustomTarget_iOS_setup.mk lingucomponent/Module_lingucomponent.mk lingucomponent/source postprocess/Rdb_services.mk Repository.mk solenv/bin
Repository.mk |2 +- configure.ac|4 +--- ios/CustomTarget_iOS_setup.mk | 16 ++-- lingucomponent/Module_lingucomponent.mk |2 +- lingucomponent/source/lingutil/lingutil.cxx |5 + postprocess/Rdb_services.mk |4 +--- solenv/bin/native-code.py |2 +- 7 files changed, 20 insertions(+), 15 deletions(-) New commits: commit 89af24074e9adac4d005dcc322d81db09fc19f54 Author: Tor Lillqvist AuthorDate: Wed Mar 24 18:58:58 2021 +0200 Commit: Tor Lillqvist CommitDate: Thu Mar 25 09:06:39 2021 +0100 tdf#124173: Enable thesauruses in the iOS app Build our lnth library and the external mythes library. Install thesauruses for the app's Xcode project to pick up and include in the app bundle. Look for them in the place where they will end up. To get thesauruses you need to configure with --with-myspell-dicts. Change-Id: I2d850ca3c821c5c764cb061340a265440d04e41b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113066 Tested-by: Jenkins CollaboraOffice Reviewed-by: Tor Lillqvist Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113073 Tested-by: Tor Lillqvist diff --git a/Repository.mk b/Repository.mk index ab7daa3ef333..cafa89924a86 100644 --- a/Repository.mk +++ b/Repository.mk @@ -377,7 +377,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ localebe1 \ log \ lng \ - $(if $(filter-out iOS,$(OS)),lnth) \ + lnth \ $(if $(filter $(OS),MACOSX),macbe1) \ $(if $(MERGELIBS),merged) \ migrationoo2 \ diff --git a/configure.ac b/configure.ac index 9a96e56ab8e1..7900e9051f92 100644 --- a/configure.ac +++ b/configure.ac @@ -10911,9 +10911,7 @@ dnl === dnl Checking for mythes dnl === AC_MSG_CHECKING([which mythes to use]) -if test "$_os" = iOS; then - AC_MSG_RESULT([none]) -elif test "$with_system_mythes" = "yes"; then +if test "$with_system_mythes" = "yes"; then AC_MSG_RESULT([external]) SYSTEM_MYTHES=TRUE AC_LANG_PUSH([C++]) diff --git a/ios/CustomTarget_iOS_setup.mk b/ios/CustomTarget_iOS_setup.mk index 95cf79abfe3f..8a082bcd5273 100644 --- a/ios/CustomTarget_iOS_setup.mk +++ b/ios/CustomTarget_iOS_setup.mk @@ -76,13 +76,17 @@ $(IOSGEN)/native-code.h: $(BUILDDIR)/config_host.mk \ mkdir -p $(IOSRES)/share/fonts cp -R $(INSTDIR)/share/fonts/truetype $(IOSRES)/share/fonts cp -R $(INSTDIR)/share/gallery $(IOSRES)/share - mkdir -p $(IOSRES)/share/spell - # Install the Swiss German dictionary and use it for Liechtenstein, too + mkdir -p $(IOSRES)/share/spell $(IOSRES)/share/thes + # Install the Swiss German dictionary and use it for Liechtenstein, too. + # Install also thesauruses. if test -d $(INSTDIR)/share/extensions/dict-de; then \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_CH.aff; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_CH.dic; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_LI.aff; \ - cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_LI.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/thes/de_CH.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/thes/de_CH.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/thes/de_LI.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/thes/de_LI.dic; \ + cp $(INSTDIR)/share/extensions/*/th_*_v2.* $(IOSRES)/share/thes; \ + cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.dat $(IOSRES)/share/thes/th_en_GB_v2.dat; \ + cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.idx $(IOSRES)/share/thes/th_en_GB_v2.idx; \ fi cp -R $(INSTDIR)/share/palette $(IOSRES)/share cp -R $(INSTDIR)/share/fingerprint $(IOSRES)/share diff --git a/lingucomponent/Module_lingucomponent.mk b/lingucomponent/Module_lingucomponent.mk index 3f8bcb026fa2..2bde5d5391e5 100644 --- a/lingucomponent/Module_lingucomponent.mk +++ b/lingucomponent/Module_lingucomponent.mk @@ -13,7 +13,7 @@ $(eval $(call gb_Module_Module,lingucomponent)) $(eval $(call gb_Module_add_targets,lingucomponent,\ Library_guesslang \ Library_hyphen \ - $(if $(filter-out iOS,$(OS)),Library_lnth) \ + Library_lnth \ $(if $(filter iOS MACOSX,$(OS)),Library_MacOSXSpell) \ Library_spell \ StaticLibrary_ulingu \ diff --git a/lingucomponent/source/
[Libreoffice-commits] core.git: vcl/ios
vcl/ios/DataFlavorMapping.cxx | 31 +++ 1 file changed, 15 insertions(+), 16 deletions(-) New commits: commit 41041d83de337e2ad6ebcb3a6c91b70b350c8b29 Author: Tor Lillqvist AuthorDate: Wed Mar 24 16:09:05 2021 +0200 Commit: Tor Lillqvist CommitDate: Thu Mar 25 09:04:32 2021 +0100 tdf#141217: Improve plain text pasting on iOS Handle public.utf8-plain-text. That is the actual concrete UTI for UTF-8 text. For instance if you copy text from the Safari address bar, public.utf8-plain-text is the only type put on the pasteboard. Previously we were not able to paste than into the iOS app at all. Change-Id: Idbdd3870431f3b9a312cc9b672ffe1f16d13edbd Signed-off-by: Tor Lillqvist Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113042 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113045 diff --git a/vcl/ios/DataFlavorMapping.cxx b/vcl/ios/DataFlavorMapping.cxx index e64b6b867fe9..6a3815cf7eb3 100644 --- a/vcl/ios/DataFlavorMapping.cxx +++ b/vcl/ios/DataFlavorMapping.cxx @@ -74,9 +74,7 @@ NSString* OUStringToNSString(const OUString& ustring) return [NSString stringWithCString:utf8Str.getStr() encoding:NSUTF8StringEncoding]; } -NSString* PBTYPE_PLAINTEXT = (__bridge NSString*)kUTTypePlainText; -// Nope. See commented-out use below. -// NSString* PBTYPE_UTF8PLAINTEXT = (__bridge NSString*)kUTTypeUTF8PlainText; +NSString* PBTYPE_UTF8PLAINTEXT = (__bridge NSString*)kUTTypeUTF8PlainText; NSString* PBTYPE_RTF = (__bridge NSString*)kUTTypeRTF; NSString* PBTYPE_PNG = (__bridge NSString*)kUTTypePNG; NSString* PBTYPE_JPEG = (__bridge NSString*)kUTTypeJPEG; @@ -118,9 +116,7 @@ struct FlavorMap // lcl_TestFormat() in sc/source/ui/view/cellsh.cxx. static const FlavorMap flavorMap[] -= { { PBTYPE_PLAINTEXT, "text/plain;charset=utf-16", "Unicode Text (UTF-16)", true }, -// Nope. The LO code does not understand text/plain in UTF-8. Which is a shame. -// PBTYPE_UTF8PLAINTEXT, "text/plain;charset=utf-8", "Unicode Text (UTF-8)", false }, += { { PBTYPE_UTF8PLAINTEXT, "text/plain;charset=utf-16", "Unicode Text (UTF-16)", true }, { PBTYPE_RTF, "text/rtf", "Rich Text Format", false }, { PBTYPE_PNG, "image/png", "Portable Network Graphics", false }, { PBTYPE_JPEG, "image/jpeg", "JPEG", false }, @@ -183,27 +179,27 @@ DataProviderBaseImpl::~DataProviderBaseImpl() } } -class UniDataProvider : public DataProviderBaseImpl +class Utf8DataProvider : public DataProviderBaseImpl { public: -UniDataProvider(const Any& data); -UniDataProvider(NSData* data); +Utf8DataProvider(const Any& data); +Utf8DataProvider(NSData* data); NSData* getSystemData() override; Any getOOoData() override; }; -UniDataProvider::UniDataProvider(const Any& data) +Utf8DataProvider::Utf8DataProvider(const Any& data) : DataProviderBaseImpl(data) { } -UniDataProvider::UniDataProvider(NSData* data) +Utf8DataProvider::Utf8DataProvider(NSData* data) : DataProviderBaseImpl(data) { } -NSData* UniDataProvider::getSystemData() +NSData* Utf8DataProvider::getSystemData() { OUString ustr; mData >>= ustr; @@ -214,7 +210,7 @@ NSData* UniDataProvider::getSystemData() return [NSData dataWithBytes:strUtf8.getStr() length:strUtf8.getLength()]; } -Any UniDataProvider::getOOoData() +Any Utf8DataProvider::getOOoData() { Any oOOData; @@ -464,7 +460,7 @@ DataFlavorMapper::getDataProvider(const NSString* systemFlavor, else // Must be OUString type { SAL_WARN_IF(!isOUStringType(data.getValueType()), "vcl", "must be OUString type"); -dp = DataProviderPtr_t(new UniDataProvider(data)); +dp = DataProviderPtr_t(new Utf8DataProvider(data)); } } catch (const UnsupportedFlavorException& e) @@ -483,9 +479,12 @@ DataProviderPtr_t DataFlavorMapper::getDataProvider(const NSString* systemFlavor { DataProviderPtr_t dp; -if ([systemFlavor caseInsensitiveCompare:PBTYPE_PLAINTEXT] == NSOrderedSame) +if (systemData == nil) +return dp; + +if ([systemFlavor caseInsensitiveCompare:PBTYPE_UTF8PLAINTEXT] == NSOrderedSame) { -dp = DataProviderPtr_t(new UniDataProvider(systemData)); +dp = DataProviderPtr_t(new Utf8DataProvider(systemData)); } else if ([systemFlavor caseInsensitiveCompare:PBTYPE_HTML] == NSOrderedSame) { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa
sw/qa/extras/odfimport/data/tdf128737.odt |binary sw/qa/extras/odfimport/odfimport.cxx |7 +++ 2 files changed, 7 insertions(+) New commits: commit 12600d50077f955fe22a5df457759c5dc16635db Author: Xisco Fauli AuthorDate: Wed Mar 24 16:46:33 2021 +0100 Commit: Xisco Fauli CommitDate: Thu Mar 25 08:53:53 2021 +0100 tdf#128737: sw_odfimport: Add unittest Change-Id: Iaf6f83ae7ca3691682a849830f208218195088e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113062 Tested-by: Jenkins Reviewed-by: Xisco Fauli diff --git a/sw/qa/extras/odfimport/data/tdf128737.odt b/sw/qa/extras/odfimport/data/tdf128737.odt new file mode 100644 index ..85f2c32c603e Binary files /dev/null and b/sw/qa/extras/odfimport/data/tdf128737.odt differ diff --git a/sw/qa/extras/odfimport/odfimport.cxx b/sw/qa/extras/odfimport/odfimport.cxx index f6e657721f1c..33018abf1a4c 100644 --- a/sw/qa/extras/odfimport/odfimport.cxx +++ b/sw/qa/extras/odfimport/odfimport.cxx @@ -560,6 +560,13 @@ DECLARE_ODFIMPORT_TEST(testFdo56272, "fdo56272.odt") CPPUNIT_ASSERT_EQUAL(sal_Int32(422), xShape->getPosition().Y); // Was -2371 } +DECLARE_ODFIMPORT_TEST(testTdf128737, "tdf128737.odt") +{ +// Without the fix in place, this test would have crashed +CPPUNIT_ASSERT_EQUAL(4, getPages()); +CPPUNIT_ASSERT_EQUAL(8, getShapes()); +} + DECLARE_ODFIMPORT_TEST(testCalcFootnoteContent, "ooo32780-1.odt") { //this was a CalcFootnoteContent crash ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: ESC meeting agenda: 2021-03-25 16:00 Berlin time - renaming - a serious tongue-in-cheek proposal
On 24/03/2021 23:53, Thorsten Behrens wrote: antlists wrote: For those who get the Rossini, my favourite would be "gatti" (or whatever the singular form is). I like where this is going. :) Since I was outed as a German already in this discussion, how about something as violently efficient as '__aa' - to make sure the most important branch always comes out top? Miiiouww! Trouble is, __aa is six keystrokes on my keyboard, while gatti is five. Cheers, Wol ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice