compilerplugins/clang/unusedenumconstants.writeonly.results | 2 desktop/source/lib/init.cxx | 4 include/svx/svdmodel.hxx | 4 include/xmloff/odffields.hxx | 1 offapi/com/sun/star/text/ContentControl.idl | 6 officecfg/registry/data/org/openoffice/Office/UI.xcu | 2 officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu | 5 oox/source/token/tokens.txt | 1 readlicense_oo/license/CREDITS.fodt | 4646 +++++----- sc/inc/scmatrix.hxx | 5 sc/source/core/tool/compiler.cxx | 225 sc/source/core/tool/interpr5.cxx | 109 sc/source/core/tool/scmatrix.cxx | 231 sc/source/ui/docshell/docsh.cxx | 2 sc/source/ui/view/viewdata.cxx | 2 sd/source/ui/docshell/docshel4.cxx | 1 sfx2/source/control/unoctitm.cxx | 1 svtools/source/control/ctrlbox.cxx | 4 svx/qa/unit/data/tdf148000_EOLinCurvedText.pptx |binary svx/qa/unit/data/tdf148000_EOLinCurvedText_Legacy.odp |binary svx/qa/unit/data/tdf148000_EOLinCurvedText_New.odp |binary svx/qa/unit/svdraw.cxx | 42 svx/source/customshapes/EnhancedCustomShapeFontWork.cxx | 57 svx/source/svdraw/svdmodel.cxx | 42 sw/Library_swui.mk | 1 sw/UIConfig_swriter.mk | 1 sw/inc/cmdid.h | 1 sw/inc/fldbas.hxx | 1 sw/inc/formatcontentcontrol.hxx | 7 sw/inc/strings.hrc | 2 sw/inc/swabstdlg.hxx | 11 sw/inc/swundo.hxx | 1 sw/inc/unoprnms.hxx | 1 sw/qa/core/data/docm/testModernVBADelete.docm |binary sw/qa/core/macros-test.cxx | 26 sw/qa/core/text/text.cxx | 28 sw/qa/extras/accessibility/basics.cxx | 6 sw/qa/extras/mailmerge/mailmerge2.cxx | 3 sw/qa/extras/ooxmlexport/data/tdf125338.docm |binary sw/qa/extras/ooxmlexport/data/tdf151548_activeContentDemo.docm |binary sw/qa/extras/ooxmlexport/data/tdf152636_lostPageBreak2.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport17.cxx | 2 sw/qa/extras/ooxmlexport/ooxmlexport18.cxx | 7 sw/qa/extras/ooxmlexport/ooxmlexport8.cxx | 12 sw/qa/extras/ooxmlexport/ooxmlexport9.cxx | 10 sw/qa/extras/ww8export/data/tdf151548_formFieldMacros.doc |binary sw/qa/extras/ww8export/ww8export4.cxx | 13 sw/qa/uibase/fldui/fldui.cxx | 28 sw/qa/uibase/shells/shells.cxx | 85 sw/qa/uibase/uno/uno.cxx | 29 sw/sdi/_textsh.sdi | 7 sw/sdi/swriter.sdi | 22 sw/source/core/access/accpara.cxx | 19 sw/source/core/crsr/crsrsh.cxx | 2 sw/source/core/docnode/nodes.cxx | 2 sw/source/core/fields/fldbas.cxx | 31 sw/source/core/txtnode/attrcontentcontrol.cxx | 8 sw/source/core/undo/undobj.cxx | 3 sw/source/core/unocore/unocontentcontrol.cxx | 28 sw/source/core/unocore/unomap1.cxx | 1 sw/source/filter/ww8/docxattributeoutput.cxx | 28 sw/source/filter/ww8/docxattributeoutput.hxx | 1 sw/source/filter/ww8/docxexport.cxx | 3 sw/source/filter/ww8/docxexportfilter.cxx | 35 sw/source/filter/ww8/wrtw8sty.cxx | 11 sw/source/filter/ww8/wrtww8.cxx | 16 sw/source/filter/ww8/ww8par3.cxx | 1 sw/source/ui/dialog/swdlgfact.cxx | 26 sw/source/ui/dialog/swdlgfact.hxx | 16 sw/source/ui/misc/pagenumberdlg.cxx | 92 sw/source/uibase/app/docshini.cxx | 10 sw/source/uibase/fldui/fldmgr.cxx | 35 sw/source/uibase/inc/pagenumberdlg.hxx | 51 sw/source/uibase/shells/basesh.cxx | 108 sw/source/uibase/shells/textfld.cxx | 96 sw/source/uibase/uno/loktxdoc.cxx | 53 sw/uiconfig/swriter/menubar/menubar.xml | 2 sw/uiconfig/swriter/ui/pagenumberdlg.ui | 222 vcl/inc/jsdialog/jsdialogbuilder.hxx | 2 vcl/jsdialog/enabled.cxx | 1 vcl/jsdialog/jsdialogbuilder.cxx | 12 writerfilter/qa/cppunittests/rtftok/data/center-after-page.rtf | 10 writerfilter/qa/cppunittests/rtftok/rtfdispatchsymbol.cxx | 24 writerfilter/source/dmapper/DomainMapper.cxx | 16 writerfilter/source/dmapper/DomainMapperTableHandler.cxx | 9 writerfilter/source/dmapper/DomainMapper_Impl.cxx | 6 writerfilter/source/dmapper/PropertyMap.hxx | 1 writerfilter/source/dmapper/SdtHelper.cxx | 4 writerfilter/source/dmapper/SdtHelper.hxx | 6 writerfilter/source/ooxml/model.xml | 12 writerfilter/source/rtftok/rtfdispatchsymbol.cxx | 7 91 files changed, 4170 insertions(+), 2536 deletions(-)
New commits: commit 8a356de7810482d43b1b11dba8763a8a594b1cd3 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Sat Jan 21 16:20:29 2023 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:42 2023 +0100 rhbz#2162862 null pFrame during teardown Change-Id: Iad2de93f0400b0ec49dae4c3d6979957784114f4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145935 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx index aea0d2b3518f..8121d1c62389 100644 --- a/sw/source/core/access/accpara.cxx +++ b/sw/source/core/access/accpara.cxx @@ -431,15 +431,18 @@ bool SwAccessibleParagraph::HasCursor() void SwAccessibleParagraph::UpdatePortionData() { // obtain the text frame - OSL_ENSURE( GetFrame() != nullptr, "The text frame has vanished!" ); - OSL_ENSURE( GetFrame()->IsTextFrame(), "The text frame has mutated!" ); const SwTextFrame* pFrame = static_cast<const SwTextFrame*>( GetFrame() ); - - // build new portion data - m_pPortionData.reset( new SwAccessiblePortionData( - pFrame, GetMap()->GetShell()->GetViewOptions()) ); - pFrame->VisitPortions( *m_pPortionData ); - + OSL_ENSURE( pFrame != nullptr, "The text frame has vanished!" ); + if (!pFrame) + ClearPortionData(); + else + { + OSL_ENSURE( pFrame->IsTextFrame(), "The text frame has mutated!" ); + // build new portion data + m_pPortionData.reset( new SwAccessiblePortionData( + pFrame, GetMap()->GetShell()->GetViewOptions()) ); + pFrame->VisitPortions( *m_pPortionData ); + } OSL_ENSURE( m_pPortionData != nullptr, "UpdatePortionData() failed" ); } commit 3007680b0eabe6f1cb8b656eb1c847e26a8e550f Author: Vasily Melenchuk <vasily.melenc...@cib.de> AuthorDate: Thu Jan 5 18:32:39 2023 +0300 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:42 2023 +0100 writerfilter: removed remains of GAP_HALF define and its usage Change-Id: I8dee16f923686f557c8213d9a7870392bd5fe9bf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145090 Tested-by: Jenkins Reviewed-by: Vasily Melenchuk <vasily.melenc...@cib.de> (cherry picked from commit f011a13b3e9d3edf85fa8cb17d612934e589e672) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145943 Reviewed-by: Thorsten Behrens <thorsten.behr...@allotropia.de> diff --git a/compilerplugins/clang/unusedenumconstants.writeonly.results b/compilerplugins/clang/unusedenumconstants.writeonly.results index e78ed74414cd..d88a2c0a3c16 100644 --- a/compilerplugins/clang/unusedenumconstants.writeonly.results +++ b/compilerplugins/clang/unusedenumconstants.writeonly.results @@ -5884,8 +5884,6 @@ writerfilter/source/dmapper/PropertyMap.hxx:563 enum writerfilter::dmapper::TablePropertyMap::TablePropertyMapTarget TABLE_WIDTH writerfilter/source/dmapper/PropertyMap.hxx:564 enum writerfilter::dmapper::TablePropertyMap::TablePropertyMapTarget TABLE_WIDTH_TYPE -writerfilter/source/dmapper/PropertyMap.hxx:565 - enum writerfilter::dmapper::TablePropertyMap::TablePropertyMapTarget GAP_HALF writerfilter/source/dmapper/PropertyMap.hxx:566 enum writerfilter::dmapper::TablePropertyMap::TablePropertyMapTarget LEFT_MARGIN writerfilter/source/dmapper/PropertyMap.hxx:567 diff --git a/writerfilter/source/dmapper/DomainMapperTableHandler.cxx b/writerfilter/source/dmapper/DomainMapperTableHandler.cxx index 97fea78eba2a..58d96a9cd8f5 100644 --- a/writerfilter/source/dmapper/DomainMapperTableHandler.cxx +++ b/writerfilter/source/dmapper/DomainMapperTableHandler.cxx @@ -354,9 +354,6 @@ TableStyleSheetEntry * DomainMapperTableHandler::endTableGetTableStyle(TableInfo if( m_aTableProperties ) { //create properties from the table attributes - //...pPropMap->Insert( PROP_LEFT_MARGIN, uno::makeAny( m_nLeftMargin - m_nGapHalf )); - //pPropMap->Insert( PROP_HORI_ORIENT, uno::makeAny( text::HoriOrientation::RIGHT )); - sal_Int32 nGapHalf = 0; sal_Int32 nLeftMargin = 0; comphelper::SequenceAsHashMap aGrabBag; @@ -509,8 +506,6 @@ TableStyleSheetEntry * DomainMapperTableHandler::endTableGetTableStyle(TableInfo m_aTableProperties->Insert( PROP_TABLE_INTEROP_GRAB_BAG, uno::Any( aGrabBag.getAsConstPropertyValueList() ) ); } - m_aTableProperties->getValue( TablePropertyMap::GAP_HALF, nGapHalf ); - std::optional<PropertyMap::Property> oLeftMarginFromStyle = m_aTableProperties->getProperty(PROP_LEFT_MARGIN); if (oLeftMarginFromStyle) { @@ -622,7 +617,7 @@ TableStyleSheetEntry * DomainMapperTableHandler::endTableGetTableStyle(TableInfo if (0 < nMode && nMode <= 14 && rInfo.nNestLevel == 1) { - const sal_Int32 nAdjustedMargin = nLeftMargin - nGapHalf - rInfo.nLeftBorderDistance; + const sal_Int32 nAdjustedMargin = nLeftMargin - rInfo.nLeftBorderDistance; m_aTableProperties->Insert( PROP_LEFT_MARGIN, uno::Any( nAdjustedMargin ) ); } else @@ -632,7 +627,7 @@ TableStyleSheetEntry * DomainMapperTableHandler::endTableGetTableStyle(TableInfo // so emulate that by adding the half the width. (also see docxattributeoutput) if ( rInfo.nNestLevel > 1 && nLeftMargin < 0 ) nLeftMargin = 0; - const sal_Int32 nAdjustedMargin = nLeftMargin - nGapHalf + (aLeftBorder.LineWidth / 2); + const sal_Int32 nAdjustedMargin = nLeftMargin + (aLeftBorder.LineWidth / 2); m_aTableProperties->Insert( PROP_LEFT_MARGIN, uno::Any( nAdjustedMargin ) ); } diff --git a/writerfilter/source/dmapper/PropertyMap.hxx b/writerfilter/source/dmapper/PropertyMap.hxx index f9f66e3dcc0b..719233d1ee73 100644 --- a/writerfilter/source/dmapper/PropertyMap.hxx +++ b/writerfilter/source/dmapper/PropertyMap.hxx @@ -575,7 +575,6 @@ public: CELL_MAR_BOTTOM, TABLE_WIDTH, TABLE_WIDTH_TYPE, - GAP_HALF, LEFT_MARGIN, HORI_ORIENT, TablePropertyMapTarget_MAX commit 3479f03590d4639459eaa20901d8ae0a2f3c1d5e Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Jan 20 09:43:39 2023 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:42 2023 +0100 std::abort() during CppunitTest_sw_layoutwriter seen in fedora distro build. Probably since: commit 4170b94c443b3bd68b4cc75b8c344ecca3c249b0 Date: Tue Nov 8 18:27:05 2022 +0100 SwModelTestBase: inherit from UnoApiXmlTest See original discussion in https://gerrit.libreoffice.org/c/core/+/142465 use an alternative approach to solve this [_RUN_____] testTdf143239::TestBody Fatal exception: Signal 6 Stack: /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libuno_sal.so.3(+0x48bd8)[0xffff95428bd8] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libuno_sal.so.3(+0x4fd8c)[0xffff9542fd8c] linux-vdso.so.1(__kernel_rt_sigreturn+0x0)[0xffff955247fc] /lib64/libc.so.6(+0x8d568)[0xffff94f2d568] /lib64/libc.so.6(gsignal+0x20)[0xffff94ee3e80] /lib64/libc.so.6(abort+0xf4)[0xffff94ed0284] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN3psp16PrintFontManager10SubstituteERN3vcl4font17FontSelectPatternERN3rtl8OUStringE+0xbc4)[0xffff91980de4] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(+0x891ea8)[0xffff91981ea8] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZNK3vcl4font22PhysicalFontCollection20GetGlyphFallbackFontERNS0_17FontSelectPatternEP19LogicalFontInstanceRN3rtl8OUStringEi+0xd0)[0xffff9186a7c0] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZNK12OutputDevice10ImplLayoutERKN3rtl8OUStringEiiRK5Pointl13KernArraySpanN4o3tl4spanIKhEE14SalLayoutFlagsPKN3vcl4text15TextLayoutCacheEPK15SalLayoutGlyphs+0x112c)[0xffff915be0c0] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZNK12OutputDevice12GetTextArrayERKN3rtl8OUStringEP9KernArrayiibPKN3vcl4text15TextLayoutCacheEPK15SalLayoutGlyphs+0x2c4)[0xffff915bf2b8] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN18ImplFontMetricData20ImplInitTextLineSizeEPK12OutputDevice+0x74)[0xffff91873da4] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZNK12OutputDevice11ImplNewFontEv+0x1c8)[0xffff915b7318] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(+0x4c5f70)[0xffff915b5f70] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZNK12OutputDevice14GetFontCharMapERN5tools5SvRefI11FontCharMapEE+0x34)[0xffff915b9004] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZNK12OutputDevice9HasGlyphsERKN3vcl4FontESt17basic_string_viewIDsSt11char_traitsIDsEEii+0x90)[0xffff915b9300] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libsvtlo.so(+0xff560)[0xffff8cadf560] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libsvtlo.so(_ZN11FontNameBox12CachePreviewEmP5Point+0x288)[0xffff8cae0168] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libsvtlo.so(+0x100448)[0xffff8cae0448] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN9Scheduler22CallbackTaskSchedulingEv+0x30c)[0xffff917b050c] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN14SvpSalInstance12CheckTimeoutEb+0x140)[0xffff919790a0] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN14SvpSalInstance9ImplYieldEbb+0x98)[0xffff91979818] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN14SvpSalInstance7DoYieldEbb+0xe0)[0xffff91979b70] /builddir/build/BUILD/libreoffice-7.5.0.2/instdir/program/libvcllo.so(_ZN9Scheduler19ProcessEventsToIdleEv+0x40)[0xffff917bac84] /builddir/build/BUILD/libreoffice-7.5.0.2/workdir/LinkTarget/CppunitTest/libtest_sw_layoutwriter.so(+0x5520c)[0xffff8d87520c] /lib64/libcppunit-1.15.so.1(+0x1e4dc)[0xffff9549e4dc] /builddir/build/BUILD/libreoffice-7.5.0.2/workdir/LinkTarget/Library/unoexceptionprotector.so(+0x107ec)[0xffff94e107ec] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit16DefaultProtector7protectERKNS_7FunctorERKNS_16ProtectorContextE+0x3c)[0xffff9549e1cc] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit14ProtectorChain7protectERKNS_7FunctorERKNS_16ProtectorContextE+0x320)[0xffff954969f4] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit10TestResult7protectERKNS_7FunctorEPNS_4TestERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x80)[0xffff954a06d0] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit8TestCase3runEPNS_10TestResultE+0x11c)[0xffff954a993c] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE+0xe0)[0xffff9549e980] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit13TestComposite3runEPNS_10TestResultE+0x58)[0xffff9549e6a8] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit13TestComposite15doRunChildTestsEPNS_10TestResultE+0xe0)[0xffff9549e980] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit13TestComposite3runEPNS_10TestResultE+0x58)[0xffff9549e6a8] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit10TestResult7runTestEPNS_4TestE+0x38)[0xffff9549f5a8] /lib64/libcppunit-1.15.so.1(_ZN7CppUnit10TestRunner3runERNS_10TestResultERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x70)[0xffff954a6b70] /builddir/build/BUILD/libreoffice-7.5.0.2/workdir/LinkTarget/Executable/cppunittester(+0x1443c)[0xaaaac255443c] /builddir/build/BUILD/libreoffice-7.5.0.2/workdir/LinkTarget/Executable/cppunittester(+0x15390)[0xaaaac2555390] /builddir/build/BUILD/libreoffice-7.5.0.2/workdir/LinkTarget/Executable/cppunittester(+0x10a38)[0xaaaac2550a38] /lib64/libc.so.6(+0x30588)[0xffff94ed0588] /lib64/libc.so.6(__libc_start_main+0x9c)[0xffff94ed0660] /builddir/build/BUILD/libreoffice-7.5.0.2/workdir/LinkTarget/Executable/cppunittester(+0x10ab0)[0xaaaac2550ab0] which: no gdb in (/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/lib/jvm/java-17-openjdk-17.0.6.0.9-0.2.ea.fc38.aarch64/bin) You need gdb in your path to show backtraces Error: a unit test failed, please do one of: make CppunitTest_sw_layoutwriter CPPUNITTRACE="gdb --args" # for interactive debugging on Linux make CppunitTest_sw_layoutwriter VALGRIND=memcheck # for memory checking make CppunitTest_sw_layoutwriter DEBUGCPPUNIT=TRUE # for exception catching You can limit the execution to just one particular test by: Change-Id: Ife968c5d1d49081b1d28d50a557bc90d59980fc0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145808 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/svtools/source/control/ctrlbox.cxx b/svtools/source/control/ctrlbox.cxx index 89029444b292..147fdd31ee0e 100644 --- a/svtools/source/control/ctrlbox.cxx +++ b/svtools/source/control/ctrlbox.cxx @@ -504,9 +504,11 @@ void FontNameBox::Fill( const FontList* pList ) set_active_or_entry_text(aOldText); } +static bool IsRunningUnitTest() { return getenv("LO_TESTNAME") != nullptr; } + void FontNameBox::EnableWYSIWYG(bool bEnable) { - if (comphelper::LibreOfficeKit::isActive()) + if (comphelper::LibreOfficeKit::isActive() || IsRunningUnitTest()) return; if (mbWYSIWYG == bEnable) return; commit 8d396cbbe53f8bed094aa9d5e78817a550e5defc Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Jan 20 12:37:11 2023 +0000 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:42 2023 +0100 don't crash with --disable-pdfium Change-Id: I946e62d70b937d27b2f1258acc643fdaa5bee23d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145809 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/sw/qa/core/text/text.cxx b/sw/qa/core/text/text.cxx index db1895b795c0..c4821f5d6eae 100644 --- a/sw/qa/core/text/text.cxx +++ b/sw/qa/core/text/text.cxx @@ -634,6 +634,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testTdf43100_CursorMoveToSpacesOverMargin) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testContentControlPDF) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a file with a content control: createSwDoc(); SwDoc* pDoc = getSwDoc(); @@ -677,6 +681,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testContentControlPDF) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testCheckboxContentControlPDF) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a file with a checkbox content control: createSwDoc(); SwDoc* pDoc = getSwDoc(); @@ -703,6 +711,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testCheckboxContentControlPDF) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testDropdownContentControlPDF) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a file with a dropdown content control: createSwDoc(); SwDoc* pDoc = getSwDoc(); @@ -729,6 +741,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testDropdownContentControlPDF) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testDateContentControlPDF) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a file with a date content control: createSwDoc(); SwDoc* pDoc = getSwDoc(); @@ -758,6 +774,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testDateContentControlPDF) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testContentControlPDFFont) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a document with a custom 24pt font size and a content control: createSwDoc(); SwDoc* pDoc = getSwDoc(); @@ -786,6 +806,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testContentControlPDFFont) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testComboContentControlPDF) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a file with a combo box content control: createSwDoc(); SwDoc* pDoc = getSwDoc(); @@ -813,6 +837,10 @@ CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testComboContentControlPDF) CPPUNIT_TEST_FIXTURE(SwCoreTextTest, testRichContentControlPDF) { + std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); + if (!pPDFium) + return; + // Given a file with a rich content control, its value set to "xxx<b>yyy</b>": createSwDoc(); SwDoc* pDoc = getSwDoc(); diff --git a/sw/qa/extras/mailmerge/mailmerge2.cxx b/sw/qa/extras/mailmerge/mailmerge2.cxx index 20eb6b0f3896..cd8871e780d3 100644 --- a/sw/qa/extras/mailmerge/mailmerge2.cxx +++ b/sw/qa/extras/mailmerge/mailmerge2.cxx @@ -513,7 +513,8 @@ DECLARE_SHELL_MAILMERGE_TEST(exportDirectToPDF_shell, "linked-with-condition.odt SvMemoryStream aMemory; aMemory.WriteStream(aPDFFile); std::shared_ptr<vcl::pdf::PDFium> pPDFium = vcl::pdf::PDFiumLibrary::get(); - CPPUNIT_ASSERT(pPDFium); + if (!pPDFium) + return; std::unique_ptr<vcl::pdf::PDFiumDocument> pPdfDocument = pPDFium->openDocument(aMemory.GetData(), aMemory.GetSize(), OString()); commit e9b4a38847944afe2a14166193363b5ebc5d5ee9 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Mon Jan 23 08:08:29 2023 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:41 2023 +0100 tdf#153046 RTF import: fix lost paragraph alignment after page break The bugdoc had a page break, and the paragraph after the page break is meant to be centered, but it was aligned to the left. This went wrong with 3c610336a58f644525d5e4d2566c35eee6f7a618 (tdf#148214 RTF import: avoid fake paragraph for \page when possible, 2022-09-08), previously we emitted fake paragraphs in most cases, which allowed simpler handling of pending paragraph properties. Now we have to be careful to call checkNeedPap() exactly when parBreak() in called, otherwise checkNeedPap() sends paragraph properties, and paragraph properties noticed later will be lost. Fix the problem by not sending paragraph properties unconditionally, only in case we send the fake paragraph break as well. This continues to allow the unwanted fake paragraphs in some cases, but it restores the lost paragraph properties, since m_bNeedPap will be still true after we hit the first character in the last paragraph, so \qc is sent to dmapper. Note that we don't have to check m_bNeedPap before checkNeedPap(), as it returns early already when m_bNeedPap is false. Change-Id: I683d42208072a84fe578e397ac3e29585da5aa89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145990 Reviewed-by: Miklos Vajna <vmik...@collabora.com> Tested-by: Jenkins (cherry picked from commit e316524d9fe7720ed0a5eaf94999e54d211a8395) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145945 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/writerfilter/qa/cppunittests/rtftok/data/center-after-page.rtf b/writerfilter/qa/cppunittests/rtftok/data/center-after-page.rtf new file mode 100644 index 000000000000..c4713906ed4c --- /dev/null +++ b/writerfilter/qa/cppunittests/rtftok/data/center-after-page.rtf @@ -0,0 +1,10 @@ +{\rtf1 +{\stylesheet +{\s20\qc Title;} +} +\paperw11908\paperh8833 +\plain\plain +first page\par +\ql\par +\page\pard\s20\qc second page\par +} diff --git a/writerfilter/qa/cppunittests/rtftok/rtfdispatchsymbol.cxx b/writerfilter/qa/cppunittests/rtftok/rtfdispatchsymbol.cxx index 25e87099abe7..fa491121656a 100644 --- a/writerfilter/qa/cppunittests/rtftok/rtfdispatchsymbol.cxx +++ b/writerfilter/qa/cppunittests/rtftok/rtfdispatchsymbol.cxx @@ -10,6 +10,8 @@ #include <test/unoapi_test.hxx> #include <com/sun/star/text/XTextDocument.hpp> +#include <com/sun/star/beans/XPropertySet.hpp> +#include <com/sun/star/style/ParagraphAdjust.hpp> using namespace ::com::sun::star; @@ -40,6 +42,28 @@ CPPUNIT_TEST_FIXTURE(Test, testPage) // paragraphs, not 2. CPPUNIT_ASSERT(!xParagraphs->hasMoreElements()); } + +CPPUNIT_TEST_FIXTURE(Test, testCenterAfterPage) +{ + // Given a file with a \page, followed by a \qc: + // When loading that file: + loadFromURL(u"center-after-page.rtf"); + + // Then make sure that the last paragraph is centered: + uno::Reference<text::XTextDocument> xTextDocument(mxComponent, uno::UNO_QUERY); + uno::Reference<container::XEnumerationAccess> xText(xTextDocument->getText(), uno::UNO_QUERY); + uno::Reference<container::XEnumeration> xParagraphs = xText->createEnumeration(); + xParagraphs->nextElement(); + xParagraphs->nextElement(); + uno::Reference<beans::XPropertySet> xParagraph(xParagraphs->nextElement(), uno::UNO_QUERY); + sal_Int16 eActual{}; + CPPUNIT_ASSERT(xParagraph->getPropertyValue("ParaAdjust") >>= eActual); + // Without the accompanying fix in place, this test would have failed with: + // - Expected: 3 (CENTER) + // - Actual : 0 (LEFT) + // i.e. the paragraph alignment on the second page was lost. + CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int16>(style::ParagraphAdjust_CENTER), eActual); +} } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/writerfilter/source/rtftok/rtfdispatchsymbol.cxx b/writerfilter/source/rtftok/rtfdispatchsymbol.cxx index c884ba592f6a..9aa9a2ce4a2e 100644 --- a/writerfilter/source/rtftok/rtfdispatchsymbol.cxx +++ b/writerfilter/source/rtftok/rtfdispatchsymbol.cxx @@ -391,7 +391,12 @@ RTFError RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword) { bool bFirstRun = m_bFirstRun; checkFirstRun(); - checkNeedPap(); + if (bFirstRun || m_bNeedCr) + { + // Only send the paragraph properties early if we'll create a new paragraph in a + // bit anyway. + checkNeedPap(); + } sal_uInt8 const sBreak[] = { 0xc }; Mapper().text(sBreak, 1); if (bFirstRun || m_bNeedCr) commit 570f4ca0ae52152723202ec272806eea7c317af5 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Fri Jan 13 08:56:29 2023 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:41 2023 +0100 sc: fix crash in ScViewData::GetCurXForTab() Crashreport signature: program/libsclo.so ScViewData::GetCurXForTab(short) const sc/source/ui/view/viewdata.cxx:1431 program/libsclo.so ScViewFunc::OnLOKInsertDeleteColumn(short, long) sc/source/ui/view/viewfunc.cxx:1552 program/libsclo.so ScDocFunc::InsertCells(ScRange const&, ScMarkData const*, InsCellCmd, bool, bool, bool) source/ui/docshell/docfunc.cxx:2256 program/libsclo.so ScViewFunc::InsertCells(InsCellCmd, bool, bool) sc/source/ui/view/viewfunc.cxx:1658 Seeing that e.g. ScViewData::WriteUserDataSequence() already checks if the pointer in maTabData is a nullptr, do the same here. Change-Id: I0ebdba8c8a5bedd3c3c57c36bdf0632e2fee45c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145697 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 1f8c02353d653a6d4a72d918aaf6be5f367137c9) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145729 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx index 0ef96d96c7ae..ae68a5dfc725 100644 --- a/sc/source/ui/view/viewdata.cxx +++ b/sc/source/ui/view/viewdata.cxx @@ -1429,7 +1429,7 @@ SCROW ScViewData::GetPosY( ScVSplitPos eWhich, SCTAB nForTab ) const SCCOL ScViewData::GetCurXForTab( SCTAB nTabIndex ) const { - if (!ValidTab(nTabIndex) || (nTabIndex >= static_cast<SCTAB>(maTabData.size()))) + if (!ValidTab(nTabIndex) || (nTabIndex >= static_cast<SCTAB>(maTabData.size())) || !maTabData[nTabIndex]) return -1; return maTabData[nTabIndex]->nCurX; commit f1ba9ed92e7dadfbc628d8f9279808c155ecb76c Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Fri Jan 20 10:18:54 2023 +0200 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:41 2023 +0100 tdf#150819 crash after a few paste and undo regression from commit 3a02b5f8aae803b7b5a232c724135594483627a4 Author: Noel Grandin <noelgran...@gmail.com> Date: Tue Aug 16 18:44:31 2022 +0200 convert more nNode to SwPosition::GetNode Change-Id: I636590ec5eb28f0db3640464a49f0ab5582ff853 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145864 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> (cherry picked from commit b70eee2d394dd7249c2de0cb41ccc47f80a05f8f) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145947 Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/sw/source/core/docnode/nodes.cxx b/sw/source/core/docnode/nodes.cxx index 540d5ce7509b..afef83e76df5 100644 --- a/sw/source/core/docnode/nodes.cxx +++ b/sw/source/core/docnode/nodes.cxx @@ -1532,7 +1532,7 @@ void SwNodes::MoveRange( SwPaM & rPam, SwPosition & rPos, SwNodes& rNodes ) pDestNd->SplitContentNode(rPos, nullptr); } - if( rPos.GetNodeIndex() == aEndIdx.GetIndex() ) + if( rPos.GetNode() == aEndIdx.GetNode() ) { --aEndIdx; } commit d284af621f4cfefa4a36a78b3dbc78e9403e2005 Author: Attila Szűcs <attila.sz...@collabora.com> AuthorDate: Fri Jan 13 04:49:33 2023 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:41 2023 +0100 tdf#148000 impress: Handle linebreaks on fontwork. Split text lines in a paragraph, right before polygons are created for rendering, so eol will brake line in fontwork just like eop. Change-Id: Ie9e6764f9f91c2e19afd43dc9a212bd18c41c99d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145425 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit f9d6dd788e82a1964dab9cc0d0436c8c54b775c0) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145804 Reviewed-by: Andras Timar <andras.ti...@collabora.com> diff --git a/include/svx/svdmodel.hxx b/include/svx/svdmodel.hxx index 7c23b5a24712..b5d93fa53eb7 100644 --- a/include/svx/svdmodel.hxx +++ b/include/svx/svdmodel.hxx @@ -575,6 +575,10 @@ public: void SetAnchoredTextOverflowLegacy(bool bEnabled); bool IsAnchoredTextOverflowLegacy() const; + // tdf#148000 compatibility flag + void SetLegacySingleLineFontwork(bool bEnabled); + bool IsLegacySingleLineFontwork() const; + void ReformatAllTextObjects(); std::unique_ptr<SdrOutliner> createOutliner( OutlinerMode nOutlinerMode ); diff --git a/sc/source/ui/docshell/docsh.cxx b/sc/source/ui/docshell/docsh.cxx index 2f2f3521ae4e..458feb6dea2a 100644 --- a/sc/source/ui/docshell/docsh.cxx +++ b/sc/source/ui/docshell/docsh.cxx @@ -590,6 +590,8 @@ bool ScDocShell::Load( SfxMedium& rMedium ) { if (m_pDocument->GetDrawLayer()) m_pDocument->GetDrawLayer()->SetAnchoredTextOverflowLegacy(true); + if (m_pDocument->GetDrawLayer()) + m_pDocument->GetDrawLayer()->SetLegacySingleLineFontwork(true); //for tdf#148000 } GetUndoManager()->Clear(); diff --git a/sd/source/ui/docshell/docshel4.cxx b/sd/source/ui/docshell/docshel4.cxx index 13b08deafa1a..0bdfef02b7db 100644 --- a/sd/source/ui/docshell/docshel4.cxx +++ b/sd/source/ui/docshell/docshel4.cxx @@ -269,6 +269,7 @@ bool DrawDocShell::Load( SfxMedium& rMedium ) if (IsOwnStorageFormat(rMedium)) { mpDoc->SetAnchoredTextOverflowLegacy(true); + mpDoc->SetLegacySingleLineFontwork(true); //for tdf#148000 } bool bRet = false; diff --git a/svx/qa/unit/data/tdf148000_EOLinCurvedText.pptx b/svx/qa/unit/data/tdf148000_EOLinCurvedText.pptx new file mode 100644 index 000000000000..137fc816697a Binary files /dev/null and b/svx/qa/unit/data/tdf148000_EOLinCurvedText.pptx differ diff --git a/svx/qa/unit/data/tdf148000_EOLinCurvedText_Legacy.odp b/svx/qa/unit/data/tdf148000_EOLinCurvedText_Legacy.odp new file mode 100644 index 000000000000..13e7cc4e5c8a Binary files /dev/null and b/svx/qa/unit/data/tdf148000_EOLinCurvedText_Legacy.odp differ diff --git a/svx/qa/unit/data/tdf148000_EOLinCurvedText_New.odp b/svx/qa/unit/data/tdf148000_EOLinCurvedText_New.odp new file mode 100644 index 000000000000..7ebdb9431b72 Binary files /dev/null and b/svx/qa/unit/data/tdf148000_EOLinCurvedText_New.odp differ diff --git a/svx/qa/unit/svdraw.cxx b/svx/qa/unit/svdraw.cxx index c2a7f244b8ab..7bf1ceb9d4a1 100644 --- a/svx/qa/unit/svdraw.cxx +++ b/svx/qa/unit/svdraw.cxx @@ -382,6 +382,48 @@ CPPUNIT_TEST_FIXTURE(SvdrawTest, testFontWorks) "32"); } +CPPUNIT_TEST_FIXTURE(SvdrawTest, testTdf148000_EOLinCurvedText) +{ + std::vector<OUString> aFilenames + = { u"tdf148000_EOLinCurvedText.pptx", u"tdf148000_EOLinCurvedText_New.odp", + u"tdf148000_EOLinCurvedText_Legacy.odp" }; + + for (int i = 0; i < 3; i++) + { + loadFromURL(aFilenames[i]); + + SdrPage* pSdrPage = getFirstDrawPageWithAssert(); + + xmlDocUniquePtr pXmlDoc = lcl_dumpAndParseFirstObjectWithAssert(pSdrPage); + + OString aBasePath + = "/primitive2D/objectinfo[4]/unhandled/unhandled/polypolygoncolor/polypolygon/"; + + // The text is: "O" + eop + "O" + eol + "O" + // It should be displayed as 3 line of text. (1 "O" letter in every line) + sal_Int32 nY1 = getXPath(pXmlDoc, aBasePath + "polygon[1]/point[1]", "y").toInt32(); + sal_Int32 nY2 = getXPath(pXmlDoc, aBasePath + "polygon[3]/point[1]", "y").toInt32(); + sal_Int32 nY3 = getXPath(pXmlDoc, aBasePath + "polygon[5]/point[1]", "y").toInt32(); + + sal_Int32 nDiff21 = nY2 - nY1; + sal_Int32 nDiff32 = nY3 - nY2; + + // the 2. "O" must be positioned much lower as the 1. "O". (the eop break the line) + CPPUNIT_ASSERT_GREATER(sal_Int32(300), nDiff21); + if (i < 2) + { + // the 3. "O" must be positioned even lower with 1 line. (the eol must break the line as well) + CPPUNIT_ASSERT_LESS(sal_Int32(50), abs(nDiff32 - nDiff21)); + } + else + { + // In legacy mode, the 3. "O" must be positioned about the same high as the 2. "O" + // the eol not break the line. + CPPUNIT_ASSERT_LESS(sal_Int32(50), nDiff32); + } + } +} + CPPUNIT_TEST_FIXTURE(SvdrawTest, testSurfaceMetal) { loadFromURL(u"tdf140321_metal.odp"); diff --git a/svx/source/customshapes/EnhancedCustomShapeFontWork.cxx b/svx/source/customshapes/EnhancedCustomShapeFontWork.cxx index e8e3bd026cd1..672cd28fbc8e 100644 --- a/svx/source/customshapes/EnhancedCustomShapeFontWork.cxx +++ b/svx/source/customshapes/EnhancedCustomShapeFontWork.cxx @@ -36,6 +36,7 @@ #include <editeng/charscaleitem.hxx> #include <svx/svdoashp.hxx> #include <svx/sdshitm.hxx> +#include <svx/svdmodel.hxx> #include <editeng/outlobj.hxx> #include <editeng/editobj.hxx> #include <o3tl/numeric.hxx> @@ -50,6 +51,7 @@ #include <sal/log.hxx> #include <rtl/math.hxx> #include <unotools/configmgr.hxx> +#include <comphelper/string.hxx> using namespace com::sun::star; using namespace com::sun::star::uno; @@ -116,27 +118,58 @@ static bool InitializeFontWorkData( if ( pParaObj ) { const EditTextObject& rTextObj = pParaObj->GetTextObject(); - sal_Int32 nParagraphsLeft = rTextObj.GetParagraphCount(); + sal_Int32 nParagraphsCount = rTextObj.GetParagraphCount(); + + // Collect all the lines from all paragraphs + std::vector<int> aLineParaID; // which para this line is in + std::vector<int> aLineStart; // where this line start in that para + std::vector<int> aLineLength; + std::vector<OUString> aParaText; + for (sal_Int32 nPara = 0; nPara < nParagraphsCount; ++nPara) + { + aParaText.push_back(rTextObj.GetText(nPara)); + sal_Int32 nPos = 0; + sal_Int32 nPrevPos = 0; + do + { + // search line break. + if (!rSdrObjCustomShape.getSdrModelFromSdrObject().IsLegacySingleLineFontwork()) + nPos = aParaText[nPara].indexOf(sal_Unicode(u'\1'), nPrevPos); + else + nPos = -1; // tdf#148000: ignore line breaks in legacy fontworks + + aLineParaID.push_back(nPara); + aLineStart.push_back(nPrevPos); + aLineLength.push_back((nPos >= 0 ? nPos : aParaText[nPara].getLength()) + - nPrevPos); + nPrevPos = nPos + 1; + } while (nPos >= 0); + } + + sal_Int32 nLinesLeft = aLineParaID.size(); - rFWData.nMaxParagraphsPerTextArea = ( ( nParagraphsLeft - 1 ) / nTextAreaCount ) + 1; - sal_Int32 j = 0; - while( nParagraphsLeft && nTextAreaCount ) + rFWData.nMaxParagraphsPerTextArea = ((nLinesLeft - 1) / nTextAreaCount) + 1; + sal_Int32 nLine = 0; + while (nLinesLeft && nTextAreaCount) { FWTextArea aTextArea; - sal_Int32 i, nParagraphs = ( ( nParagraphsLeft - 1 ) / nTextAreaCount ) + 1; - for ( i = 0; i < nParagraphs; ++i, ++j ) + sal_Int32 nLinesInPara = ((nLinesLeft - 1) / nTextAreaCount) + 1; + for (sal_Int32 i = 0; i < nLinesInPara; ++i, ++nLine) { FWParagraphData aParagraphData; - aParagraphData.aString = rTextObj.GetText( j ); + aParagraphData.aString = aParaText[aLineParaID[nLine]].subView( + aLineStart[nLine], aLineLength[nLine]); - const SfxItemSet& rParaSet = rTextObj.GetParaAttribs( j ); // retrieving some paragraph attributes - aParagraphData.nFrameDirection = rParaSet.Get( EE_PARA_WRITINGDIR ).GetValue(); - aTextArea.vParagraphs.push_back( aParagraphData ); + // retrieving some paragraph attributes + const SfxItemSet& rParaSet = rTextObj.GetParaAttribs(aLineParaID[nLine]); + aParagraphData.nFrameDirection = rParaSet.Get(EE_PARA_WRITINGDIR).GetValue(); + aTextArea.vParagraphs.push_back(aParagraphData); } - rFWData.vTextAreas.push_back( aTextArea ); - nParagraphsLeft -= nParagraphs; + rFWData.vTextAreas.push_back(aTextArea); + nLinesLeft -= nLinesInPara; nTextAreaCount--; } + bNoErr = true; } } diff --git a/svx/source/svdraw/svdmodel.cxx b/svx/source/svdraw/svdmodel.cxx index 3feb1ae0669b..bc86671c9437 100644 --- a/svx/source/svdraw/svdmodel.cxx +++ b/svx/source/svdraw/svdmodel.cxx @@ -72,6 +72,9 @@ #include <comphelper/diagnose_ex.hxx> #include <tools/UnitConversion.hxx> #include <svx/ColorSets.hxx> +#include <svx/svditer.hxx> +#include <svx/svdoashp.hxx> + using namespace ::com::sun::star; @@ -80,12 +83,14 @@ struct SdrModelImpl SfxUndoManager* mpUndoManager; SdrUndoFactory* mpUndoFactory; bool mbAnchoredTextOverflowLegacy; // tdf#99729 compatibility flag + bool mbLegacySingleLineFontwork; // tdf#148000 compatibility flag std::unique_ptr<svx::Theme> mpTheme; SdrModelImpl() : mpUndoManager(nullptr) , mpUndoFactory(nullptr) , mbAnchoredTextOverflowLegacy(false) + , mbLegacySingleLineFontwork(false) {} }; @@ -1718,6 +1723,16 @@ bool SdrModel::IsAnchoredTextOverflowLegacy() const return mpImpl->mbAnchoredTextOverflowLegacy; } +void SdrModel::SetLegacySingleLineFontwork(bool bEnabled) +{ + mpImpl->mbLegacySingleLineFontwork = bEnabled; +} + +bool SdrModel::IsLegacySingleLineFontwork() const +{ + return mpImpl->mbLegacySingleLineFontwork; +} + void SdrModel::ReformatAllTextObjects() { ImpReformatAllTextObjects(); @@ -1761,6 +1776,32 @@ void SdrModel::ReadUserDataSequenceValue(const beans::PropertyValue* pValue) mpImpl->mbAnchoredTextOverflowLegacy = bBool; } } + else if (pValue->Name == "LegacySingleLineFontwork") + { + bool bBool = false; + if (pValue->Value >>= bBool) + { + mpImpl->mbLegacySingleLineFontwork = bBool; + // tdf#148000 hack: reset all CustomShape geometry as they may depend on this property + // Ideally this ReadUserDataSequenceValue should be called before geometry creation + // Once the calling order will be fixed, this hack will not be needed. + for (size_t i = 0; i < maPages.size(); ++i) + { + if (const SdrPage* pPage = maPages[i].get()) + { + SdrObjListIter aIter(pPage, SdrIterMode::DeepWithGroups); + while (aIter.IsMore()) + { + SdrObject* pTempObj = aIter.Next(); + if (SdrObjCustomShape* pShape = dynamic_cast<SdrObjCustomShape*>(pTempObj)) + { + pShape->InvalidateRenderGeometry(); + } + } + } + } + } + } } template <typename T> @@ -1773,6 +1814,7 @@ void SdrModel::WriteUserDataSequence(uno::Sequence <beans::PropertyValue>& rValu { std::vector< std::pair< OUString, uno::Any > > aUserData; addPair(aUserData, "AnchoredTextOverflowLegacy", IsAnchoredTextOverflowLegacy()); + addPair(aUserData, "LegacySingleLineFontwork", IsLegacySingleLineFontwork()); const sal_Int32 nOldLength = rValues.getLength(); rValues.realloc(nOldLength + aUserData.size()); diff --git a/sw/source/uibase/app/docshini.cxx b/sw/source/uibase/app/docshini.cxx index c5432a98af29..72e630ac02b2 100644 --- a/sw/source/uibase/app/docshini.cxx +++ b/sw/source/uibase/app/docshini.cxx @@ -476,10 +476,12 @@ bool SwDocShell::Load( SfxMedium& rMedium ) // (if required, they will be overridden later when settings will be read) if (IsOwnStorageFormat(rMedium)) { - // legacy processing for tdf#99729 - if (m_xDoc->getIDocumentDrawModelAccess().GetDrawModel()) - m_xDoc->getIDocumentDrawModelAccess().GetDrawModel()->SetAnchoredTextOverflowLegacy( - true); + SwDrawModel* pDrawModel = m_xDoc->getIDocumentDrawModelAccess().GetDrawModel(); + if (pDrawModel) + { + pDrawModel->SetAnchoredTextOverflowLegacy(true); // legacy processing for tdf#99729 + pDrawModel->SetLegacySingleLineFontwork(true); // legacy processing for tdf#148000 + } } // Loading commit 45277f45a647f3e42c6bb837378510985b9b30a1 Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Mon Jan 23 14:30:50 2023 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Mon Jan 23 20:39:41 2023 +0100 update credits Change-Id: Icbf6bd2aba36baccb5e4046f02c6c5c69cb5f7e1 (cherry picked from commit 6bfd22b65fc5eb6539108887ea6242223f3e9655) diff --git a/readlicense_oo/license/CREDITS.fodt b/readlicense_oo/license/CREDITS.fodt index 6b504d051674..b80c8112ec20 100644 --- a/readlicense_oo/license/CREDITS.fodt +++ b/readlicense_oo/license/CREDITS.fodt @@ -156,29 +156,29 @@ </office:script> </office:scripts> <office:font-face-decls> - <style:font-face style:name="Albany" svg:font-family="Albany" style:font-family-generic="swiss" style:font-pitch="variable"/> + <style:font-face style:name="Mangal1" svg:font-family="Mangal"/> + <style:font-face style:name="OpenSymbol" svg:font-family="OpenSymbol"/> + <style:font-face style:name="sans-serif" svg:font-family="sans-serif"/> <style:font-face style:name="Arial Unicode MS" svg:font-family="'Arial Unicode MS'" style:font-pitch="variable"/> <style:font-face style:name="HG Mincho Light J" svg:font-family="'HG Mincho Light J'" style:font-pitch="variable"/> - <style:font-face style:name="Liberation Sans" svg:font-family="'Liberation Sans'" style:font-adornments="Bold" style:font-family-generic="swiss" style:font-pitch="variable"/> - <style:font-face style:name="Liberation Sans1" svg:font-family="'Liberation Sans'" style:font-adornments="Regular" style:font-family-generic="swiss" style:font-pitch="variable"/> - <style:font-face style:name="Mangal" svg:font-family="Mangal"/> - <style:font-face style:name="Mangal1" svg:font-family="Mangal" style:font-family-generic="system" style:font-pitch="variable"/> - <style:font-face style:name="OpenSymbol" svg:font-family="OpenSymbol"/> - <style:font-face style:name="SimSun" svg:font-family="SimSun" style:font-family-generic="system" style:font-pitch="variable"/> <style:font-face style:name="Thorndale AMT" svg:font-family="'Thorndale AMT'" style:font-family-generic="roman" style:font-pitch="variable"/> - <style:font-face style:name="sans-serif" svg:font-family="sans-serif"/> + <style:font-face style:name="Albany" svg:font-family="Albany" style:font-family-generic="swiss" style:font-pitch="variable"/> + <style:font-face style:name="Liberation Sans1" svg:font-family="'Liberation Sans'" style:font-adornments="Bold" style:font-family-generic="swiss" style:font-pitch="variable"/> + <style:font-face style:name="Liberation Sans" svg:font-family="'Liberation Sans'" style:font-adornments="Regular" style:font-family-generic="swiss" style:font-pitch="variable"/> + <style:font-face style:name="Mangal" svg:font-family="Mangal" style:font-family-generic="system" style:font-pitch="variable"/> + <style:font-face style:name="SimSun" svg:font-family="SimSun" style:font-family-generic="system" style:font-pitch="variable"/> </office:font-face-decls> <office:styles> <style:default-style style:family="graphic"> <style:graphic-properties svg:stroke-color="#3465a4" draw:fill-color="#729fcf" fo:wrap-option="no-wrap" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:start-line-spacing-horizontal="0.283cm" draw:start-line-spacing-vertical="0.283cm" draw:end-line-spacing-horizontal="0.283cm" draw:end-line-spacing-vertical="0.283cm" style:flow-with-text="true"/> - <style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:font-independent-line-spacing="false"> + <style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:writing-mode="lr-tb" style:font-independent-line-spacing="false"> <style:tab-stops/> </style:paragraph-properties> - <style:text-properties style:use-window-font-color="true" loext:opacity="0%" loext:color-lum-mod="100%" loext:color-lum-off="0%" style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="hu" fo:country="HU" style:letter-kerning="true" style:font-name-asian="SimSun" style:font-size-asian="12pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Mangal1" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN"/> + <style:text-properties style:use-window-font-color="true" loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="hu" fo:country="HU" style:letter-kerning="true" style:font-name-asian="SimSun" style:font-size-asian="12pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Mangal" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN"/> </style:default-style> <style:default-style style:family="paragraph"> <style:paragraph-properties fo:hyphenation-ladder-count="no-limit" style:text-autospace="ideograph-alpha" style:punctuation-wrap="hanging" style:line-break="strict" style:tab-stop-distance="1.251cm" style:writing-mode="page"/> - <style:text-properties style:use-window-font-color="true" loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="hu" fo:country="HU" style:letter-kerning="true" style:font-name-asian="SimSun" style:font-size-asian="12pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Mangal1" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN" fo:hyphenate="false" fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2" loext:hyphenation-no-caps="false" loext:hyphenation-no-last-word="false" loext:hyphenation-word-char-count="5" loext:hyphenation-zone="no-limit"/> + <style:text-properties style:use-window-font-color="true" loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="hu" fo:country="HU" style:letter-kerning="true" style:font-name-asian="SimSun" style:font-size-asian="12pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Mangal" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN" fo:hyphenate="false" fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2" loext:hyphenation-no-caps="false"/> </style:default-style> <style:default-style style:family="table"> <style:table-properties table:border-model="collapsing"/> @@ -195,18 +195,18 @@ </style:style> <style:style style:name="Text_20_body" style:display-name="Text body" style:family="paragraph" style:parent-style-name="Standard" style:class="text"> <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:contextual-spacing="false"/> - <style:text-properties style:font-name="Liberation Sans1" fo:font-family="'Liberation Sans'" style:font-style-name="Regular" style:font-family-generic="swiss" style:font-pitch="variable" fo:language="en" fo:country="US"/> + <style:text-properties style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-style-name="Regular" style:font-family-generic="swiss" style:font-pitch="variable" fo:language="en" fo:country="US"/> </style:style> <style:style style:name="List" style:family="paragraph" style:parent-style-name="Text_20_body" style:class="list"> - <style:text-properties style:font-size-asian="12pt" style:font-name-complex="Mangal" style:font-family-complex="Mangal"/> + <style:text-properties style:font-size-asian="12pt" style:font-name-complex="Mangal1" style:font-family-complex="Mangal"/> </style:style> <style:style style:name="Caption" style:family="paragraph" style:parent-style-name="Standard" style:class="extra"> <style:paragraph-properties fo:margin-top="0.212cm" fo:margin-bottom="0.212cm" style:contextual-spacing="false" text:number-lines="false" text:line-number="0"/> - <style:text-properties fo:font-size="12pt" fo:font-style="italic" style:font-size-asian="12pt" style:font-style-asian="italic" style:font-name-complex="Mangal" style:font-family-complex="Mangal" style:font-size-complex="12pt" style:font-style-complex="italic"/> + <style:text-properties fo:font-size="12pt" fo:font-style="italic" style:font-size-asian="12pt" style:font-style-asian="italic" style:font-name-complex="Mangal1" style:font-family-complex="Mangal" style:font-size-complex="12pt" style:font-style-complex="italic"/> </style:style> <style:style style:name="Index" style:family="paragraph" style:parent-style-name="Standard" style:class="index"> <style:paragraph-properties text:number-lines="false" text:line-number="0"/> - <style:text-properties style:font-size-asian="12pt" style:font-name-complex="Mangal" style:font-family-complex="Mangal"/> + <style:text-properties style:font-size-asian="12pt" style:font-name-complex="Mangal1" style:font-family-complex="Mangal"/> </style:style> <style:style style:name="Horizontal_20_Line" style:display-name="Horizontal Line" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="html"> <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:contextual-spacing="false" style:border-line-width-bottom="0.002cm 0.035cm 0.002cm" fo:padding="0cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="1.11pt double #808080"/> @@ -241,7 +241,7 @@ </style:paragraph-properties> </style:style> <style:style style:name="Heading_20_1" style:display-name="Heading 1" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="text"> - <style:text-properties style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-style-name="Bold" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="24pt" fo:language="en" fo:country="US" fo:font-weight="bold" style:font-name-asian="HG Mincho Light J" style:font-family-asian="'HG Mincho Light J'" style:font-pitch-asian="variable" style:font-size-asian="24pt" style:font-weight-asian="bold" style:font-name-complex="Arial Unicode MS" style:font-family-complex="'Arial Unicode MS'" style:font-pitch-complex="variable" style:font-size-complex="24pt" style:font-weight-complex="bold"/> + <style:text-properties style:font-name="Liberation Sans1" fo:font-family="'Liberation Sans'" style:font-style-name="Bold" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="24pt" fo:language="en" fo:country="US" fo:font-weight="bold" style:font-name-asian="HG Mincho Light J" style:font-family-asian="'HG Mincho Light J'" style:font-pitch-asian="variable" style:font-size-asian="24pt" style:font-weight-asian="bold" style:font-name-complex="Arial Unicode MS" style:font-family-complex="'Arial Unicode MS'" style:font-pitch-complex="variable" style:font-size-complex="24pt" style:font-weight-complex="bold"/> </style:style> <style:style style:name="Quotations" style:family="paragraph" style:parent-style-name="Standard" style:class="html"> <style:paragraph-properties fo:margin-left="1cm" fo:margin-right="1cm" fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:contextual-spacing="false" fo:text-indent="0cm" style:auto-text-indent="false"/> @@ -250,14 +250,14 @@ <style:text-properties fo:font-variant="small-caps"/> </style:style> <style:style style:name="Heading_20_3" style:display-name="Heading 3" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="3" style:list-style-name="" style:class="text"> - <style:text-properties style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-style-name="Bold" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="14pt" fo:language="en" fo:country="US" fo:font-weight="bold" style:font-name-asian="SimSun" style:font-family-asian="SimSun" style:font-family-generic-asian="system" style:font-pitch-asian="variable" style:font-size-asian="14pt" style:font-weight-asian="bold" style:font-name-complex="Mangal1" style:font-family-complex="Mangal" style:font-family-generic-complex="system" style:font-pitch-complex="variable" style:font-size-complex="14pt" style:font-weight-complex="bold"/> + <style:text-properties style:font-name="Liberation Sans1" fo:font-family="'Liberation Sans'" style:font-style-name="Bold" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="14pt" fo:language="en" fo:country="US" fo:font-weight="bold" style:font-name-asian="SimSun" style:font-family-asian="SimSun" style:font-family-generic-asian="system" style:font-pitch-asian="variable" style:font-size-asian="14pt" style:font-weight-asian="bold" style:font-name-complex="Mangal" style:font-family-complex="Mangal" style:font-family-generic-complex="system" style:font-pitch-complex="variable" style:font-size-complex="14pt" style:font-weight-complex="bold"/> </style:style> <style:style style:name="Table_20_Heading" style:display-name="Table Heading" style:family="paragraph" style:parent-style-name="Table_20_Contents" style:class="extra"> <style:paragraph-properties fo:text-align="center" style:justify-single-word="false" text:number-lines="false" text:line-number="0"/> <style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/> </style:style> <style:style style:name="Heading_20_2" style:display-name="Heading 2" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="2" style:list-style-name="" style:class="text"> - <style:text-properties style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-style-name="Bold" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="18pt" fo:language="en" fo:country="US" fo:font-weight="bold" style:font-name-asian="SimSun" style:font-family-asian="SimSun" style:font-family-generic-asian="system" style:font-pitch-asian="variable" style:font-size-asian="18pt" style:font-weight-asian="bold" style:font-name-complex="Mangal1" style:font-family-complex="Mangal" style:font-family-generic-complex="system" style:font-pitch-complex="variable" style:font-size-complex="18pt" style:font-weight-complex="bold"/> + <style:text-properties style:font-name="Liberation Sans1" fo:font-family="'Liberation Sans'" style:font-style-name="Bold" style:font-family-generic="swiss" style:font-pitch="variable" fo:font-size="18pt" fo:language="en" fo:country="US" fo:font-weight="bold" style:font-name-asian="SimSun" style:font-family-asian="SimSun" style:font-family-generic-asian="system" style:font-pitch-asian="variable" style:font-size-asian="18pt" style:font-weight-asian="bold" style:font-name-complex="Mangal" style:font-family-complex="Mangal" style:font-family-generic-complex="system" style:font-pitch-complex="variable" style:font-size-complex="18pt" style:font-weight-complex="bold"/> </style:style> <style:style style:name="Frame_20_contents" style:display-name="Frame contents" style:family="paragraph" style:parent-style-name="Text_20_body" style:class="extra"/> <style:style style:name="Title" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:class="chapter"> @@ -292,52 +292,52 @@ <style:graphic-properties text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" style:wrap="none" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="center" style:horizontal-rel="paragraph"/> </style:style> <text:outline-style style:name="Outline"> - <text:outline-level-style text:level="1" loext:num-list-format="%1%" style:num-format=""> + <text:outline-level-style text:level="1" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="0.762cm" fo:text-indent="-0.762cm" fo:margin-left="0.762cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="2" loext:num-list-format="%2%" style:num-format=""> + <text:outline-level-style text:level="2" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="1.016cm" fo:text-indent="-1.016cm" fo:margin-left="1.016cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="3" loext:num-list-format="%3%" style:num-format=""> + <text:outline-level-style text:level="3" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="1.27cm" fo:text-indent="-1.27cm" fo:margin-left="1.27cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="4" loext:num-list-format="%4%" style:num-format=""> + <text:outline-level-style text:level="4" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="1.524cm" fo:text-indent="-1.524cm" fo:margin-left="1.524cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="5" loext:num-list-format="%5%" style:num-format=""> + <text:outline-level-style text:level="5" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="1.778cm" fo:text-indent="-1.778cm" fo:margin-left="1.778cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="6" loext:num-list-format="%6%" style:num-format=""> + <text:outline-level-style text:level="6" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="2.032cm" fo:text-indent="-2.032cm" fo:margin-left="2.032cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="7" loext:num-list-format="%7%" style:num-format=""> + <text:outline-level-style text:level="7" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="2.286cm" fo:text-indent="-2.286cm" fo:margin-left="2.286cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="8" loext:num-list-format="%8%" style:num-format=""> + <text:outline-level-style text:level="8" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="2.54cm" fo:text-indent="-2.54cm" fo:margin-left="2.54cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="9" loext:num-list-format="%9%" style:num-format=""> + <text:outline-level-style text:level="9" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="2.794cm" fo:text-indent="-2.794cm" fo:margin-left="2.794cm"/> </style:list-level-properties> </text:outline-level-style> - <text:outline-level-style text:level="10" loext:num-list-format="%10%" style:num-format=""> + <text:outline-level-style text:level="10" style:num-format=""> <style:list-level-properties text:list-level-position-and-space-mode="label-alignment"> <style:list-level-label-alignment text:label-followed-by="listtab" text:list-tab-stop-position="3.048cm" fo:text-indent="-3.048cm" fo:margin-left="3.048cm"/> </style:list-level-properties> @@ -352,18 +352,21 @@ <style:table-properties style:width="26.174cm" table:align="left"/> </style:style> <style:style style:name="Tabelle1.A" style:family="table-column"> - <style:table-column-properties style:column-width="6.246cm"/> + <style:table-column-properties style:column-width="6.854cm"/> </style:style> <style:style style:name="Tabelle1.B" style:family="table-column"> - <style:table-column-properties style:column-width="6.828cm"/> + <style:table-column-properties style:column-width="6.272cm"/> </style:style> <style:style style:name="Tabelle1.C" style:family="table-column"> - <style:table-column-properties style:column-width="6.272cm"/> + <style:table-column-properties style:column-width="6.749cm"/> + </style:style> + <style:style style:name="Tabelle1.D" style:family="table-column"> + <style:table-column-properties style:column-width="6.299cm"/> </style:style> <style:style style:name="Tabelle1.A1" style:family="table-cell"> <style:table-cell-properties style:vertical-align="middle" fo:padding="0.049cm" fo:border="none"/> </style:style> - <style:style style:name="Tabelle1.D423" style:family="table-cell"> + <style:style style:name="Tabelle1.B425" style:family="table-cell"> <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/> </style:style> <style:style style:name="Tabelle2" style:family="table"> @@ -427,10 +430,10 @@ <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/> </style:style> <style:style style:name="Tabelle5" style:family="table"> - <style:table-properties style:width="33.186cm" table:align="left"/> + <style:table-properties style:width="32.921cm" table:align="left"/> </style:style> <style:style style:name="Tabelle5.A" style:family="table-column"> - <style:table-column-properties style:column-width="6.669cm"/> + <style:table-column-properties style:column-width="6.696cm"/> </style:style> <style:style style:name="Tabelle5.B" style:family="table-column"> <style:table-column-properties style:column-width="8.072cm"/> @@ -439,14 +442,11 @@ <style:table-column-properties style:column-width="11.829cm"/> </style:style> <style:style style:name="Tabelle5.D" style:family="table-column"> - <style:table-column-properties style:column-width="6.616cm"/> + <style:table-column-properties style:column-width="6.325cm"/> </style:style> <style:style style:name="Tabelle5.A1" style:family="table-cell"> <style:table-cell-properties style:vertical-align="middle" fo:padding="0.049cm" fo:border="none"/> </style:style> - <style:style style:name="Tabelle5.B698" style:family="table-cell"> - <style:table-cell-properties fo:padding="0.049cm" fo:border="none"/> - </style:style> <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Table_20_Contents"> <style:text-properties fo:font-size="2pt" style:font-size-asian="2pt" style:font-size-complex="2pt"/> </style:style> @@ -553,14 +553,14 @@ <style:text-properties fo:font-size="2pt" style:font-size-asian="2pt" style:font-size-complex="2pt"/> </style:style> <style:style style:name="P32" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L1"/> - <style:style style:name="P33" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L2"/> + <style:style style:name="P33" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L3"/> <style:style style:name="P34" style:family="paragraph" style:parent-style-name="Text_20_body"> <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:contextual-spacing="false"/> </style:style> <style:style style:name="P35" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L1"> <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:contextual-spacing="false"/> </style:style> - <style:style style:name="P36" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L2"> + <style:style style:name="P36" style:family="paragraph" style:parent-style-name="Text_20_body" style:list-style-name="L3"> <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:contextual-spacing="false"/> </style:style> <style:style style:name="T1" style:family="text"> @@ -585,34 +585,34 @@ </style:style> <text:list-style style:name="L1"> <text:list-level-style-number text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="0.752cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="0.748cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="2.002cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="1.995cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="3.253cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="3.242cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="4.503cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="4.489cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="5.754cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="5.736cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="7.005cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="6.983cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="8.255cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="8.23cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="9.506cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="9.478cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="10.756cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="10.725cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> <text:list-level-style-number text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> - <style:list-level-properties text:space-before="12.007cm" text:min-label-width="0.499cm"/> + <style:list-level-properties text:space-before="11.972cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> </text:list-style> <text:list-style style:name="L2"> @@ -647,6 +647,38 @@ <style:list-level-properties text:space-before="11.972cm" text:min-label-width="0.499cm"/> </text:list-level-style-number> </text:list-style> + <text:list-style style:name="L3"> + <text:list-level-style-number text:level="1" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="0.748cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="2" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="1.995cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="3" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="3.242cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="4" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="4.489cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="5" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="5.736cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="6" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="6.983cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="7" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="8.23cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="8" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="9.478cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="9" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="10.725cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + <text:list-level-style-number text:level="10" text:style-name="Bullet_20_Symbols" style:num-suffix="." style:num-format="a"> + <style:list-level-properties text:space-before="11.972cm" text:min-label-width="0.499cm"/> + </text:list-level-style-number> + </text:list-style> <style:page-layout style:name="pm1"> <style:page-layout-properties fo:page-width="21.001cm" fo:page-height="29.7cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm" fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb" style:layout-grid-color="#c0c0c0" style:layout-grid-lines="20" style:layout-grid-base-height="0.706cm" style:layout-grid-ruby-height="0.353cm" style:layout-grid-mode="none" style:layout-grid-ruby-below="false" style:layout-grid-print="false" style:layout-grid-display="false" style:footnote-max-height="0cm"> <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:line-style="none" style:adjustment="left" style:rel-width="25%" style:color="#000000"/> @@ -951,21 +983,20 @@ </draw:frame> <text:section text:style-name="Sect1" text:name="BgContainer"> <text:p text:style-name="P30">Credits</text:p> - <text:p text:style-name="Text_20_body">1821 individuals contributed to OpenOffice.org (and whose contributions were imported into LibreOffice) or LibreOffice until 2022-12-27 12:51:54.</text:p> + <text:p text:style-name="Text_20_body">1827 individuals contributed to OpenOffice.org (and whose contributions were imported into LibreOffice) or LibreOffice until 2023-01-18 19:44:50.</text:p> <text:p text:style-name="Text_20_body"><text:span text:style-name="T1">*</text:span> marks developers whose first contributions happened after 2010-09-28.</text:p> <text:h text:style-name="Heading_20_2" text:outline-level="2">Developers committing code since 2010-09-28</text:h> - <text:h text:style-name="Heading_20_3" text:outline-level="3">Contributors to bundled templates</text:h> <table:table table:name="Tabelle1" table:style-name="Tabelle1"> <table:table-column table:style-name="Tabelle1.A"/> <table:table-column table:style-name="Tabelle1.B"/> <table:table-column table:style-name="Tabelle1.C"/> - <table:table-column table:style-name="Tabelle1.B"/> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-column table:style-name="Tabelle1.D"/> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Ruediger Timm<text:line-break/>Commits: 82464<text:line-break/>Joined: 2000-10-10</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Caolán McNamara<text:line-break/>Commits: 33969<text:line-break/>Joined: 2000-10-10</text:p> + <text:p text:style-name="Table_20_Contents">Caolán McNamara<text:line-break/>Commits: 34101<text:line-break/>Joined: 2000-10-10</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Kurt Zenker<text:line-break/>Commits: 31752<text:line-break/>Joined: 2000-09-25</text:p> @@ -974,7 +1005,7 @@ <text:p text:style-name="Table_20_Contents">Oliver Bolte<text:line-break/>Commits: 31008<text:line-break/>Joined: 2000-09-19</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Jens-Heiner Rechtien [hr]<text:line-break/>Commits: 28805<text:line-break/>Joined: 2000-09-18</text:p> </table:table-cell> @@ -982,32 +1013,32 @@ <text:p text:style-name="Table_20_Contents">Vladimir Glazunov<text:line-break/>Commits: 25434<text:line-break/>Joined: 2000-12-04</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Stephan Bergmann<text:line-break/>Commits: 20250<text:line-break/>Joined: 2000-10-04</text:p> + <text:p text:style-name="Table_20_Contents">Stephan Bergmann<text:line-break/>Commits: 20306<text:line-break/>Joined: 2000-10-04</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 17006<text:line-break/>Joined: <text:span text:style-name="T2">2011-12-12</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 17149<text:line-break/>Joined: <text:span text:style-name="T2">2011-12-12</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Ivo Hinkelmann<text:line-break/>Commits: 9480<text:line-break/>Joined: 2002-09-09</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Miklos Vajna<text:line-break/>Commits: 9267<text:line-break/>Joined: 2010-07-29</text:p> + <text:p text:style-name="Table_20_Contents">Miklos Vajna<text:line-break/>Commits: 9330<text:line-break/>Joined: 2010-07-29</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Tor Lillqvist<text:line-break/>Commits: 9111<text:line-break/>Joined: 2010-03-23</text:p> + <text:p text:style-name="Table_20_Contents">Tor Lillqvist<text:line-break/>Commits: 9124<text:line-break/>Joined: 2010-03-23</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Michael Stahl<text:line-break/>Commits: 8092<text:line-break/>Joined: 2008-06-16</text:p> + <text:p text:style-name="Table_20_Contents">Michael Stahl<text:line-break/>Commits: 8109<text:line-break/>Joined: 2008-06-16</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Kohei Yoshida<text:line-break/>Commits: 5571<text:line-break/>Joined: 2009-06-19</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Eike Rathke<text:line-break/>Commits: 5230<text:line-break/>Joined: 2000-10-11</text:p> + <text:p text:style-name="Table_20_Contents">Eike Rathke<text:line-break/>Commits: 5240<text:line-break/>Joined: 2000-10-11</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Markus Mohrhard<text:line-break/>Commits: 5203<text:line-break/>Joined: <text:span text:style-name="T2">2011-03-17</text:span></text:p> @@ -1016,23 +1047,23 @@ <text:p text:style-name="Table_20_Contents">Frank Schoenheit [fs]<text:line-break/>Commits: 5008<text:line-break/>Joined: 2000-09-19</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">David Tardon<text:line-break/>Commits: 3648<text:line-break/>Joined: 2009-11-12</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Julien Nabet<text:line-break/>Commits: 3558<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-04</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Julien Nabet<text:line-break/>Commits: 3577<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-04</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 3327<text:line-break/>Joined: <text:span text:style-name="T2">2014-10-30</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 3358<text:line-break/>Joined: <text:span text:style-name="T2">2014-10-30</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Luboš Luňák<text:line-break/>Commits: 3201<text:line-break/>Joined: 2010-09-21</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 3137<text:line-break/>Joined: <text:span text:style-name="T2">2012-06-02</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 3154<text:line-break/>Joined: <text:span text:style-name="T2">2012-06-02</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Hans-Joachim Lankenau<text:line-break/>Commits: 3007<text:line-break/>Joined: 2000-09-19</text:p> @@ -1044,7 +1075,7 @@ <text:p text:style-name="Table_20_Contents">Jan Holesovsky<text:line-break/>Commits: 2671<text:line-break/>Joined: 2009-06-23</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Mathias Bauer<text:line-break/>Commits: 2580<text:line-break/>Joined: 2000-09-20</text:p> </table:table-cell> @@ -1052,18 +1083,18 @@ <text:p text:style-name="Table_20_Contents">Oliver Specht<text:line-break/>Commits: 2549<text:line-break/>Joined: 2000-09-21</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mike Kaganski<text:line-break/>Commits: 2517<text:line-break/>Joined: <text:span text:style-name="T2">2015-04-26</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mike Kaganski<text:line-break/>Commits: 2539<text:line-break/>Joined: <text:span text:style-name="T2">2015-04-26</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Michael Meeks<text:line-break/>Commits: 2483<text:line-break/>Joined: 2004-08-05</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Bjoern Michaelsen<text:line-break/>Commits: 2462<text:line-break/>Joined: 2009-10-14</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Xisco Fauli<text:line-break/>Commits: 2319<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-06</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Xisco Fauli<text:line-break/>Commits: 2336<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-06</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Norbert Thiebaud<text:line-break/>Commits: 2176<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p> @@ -1072,12 +1103,12 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Thomas Arnhold<text:line-break/>Commits: 2176<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-16</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Philipp Lohmann [pl]<text:line-break/>Commits: 2089<text:line-break/>Joined: 2000-09-21</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andras Timar<text:line-break/>Commits: 1976<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-02</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andras Timar<text:line-break/>Commits: 1977<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-02</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Christian Lippka<text:line-break/>Commits: 1805<text:line-break/>Joined: 2000-09-25</text:p> @@ -1086,12 +1117,12 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Matúš Kukan<text:line-break/>Commits: 1712<text:line-break/>Joined: <text:span text:style-name="T2">2011-04-06</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Olivier Hallot<text:line-break/>Commits: 1690<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-25</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Olivier Hallot<text:line-break/>Commits: 1703<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-25</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Armin Le Grand (Allotropia)<text:line-break/>Commits: 1543<text:line-break/>Joined: 2000-09-25</text:p> + <text:p text:style-name="Table_20_Contents">Armin Le Grand (Allotropia)<text:line-break/>Commits: 1548<text:line-break/>Joined: 2000-09-25</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Takeshi Abe<text:line-break/>Commits: 1486<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-08</text:span></text:p> @@ -1100,7 +1131,7 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Matteo Casalin<text:line-break/>Commits: 1476<text:line-break/>Joined: <text:span text:style-name="T2">2011-11-13</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Chris Sherlock<text:line-break/>Commits: 1453<text:line-break/>Joined: <text:span text:style-name="T2">2013-02-25</text:span></text:p> </table:table-cell> @@ -1114,7 +1145,7 @@ <text:p text:style-name="Table_20_Contents">Thomas Lange [tl]<text:line-break/>Commits: 1310<text:line-break/>Joined: 2000-09-22</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Niklas Nebel<text:line-break/>Commits: 1296<text:line-break/>Joined: 2000-09-19</text:p> </table:table-cell> @@ -1128,7 +1159,7 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tamás Zolnai<text:line-break/>Commits: 1208<text:line-break/>Joined: <text:span text:style-name="T2">2012-08-06</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Daniel Rentz [dr]<text:line-break/>Commits: 1206<text:line-break/>Joined: 2000-09-28</text:p> </table:table-cell> @@ -1136,15 +1167,15 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Samuel Mehrbrodt<text:line-break/>Commits: 1134<text:line-break/>Joined: <text:span text:style-name="T2">2011-06-08</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Gabor Kelemen<text:line-break/>Commits: 1093<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-18</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Szymon Kłos<text:line-break/>Commits: 1099<text:line-break/>Joined: <text:span text:style-name="T2">2014-03-22</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Szymon Kłos<text:line-break/>Commits: 1090<text:line-break/>Joined: <text:span text:style-name="T2">2014-03-22</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Gabor Kelemen<text:line-break/>Commits: 1093<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-18</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents">Christian Lohmaier<text:line-break/>Commits: 1080<text:line-break/>Joined: 2008-06-01</text:p> + <text:p text:style-name="Table_20_Contents">Christian Lohmaier<text:line-break/>Commits: 1082<text:line-break/>Joined: 2008-06-01</text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Lionel Elie Mamane<text:line-break/>Commits: 1051<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-15</text:span></text:p> @@ -1156,7 +1187,7 @@ <text:p text:style-name="Table_20_Contents">Petr Mladek<text:line-break/>Commits: 958<text:line-break/>Joined: 2006-10-03</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Noel Power<text:line-break/>Commits: 950<text:line-break/>Joined: 2002-09-24</text:p> </table:table-cell> @@ -1170,7 +1201,7 @@ <text:p text:style-name="Table_20_Contents">Cédric Bosdonnat<text:line-break/>Commits: 882<text:line-break/>Joined: 2009-11-16</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Malte Timmermann [mt]<text:line-break/>Commits: 864<text:line-break/>Joined: 2000-10-10</text:p> </table:table-cell> @@ -1184,12 +1215,12 @@ <text:p text:style-name="Table_20_Contents">Martin Gallwey<text:line-break/>Commits: 827<text:line-break/>Joined: 2000-11-08</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Maxim Monastirsky<text:line-break/>Commits: 817<text:line-break/>Joined: <text:span text:style-name="T2">2013-10-27</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>László Németh<text:line-break/>Commits: 800<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>László Németh<text:line-break/>Commits: 809<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Mikhail Voytenko<text:line-break/>Commits: 793<text:line-break/>Joined: 2001-01-16</text:p> @@ -1198,7 +1229,7 @@ <text:p text:style-name="Table_20_Contents">Carsten Driesner<text:line-break/>Commits: 748<text:line-break/>Joined: 2000-10-06</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Joachim Lingner<text:line-break/>Commits: 745<text:line-break/>Joined: 2000-10-05</text:p> </table:table-cell> @@ -1212,7 +1243,7 @@ <text:p text:style-name="Table_20_Contents">Andre Fischer<text:line-break/>Commits: 730<text:line-break/>Joined: 2001-02-06</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Release Engineering<text:line-break/>Commits: 728<text:line-break/>Joined: 2008-10-02</text:p> </table:table-cell> @@ -1220,13 +1251,13 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Zdeněk Crhonek<text:line-break/>Commits: 714<text:line-break/>Joined: <text:span text:style-name="T2">2016-05-19</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Khaled Hosny<text:line-break/>Commits: 706<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-28</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Khaled Hosny<text:line-break/>Commits: 711<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-28</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> - <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Michael Weghorn<text:line-break/>Commits: 682<text:line-break/>Joined: <text:span text:style-name="T2">2014-09-10</text:span></text:p> + <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Michael Weghorn<text:line-break/>Commits: 695<text:line-break/>Joined: <text:span text:style-name="T2">2014-09-10</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Joerg Skottke [jsk]<text:line-break/>Commits: 678<text:line-break/>Joined: 2008-06-17</text:p> </table:table-cell> @@ -1240,7 +1271,7 @@ <text:p text:style-name="Table_20_Contents">Kai Sommerfeld<text:line-break/>Commits: 651<text:line-break/>Joined: 2000-10-10</text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents">Ingrid Halama<text:line-break/>Commits: 639<text:line-break/>Joined: 2001-01-19</text:p> </table:table-cell> @@ -1254,35 +1285,35 @@ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Rafael Dominguez<text:line-break/>Commits: 606<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-13</text:span></text:p> </table:table-cell> </table:table-row> - <table:table-row table:style-name="TableLine94577660736912"> + <table:table-row table:style-name="TableLine94168711629424"> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Jochen Nitschke<text:line-break/>Commits: 587<text:line-break/>Joined: <text:span text:style-name="T2">2016-02-02</text:span></text:p> </table:table-cell> <table:table-cell table:style-name="Tabelle1.A1" office:value-type="string"> ... etc. - the rest is truncated