summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-09-10VclPixelProcessor2D doesnt need a pimplNoel Grandin
it is module private Change-Id: Ic9e648202f23e4a48e5485237c9956501e9c96da Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139736 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-09-10convert EmbeddedMacros to scoped enumNoel Grandin
Change-Id: I7e24b5ad53853ff7989f262a3b914b2082ac5ec4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139733 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-09-10unique_ptr->optional for AllSettingsNoel Grandin
AllSettings is just a cow_wrapper, so no need to allocate this separately Change-Id: I8f7705d55ab70da209d1383f3812249e0750df5f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139740 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-09-10win: Explicitly cast glyph ID to 16 bitMichael Weghorn
After commit ba02639c9c17d75e73fc2eff83e64c116fcdaeb2 Date: Wed Sep 7 11:00:26 2022 +0200 vcl: Make glyph IDs 32bit , my clang-cl Windows build would otherwise fail as follows: [build CXX] vcl/win/gdi/DWriteTextRenderer.cxx [build CUS] postprocess/images C:/tools/cygwin/home/michael/development/git/libreoffice/vcl/win/gdi/DWriteTextRenderer.cxx(264,39): error: non-constant-expression cannot be narrowed from type 'sal_GlyphId' (aka 'unsigned int') to 'UINT16' (aka 'unsigned short') in initializer list [-Wc++11-narrowing] UINT16 glyphIndices[] = { pGlyph->glyphId() }; ^~~~~~~~~~~~~~~~~ C:/tools/cygwin/home/michael/development/git/libreoffice/vcl/win/gdi/DWriteTextRenderer.cxx(264,39): note: insert an explicit cast to silence this issue UINT16 glyphIndices[] = { pGlyph->glyphId() }; ^~~~~~~~~~~~~~~~~ static_cast<UINT16>( ) 1 error generated. Change-Id: Ifa4fcdd98331378b5d9340f961e0bc4d7e842fe2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139721 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2022-09-10vcl: Use vector instead of array for FontCharMap rangesKhaled Hosny
Change-Id: I8846c89d51cc33022f90c3a9c03bc1560497e651 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139701 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2022-09-10wina11y: Report actual app/toolkit name/versionMichael Weghorn
The previous way of reporting "Hannover" as app name, "3.0" as version and no toolkit name and version looks rather arbitrary. Can be queried e.g. from NVDA's Python console as follows after pressing Keypad_Insert+Ctrl+Z with any LibreOffice UI element focused: >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).appName 'Hannover' >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).appVersion '3.0' >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).toolkitName ' ' >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).toolkitVersion ' ' Report the actual app name and version. For the toolkit use "VCL" as name and the same version that LibreOffice has: >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).appName 'LibreOfficeDev' >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).appVersion '7.5' >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).toolkitName 'VCL' >>> focus.IAccessibleObject.QueryInterface(IA2.IAccessibleApplication).toolkitVersion '7.5' Change-Id: I3c6bdb79e6b945c0f9707bfa7bada0fb456d6e05 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139743 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2022-09-10vcl: fix crash in SalInstanceWidget::set_busy_cursor()Miklos Vajna
Crashreport signature: Fatal signal received: SIGSEGV code: 128 for address: 0x0 program/libmergedlo.so vcl::Window::LeaveWait() vcl/source/window/mouse.cxx:640 program/libsclo.so ScSpellingEngine::ShowTableWrapDialog() sc/source/ui/view/spelleng.cxx:315 program/libsclo.so ScConversionEngineBase::FindNextConversionCell() sc/source/ui/view/spelleng.cxx:168 program/libsclo.so ScSpellDialogChildWindow::GetNextWrongSentence(bool) /opt/rh/devtoolset-10/root/usr/include/c++/10/bits/unique_ptr.h:173 Change-Id: I298789211d6ee038bd5a9a7bff7cf9ae4f132a91 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139731 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2022-09-09convert CursorMoveDirection to scoped enumNoel Grandin
Change-Id: I9ad59207fab6d3988b8c8106aec6c4fac21dc9d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139734 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-09-09Fix typoAndrea Gelmini
Change-Id: I764af470a6bff3ec82182d32fd971e94fa2f725a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139732 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-09-09GetCurNumFmtInfo is always called with the same context as given in ctorCaolán McNamara
Change-Id: Ic3aefaa5ddd26b5cb44bfc299f7ae7188f205d17 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139638 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09always pass ScInterpreterContext to ScValueIteratorCaolán McNamara
its available at every call site Change-Id: I764962d1d2330c414e02ed215b4a0c5be2979145 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139637 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09crashtesting: threaded assert on loading forum-de3-3100.odsCaolán McNamara
use SetInterpreterContext like I see in similar places to avoid the need to call ScDocument::GetFormatTable #9 0x00007fd35b1af283 in ScDocument::GetFormatTable() const (this=this@entry=0x5573153bf1d0) at sc/source/core/data/documen2.cxx:463 __PRETTY_FUNCTION__ = "SvNumberFormatter* ScDocument::GetFormatTable() const" #10 0x00007fd35b196f57 in ScAttrArray_IterGetNumberFormat(sal_uInt32&, ScAttrArray const*&, SCROW&, ScAttrArray const*, SCROW, ScDocument const&, ScInterpreterContext const*) (nFormat=@0x7fd354458b38: 0, rpArr=@0x7fd354458b30: 0x0, nAttrEndRow=@0x7fd354458b54: 0, pNewArr=0x557315063910, nRow=nRow@entry=30, rDoc=..., pContext=0x0) at sc/source/core/data/dociter.cxx:80 nRowStart = 30 nRowEnd = 30 pPattern = 0x557316c093f0 #11 0x00007fd35b19e5b7 in ScValueIterator::GetThis(double&, FormulaError&) (this=this@entry=0x7fd354458b20, rValue=@0x7fd354458b00: 0, rErr=@0x7fd354458af8: FormulaError::NONE) at sc/source/core/data/dociter.cxx:196 bNextColumn = <optimized out> pCol = 0x557316aca050 nCurRow = 30 nLastRow = 32723 #12 0x00007fd35b19e8c4 in ScValueIterator::GetNext(double&, FormulaError&) (this=<optimized out>, this@entry=0x7fd354458b20, rValue=@0x7fd354458b00: 0, rErr=@0x7fd354458af8: FormulaError::NONE) at sc/source/core/data/dociter.cxx:297 #13 0x00007fd35b6a5307 in ScInterpreter::GetNumberSequenceArray(unsigned char, std::__debug::vector<double, std::allocator<double> >&, bool) (this=this@entry=0x5573169d9900, nParamCount=nParamCount@entry=1 '\001', rArray=std::__debug::vector of length 2, capacity 200 = {...}, bConvertTextInArray=bConvertTextInArray@entry=false) at sc/source/core/tool/interpr3.cxx:3986 nCellCount = <optimized out> nErr = FormulaError::NONE fCellVal = 0 aValIter = {mrDoc = @0x5573153bf1d0, pContext = 0x0, pAttrArray = 0x0, nNumFormat = 0, nNumFmtIndex = 0, maStartPos = {nRow = 0, nCol = 0, nTab = 4, static detailsOOOa1 = {eConv = formula::FormulaGrammar::CONV_OOO, nRow = 0, nCol = 0}}, maEndPos = {nRow = 199, nCol = 0, nTab = 4, static detailsOOOa1 = {eConv = formula::FormulaGrammar::CONV_OOO, nRow = 0, nCol = 0}}, mnCol = 0, mnTab = 4, nAttrEndRow = 0, mnSubTotalFlags = SubtotalFlags::NONE, nNumFmtType = SvNumFormatType::UNDEFINED, bNumValid = false, bCalcAsShown = true, bTextAsZero = false, mpCells = 0x557316aca280, maCurPos = {first = {<mdds::mtv::soa::detail::iterator_updater<mdds::mtv::soa::multi_type_vector<mdds::mtv::custom_block_func3<mdds::mtv::default_element_block<52, svl::SharedString>, mdds::mtv::noncopyable_managed_element_block<53, EditTextObject>, mdds::mtv::noncopyable_managed_element_block<54, ScFormulaCell> >, sc::CellStoreTrait>::const_iterator_trait>> = {m_cur_node = {type = 10, position = 30, size = 1, data = 0x557316d734d0, __private_data = {parent = 0x557316aca280, block_index = 1}}, m_pos = {position_iterator = 30, size_iterator = 1, element_block_iterator = 0x557316d734d0}, m_end = {position_iterator = 7378697629483820646, size_iterator = 7378697629483820646, element_block_iterator = 0x6666666666666666}}, <No data fields>}, second = 0}} eStackType = <optimized out> aAdr = {nRow = 0, nCol = 0, nTab = 0, static detailsOOOa1 = {eConv = formula::FormulaGrammar::CONV_OOO, nRow = 0, nCol = 0}} aRange = {aStart = {nRow = 0, nCol = 0, nTab = 4, static detailsOOOa1 = {eConv = formula::FormulaGrammar::CONV_OOO, nRow = 0, nCol = 0}}, aEnd = {nRow = 199, nCol = 0, nTab = 4, static detailsOOOa1 = {eConv = formula::FormulaGrammar::CONV_OOO, nRow = 0, nCol = 0}}} bIgnoreErrVal = false nParam = 0 nRefInList = 0 #14 0x00007fd35b6aa9ed in ScInterpreter::CalculateSmallLarge(bool) (this=this@entry=0x5573169d9900, bSmall=bSmall@entry=true) at sc/source/core/tool/interpr3.cxx:3657 nCol = 1 nRow = 1 aArray = std::__debug::vector of length 1, capacity 1 = {1} nRankArraySize = 1 __PRETTY_FUNCTION__ = "void ScInterpreter::CalculateSmallLarge(bool)" aRankArray = std::__debug::vector of length 1, capacity 1 = {1} aSortArray = std::__debug::vector of length 2, capacity 200 = {1, 21} nSize = <optimized out> #15 0x00007fd35b6abac8 in ScInterpreter::ScSmall() (this=this@entry=0x5573169d9900) at sc/source/core/tool/interpr3.cxx:3717 #16 0x00007fd35b6cd929 in ScInterpreter::Interpret() (this=this@entry=0x5573169d9900) at sc/source/core/tool/interpr4.cxx:4373 bGotResult = <optimized out> nRetTypeExpr = SvNumFormatType::NUMBER nRetIndexExpr = 0 nErrorFunction = 0 nErrorFunctionCount = 0 aErrorFunctionStack = std::__debug::vector of length 0, capacity 0 nStackBase = 0 aTokenMatrixMapIter = Python Exception <class 'AttributeError'> 'NoneType' object has no attribute 'pointer': {_M_node = 0x5573169d99c8} eOp = ocSmall __PRETTY_FUNCTION__ = "formula::StackVar ScInterpreter::Interpret()" bForcedResultType = <optimized out> p = <optimized out> eType = <optimized out> #17 0x00007fd35b3c6ed1 in ScFormulaCell::InterpretTail(ScInterpreterContext&, ScFormulaCell::ScInterpretTailParameter) (this=0x55731309d8f0, rContext=..., eTailParam=eTailParam@entry=ScFormulaCell::SCITP_NORMAL) at sc/source/core/data/formulacell.cxx:1945 pScopedInterpreter = std::unique_ptr<class ScInterpreter> = {get() = 0x0} pInterpreter = 0x5573169d9900 nOldErrCode = FormulaError::NONE bContentChanged = <optimized out> aNewResult = {static MULTILINE_UNKNOWN = 0 '\000', static MULTILINE_FALSE = 1 '\001', static MULTILINE_TRUE = 2 '\002', {mfValue = 6.9438766800236802e-310, mpToken = 0x7fd3544591e8}, mbToken = false, mbEmpty = false, mbEmptyDisplayedAsString = false, mbValueCached = true, meMultiline = 3 '\003', mnError = 28442} bOldRunning = false bForceNumberFormat = <optimized out> aRecursionCounter = {rRec = @0x557316da2b40, bStackedInIteration = false, cell = 0x55731309d8f0} #18 0x00007fd35b0c84cb in ScColumn::CalculateInThread(ScInterpreterContext&, int, unsigned long, unsigned long, unsigned int, unsigned int) (this=<optimized out>, rContext=..., nRow=nRow@entry=0, nLen=nLen@entry=30, nOffset=nOffset@entry=0, nThisThread=nThisThread@entry=0, nThreadsTotal=48) at sc/source/core/data/column2.cxx:3218 Change-Id: Ifeddbfda8afe47c3754ed1fcab836dfd2c8f38ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139636 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09update creditsChristian Lohmaier
Change-Id: I2b1e2e53b0688369e9ebc480ab296ace4cdb804b
2022-09-09Update git submodulesChristian Lohmaier
* Update translations from branch 'master' to d2af5ccdc269827d9738b6ed08c8166bfd5c91cf - update translations for 7.4.1 rc2 and force-fix errors using pocheck Change-Id: Iead6e205e7824b0e4c5f7001661275410fe33360
2022-09-09Related: tdf#150312 Assert a defined name's non-empty table:base-cell-addressEike Rathke
Change-Id: Iaf377ae51c20e30e0362f5dc6f66172c544483d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139728 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2022-09-09Related: tdf#150312 "Repair" broken table:base-cell-address of defined namesEike Rathke
... to not lose them entirely, though this may shift relative addressing, which may be equally bad because there is no indication and can go unnoticed. Most defined ranges use absolute addressing though and formula expressions are rarely affected. Change-Id: If57ff9274e673a4eb43c656698f6ed43e8415458 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139706 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2022-09-09tdf#150312 unit testEike Rathke
Change-Id: I140d94b4022dafe4f54b45d3d335c881d967ea56 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139725 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2022-09-09Resolves: tdf#150312 Move base-cell-address to a valid sheet upon deletionEike Rathke
... and adjust references accordingly. For ScTokenArray::AdjustReferenceOnDeletedTab() that now also moves the base of the first deleted sheet not only after, which was a one-off before. Change-Id: I4c19e8b8a7318ba03b6a7d0b2dfaae5d05a51a29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139720 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2022-09-09sw: avoid divide by zero in SwDoc::AdjustCellWidthXisco Fauli
See https://crashreport.libreoffice.org/stats/signature/SwDoc::AdjustCellWidth(SwCursor%20const%20&,bool,bool) Change-Id: I98b90dcbed6b6f3ea0a7d1668a5c248f39e7a2a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139723 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09tdf#150732 ReportBuilder: Moving fields from one section to another crashesNoel Grandin
regression from commit 8611f6e259b807b4f19c8dc0eab86ca648891ce3 Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Thu May 27 10:27:46 2021 +0200 ref-count SdrObject Fixes 2 issues (1) where I removed some code that we need (2) where the OUnoObject constructor was deleting the object is was constructing Note that this only fixes the crash that Julien saw, not the underlying problem that this tdf bug reports. That bug appears to predate my commit. Change-Id: I3878ef460dedc3c2a6c86b88fce9d155e79bc0b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139714 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-09-09tdf#150719 PPTX import: fix hyperlink format (lost underline)Tibor Nagy
Hypertext lost its formatting partially: e.g. underline character setting lost, except on the last word. Follow-up to commit commit a761a51d9db3a2771ca9fd6ab233c513aa5d8ecf "tdf#149311 PPTX export: fix internal hyperlink on texts". Clean-up of commit 855a56fea4561135a63cb729d7a625a950b210e7 "tdf#148965 PPTX import: fix internal hyperlinks on shapes" and commit cec1f712c87e557e1b7313e0dbef4a635f69d953 "tdf#144918 PPTX import: fix internal hyperlink on shapes" and commit 7eb0e52527e729a21973e70d5be8e0a6779ec748 "tdf#142648 PPTX: import long slide names to avoid broken link export". Change-Id: I1de8b06361c7b9529a70a039e194db88460cc27b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138669 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2022-09-09cache these tarballs for oss-fuzz build tooCaolán McNamara
Change-Id: I97b4c6996886037f1b042d77ba9dc61c2ebc765a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139712 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09writerfilter: avoid divide by zeroXisco Fauli
in DomainMapperTableManager::endOfRowAction() See https://crashreport.libreoffice.org/stats/signature/writerfilter::dmapper::DomainMapperTableManager::endOfRowAction() Probably since 116cadb5d2582532c69677a2f8499e8e9b7b9b80 "tdf#59274 DOCX import: fix tables with incomplete grid" Change-Id: I12f2842107885fbbc62be2186511102f642e3efc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139717 Tested-by: Jenkins Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09ofz: Undefined-shiftCaolán McNamara
Change-Id: Ida81135280ff61c3a8e96e8f5ed977959e169f61 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139716 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09ofz#51149 avoid TimeoutCaolán McNamara
Change-Id: I7709e69154d231e597d364210bc876afca3df4a3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139719 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09rearrange to have a single ConvertTable callCaolán McNamara
Change-Id: Ic48ebac04d6e95df8748f38b1f23a8295fba77b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139718 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-09Allow to pass LIBCPP_DEBUG into configureStephan Bergmann
...(e.g., by setting it in autogen.input). I need that with some of my Clang builds until the issue discussed in the mail thread <https://discourse.llvm.org/t/pack-expansion-bug/64910> "Pack expansion bug?" is sorted out. (Make sure to even allow passing in an empty > LIBCPP_DEBUG= even though it turned out I needed a non-empty > LIBCPP_DEBUG=-D_LIBCPP_ENABLE_ASSERTIONS=0 in my case.) Change-Id: I353ab535568ebd5add93485c219fe2a06fde0565 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139711 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-09-09Update git submodulesMiklos Vajna
* Update helpcontent2 from branch 'master' to 18621b8577dda9415f471809c53db623059f8b51 - Add initial help for the sw contentcontroldlg This dialog always has a single checkbox, but the 3 other frames are only visible for certain content control types, document what they are. Change-Id: Id54ac041b0e038c1205036eac40562616777c22f Reviewed-on: https://gerrit.libreoffice.org/c/help/+/139710 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-09-09tdf#150876 sw: track new rows inserted after a tracked row insertionLászló Németh
New row insertions after an already tracked row insertion weren't tracked. Regression from commit b251228d2e5e2832e0a617213173e8841f5b7428 "tdf#150666 sw: allow to delete tracked table row insertions" Follow-up to commit dbc82c02eb24ec1c97c6ee32069771d8deb394f9 "tdf#143358 sw: track insertion of empty table rows". Change-Id: Ic365e70aa7808237a1bd69d0101a098ae70e8813 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139594 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2022-09-09tdf#148214 RTF import: avoid fake paragraph for \page when possibleMiklos Vajna
The bugdoc has 2 pages, an explicit page break between them and the first page has enough content that an additional fake paragraph at the end would lead to a 3rd, unwanted page. The fake paragraph was introduced in commit 7b58fc3dafc789aa55fff5ffef6ab83c3aa8b6e0 (fdo#48104 fix RTF import of \page in inner groups, 2012-04-02), because dmapper ignores more than 1 page breaks in a paragraph. Fix the problem by only inserting the fake paragraph in case the "page break before" paragraph property would have no effect (very first paragraph in the document) or we already sent characters (para props are lazy-sent on the first character). This keeps existing cases working, but avoids the unwanted fake paragraph in the bugdoc. I suspect the root cause is that dmapper doesn't handle multiple page breaks in a paragraph -- once that's fixed, this parBreak() call can be completely removed. Adjusted tests: - testImportHeaderFooter: this asserted the presence of fake paragraphs, which are now gone in the easy case, so this change is an improvement - testTdf133437: no visual difference before/after, probably the test intent was just "make sure this page has several shapes", the exact number isn't that interesting Change-Id: Idd2b8a70b4122eb08d9d305018d384dc0bbb276a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139704 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-09-09Simplify by using replaceAll in a loop (winaccessibility/AccTextBase)Julien Nabet
Change-Id: I68c895033d26c81c76e680d2042aac941d56d213 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139707 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-09-09tdf#150604 related: Label Navigator context menu delete entryJim Raykowski
specific to the content entry type Change-Id: I44ff745d8e61bcf24fee351cfa4148ae3ad31dcb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139628 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2022-09-08vcl: Drop CmapResult indirectionKhaled Hosny
Change-Id: I3b1beb5e976a255ef8ecdf8670b1e59547ec5ea4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139700 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2022-09-08Fix location of ScDocShell in commentJulien Nabet
Change-Id: I316d967427b6b86d3a2dbea46f535405f2966a1f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139705 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-09-08tdf#150845 fix crash in writer Form->TextObjectNoel Grandin
regression from commit 8611f6e259b807b4f19c8dc0eab86ca648891ce3 Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Thu May 27 10:27:46 2021 +0200 ref-count SdrObject Change-Id: I66370566562a1275c21c24523a505704508d3d09 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139703 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-09-08Fix CppunitTest_sw_core_layout on non-default DPIMike Kaganski
Change-Id: I84f21b165628577ad680c98b0f28ac6956328833 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139699 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-09-08tdf#150846: vcl_pdfexport: Add unittestXisco Fauli
Change-Id: I16a7326a0164e319cf97b1a34849a3134232364d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139646 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-09-08Fix CppunitTest_sw_ooxmlexport15 on non-default DPIMike Kaganski
Change-Id: Iba28b332e3f9b5c03a94f563bee9c5ecdf96a61a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139692 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-09-08Simplify by using replace instead of replaceAt in loop in connectivity (3)Julien Nabet
Change-Id: If7517356959d4720bbe07acea822ec835a681a17 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139456 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-09-08Simplify by using replace instead of replaceAt in loop in connectivity (4)Julien Nabet
Change-Id: Iab92f1ee2be1e5b9ab3fa005890acfe9acbf3732 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139460 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-09-08Simplify by using replace instead of replaceAt in loop in connectivity (2)Julien Nabet
Change-Id: I9bbe005f0bd1399b9c43cebe0e4c58d3ec88087c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139455 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-09-08Fix CppunitTest_vcl_pdfexport on non-default DPIMike Kaganski
Change-Id: I6cfeed3059246d01e56b1b55c8c85f89256c7340 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139698 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-09-08DOCX import: avoid duplicated bookmarks in copied header/footer textMiklos Vajna
In case a DOCX document has 2 sections and the 2nd section has a linked header, writerfilter/ copies the header text from the 1st page style to the 2nd page style. This leads to duplicated bookmarks in the doc model, which causes an unexpected increase in bookmark count on export. This went wrong with 8885bdf2f564bb7b56181c50baf39ff99d551ec9 (tdf#128106 sw: copy bookmarks at start if whole node is copied, 2021-08-27), previously at least bookmarks at the start of the header were not duplicated, though that was also inconsistent, since other bookmarks were still duplicated. Interestingly the DOC import doesn't have this problem, because it first copies header text and only later imports the bookmarks. Fix the problem by introducing a new SwCopyFlags::SkipBookmarks flag, add UNO API to set this from writerfilter/ code and skip copying bookmarks (but not other marks) in sw::CopyBookmarks() accordingly. Copying other marks is still needed, because e.g. fieldmarks have a mark and a field, and it would be inconsistent to copy the field, but not the mark. Note that the text is still duplicated in header/footer, linked header/footer is a missing feature on the Writer side. Change-Id: I40e18f231ef2c0d91ae9582621684ef5b6284904 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139697 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2022-09-08tdf#150808: vcl_graphic_test: Add unittestXisco Fauli
Change-Id: Icc0f323606d5702abe03e1537e42fbd78dc6b297 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139651 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-09-08Fix CppunitTest_sd_export_tests-ooxml3 on non-default DPIMike Kaganski
Change-Id: Iaf9a36c63f2bca9b065b2370e88c5e86c5f06888 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139677 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-09-08Fix CppunitTest_sd_png_export_tests on non-default DPIMike Kaganski
Change-Id: Id969646a82b9a408fff111c794a6096d8e857db8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139678 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-09-08vcl: Drop now unused ParseCMAP()Khaled Hosny
Change-Id: I2140b7b48ee4cc46a4a6e8e4719f3ce78a600829 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139624 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2022-09-08vcl: Get FontCharMap from HarfBuzzKhaled Hosny
Implement PhysicalFontFace::GetFontCharMap() on top hb_face_collect_unicodes() so that it is the same charmap as what shaping code will actually use. Change-Id: I486e9d296cec5bd897e4f628d14a2f19e63b70b5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139623 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2022-09-08vcl: Pass FontCharMap to OpenTTFont*() when possibleKhaled Hosny
Avoids parsing “cmap” table again to get it. Change-Id: I19eb882efd8c8aaaeb2fa770405ef2d69d985104 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139622 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>
2022-09-08vcl: Sort fonts in workben/listfontsKhaled Hosny
I only need a stable font order, so I can compare the output across invocations. Change-Id: I8141fd0425cdb638b0bf4bb4faa1889200bf8578 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139621 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@aliftype.com>