summaryrefslogtreecommitdiff
path: root/sw
AgeCommit message (Collapse)Author
2024-12-08cid#1636664 Dereference after null checkCaolán McNamara
Change-Id: I916212471a80417a582192920427999ee6a425d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178078 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-12-08cid#1607671 Data race conditionCaolán McNamara
Change-Id: Id2e87001b77087a072705ba7ffa1a2190220a082 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178074 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-08tdf#79298 - FORMATTING: Copy/paste: import strikethrough attributeAndreas Heinisch
Change-Id: I0539e87f2a87f869e234ed7c944b9da6bd0e82bf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177847 Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de> Tested-by: Jenkins
2024-12-07Simplify a bitMike Kaganski
Change-Id: Ie2b96e099a0507e14ad8e79276abdbe0f21d35f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178040 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-12-07cid#1635776 Overflowed constantCaolán McNamara
there is intended to be no logic change here, just rearrangement and acknowledgement that SwOutlineNodesInline::Seek_Entry always sets nEndPosInline to some value. Change-Id: I10d694e20c8619ae297a61f612590556c9a9effa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178037 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-12-07cid#1636579 Dereference after null checkCaolán McNamara
and cid#1636580 Dereference after null check cid#1636581 Dereference after null check Change-Id: I856876a99a0bbccf27055d2db0dd24f7f040d3af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178036 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-07weld: Rename weld::Treeview selection signal/connectMichael Weghorn
Rename weld::TreeView member + methods to clarify that these are about selection changes: * m_aChangeHdl to m_aSelectionChangedHdl, * signal_changed to signal_selection_changed * connect_changed to connect_selection_changed In GtkInstanceTreeview, also rename the related methods calling signal_selection_changed accordingly for consistency. Change-Id: I299d7930484677395a0bdd0ff105df18688f2e04 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178023 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-12-07tdf#152299 - Remove unused define(s) from C/C++ filesBogdan Buzea
Change-Id: I54460a95759ab8e2073c8ecab4e37ff15193a4e9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177176 Tested-by: Jenkins Reviewed-by: Simon Chenery <simon_chenery@yahoo.com> Reviewed-by: Hossein <hossein@libreoffice.org>
2024-12-06crashtesting: failure to reimport forum-it-2308.odt rtf exportCaolán McNamara
Change-Id: I9908dea4aa822b7793ece91874de0282239bd17b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177988 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-06sw: layout: ignore Keep-With-Next on hidden frames, part3Michael Stahl
SwTabFrame: :MakeAll(), SwRowFrame::ShouldRowKeepWithNext() Change-Id: I7cb6e558dc05736658a9bc75d6c735e6a47062b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177977 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-12-06sw: layout: ignore Keep-With-Next on hidden frames, part2Michael Stahl
SwFrame::PrepareMake(), SwContentFrame::MakeAll(), SwContentFrame::WouldFit_() Change-Id: I2a909ac6d147668dddece97bd99e31fdddcf20eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177976 Tested-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-12-06sw: layout: ignore Keep-With-Next on hidden frames, part1Michael Stahl
When a frame is hidden, don't consider it when evaluating keep-with-next attributes - this was the case for content in hidden sections before commit 0c96119895b347f8eb5bb89f393351bd3c02b9f1 ~SwFrameNotify() invalidating position of hidden frame with keep attribute causes layout loops. Also skip hidden frames in SwFlowFrame::IsKeepFwdMoveAllowed(), SwFlowFrame::CheckKeep(), SwFlowFrame::IsPrevObjMove(), SwFlowFrame::MoveBwd(), CalcContent(). Change-Id: I68556ba0a8e016d962399f3ce199e5eda0378867 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177975 Tested-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-12-06tdf#164095 sw: fix missing top margin on paragraph after changing page styleMiklos Vajna
Open the bugdoc, go to the page after the section break, there is a top margin for the first paragraph there in Word, but not in Writer. This went wrong in commit abd90828cf101581a07b9d1c371a8c3156521e9f (tdf#160952 sw: ignore top margin of para on non-first pages with newer DOCX, 2024-05-14), where it seemed that all implicit and explicit page breaks want to ignore that top margin for the first paragraph. Turns out this is more complex: implicit breaks and page breaks should be followed by an ignore, but not paragraphs after "section break (next page)". So restore the margins for the RES_PAGEDESC, but continue to have them for RES_BREAK & implicit breaks. Change-Id: If1fcf3077b81a705d3587bdae422dcfa16f1c17c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177973 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-12-06tdf#160621 Variable field dialog size of value fieldOliver Specht
The size of the value field is now set to 5 rows. Change-Id: I808ffbb64d71a0707857cf80d1c0b73419ac7b90 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177893 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-12-06tdf#159549 sw: fix ODF import of newly colliding Body Text stylesMichael Stahl
Commit c83d241effbd09491e9f96d3e435ab91700f58b0 "tdf#154933 Rename "Text Body" para style to "Body Text"" introduced a regression when importing certain ODF documents, but the problem is actually pre-existing. What happens is that first the built-in "Text body" style is created, and then a non-built-in style with the same translated name as "Text body" is imported, and instead of creating a new style, the built-in one is found and used, and so its properties are overwritten. The root cause is that SwStyleNameMapper::FillProgName() and in particular SwStyleNameMapper::FillUIName() are defined poorly, ever since they were introduced in 2001 in commit 4fbc9dd48b7cebb304010e7337b1bbc3936c7923 It becomes obvious relatively quickly that the way style names work is that at the UNO API level, the "ProgName" (internal, non-localised) names are used, and at the core document level, the "UIName" (localised) names are used. This is in itself questionable - why is the translation from ProgName to UIName not done in the UI? - but also very expensive to change now. So then the UNO services are responsible for translating between ProgName and UIName. But the 2 functions don't do that properly; both need to check if the given name is a known ProgName *or* a known UIName, and rename it in case it collides with a known target name; also the 2 functions need to cancel each other out, not add " (user)" at the end in both directions. Fixing this causes numerous tests to fail, due to: 1. the UNO services calling themselves with already converted style names, which are then translated a second time, which fails now. (or calling the wrong function like SwXStyleFamily::getByIndex()) 2. many tests call the UNO API with UINames instead of ProgNames 3. somehow the writerfilter import is also changed, causing failures in e.g. testTdf113182 and testTdf104492 4. buggy code elsewhere (lcl_getUsedPageStyles()), problem similar to 1., for PageDescs 5. potentially more buggy code yet to be discovered (definitely table styles, forgot which test that was) So limit this fix for now to only paragraph styles, and don't do it in writerfilter import, now at least sw.check passes. Change-Id: I5cbdf3e174622e83f9af8787c3671b88c0e37bac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177858 Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Tested-by: Jenkins
2024-12-06add assert in SwNodes::ForEachNoel Grandin
to catch any dodgy code Change-Id: Iffd0612b28871c864f103634a40d13b82160d1ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177955 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-06tdf#119840 small tweaksNoel Grandin
Change-Id: Ie2c7a9633ee62bc1c4c0ad821d5ff1ace71fc15d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177928 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-05crashtesting: HLINK_MARK embedded null import from forum-mso-en4-7137.docCaolán McNamara
which causes problems on export to docx. Sanitize at the original import. Change-Id: I8b9fa86465c455fe872c41386889dc54e38eb9ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177904 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-05LOK: don't recreate the dialogs of an old view when loading new viewsPranam Lashkari
follow up for f5ebf512ccd3d5ae3af5fe706b411a85fa19182d now same actions are performed on all the dialogs Change-Id: I6531a766327dda106770a2c513ebd492dea7c655 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176933 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> (cherry picked from commit 2fba6df7242586870988b62909156538b42c2bc0) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177892 Tested-by: Jenkins
2024-12-05crashtesting: HLINK embedded null import from ooo98294-1.docCaolán McNamara
which causes problems on export to docx. Sanitize at the original import. Change-Id: I3b5521dac6a2b6926db6362d33500b11f0a69098 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177869 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-05Get SwFieldType after broadcastMike Kaganski
A crash was reported in HasOnlyOneListener, with the following call stack: ntdll.dll!KiUserExceptionDispatch() swlo.dll!SwModify::HasOnlyOneListener() Line 204 swlo.dll!SwFormatField::~SwFormatField() Line 142 swlo.dll!SwHistorySetTextField::`scalar deleting destructor'(unsigned int) swlo.dll!std::default_delete<SwHistoryHint>::operator()(SwHistoryHint *) Line 3090 swlo.dll!std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>::{dtor}() Line 3198 swlo.dll!std::destroy_at(std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>> * const) Line 311 swlo.dll!std::_Default_allocator_traits<std::allocator<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>>>::destroy(std::allocator<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>> &) Line 688 swlo.dll!std::_Destroy_range(std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>> * _First, std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>> * const) Line 905 swlo.dll!std::vector<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>,std::allocator<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>>>::_Destroy(std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>> * _Last, std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>> *) Line 1667 swlo.dll!std::vector<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>,std::allocator<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>>>::_Tidy() Line 1751 swlo.dll!std::vector<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>,std::allocator<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>>>::~vector<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>,std::allocator<std::unique_ptr<SwHistoryHint,std::default_delete<SwHistoryHint>>>>() Line 699 swlo.dll!SwUndoSaveContent::~SwUndoSaveContent() Line 740 swlo.dll!SwUndoDelete::~SwUndoDelete() Line 633 swlo.dll!SwUndoDelete::`scalar deleting destructor'(unsigned int) svllo.dll!std::default_delete<SfxUndoAction>::operator()(SfxUndoAction *) Line 3090 svllo.dll!std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>::{dtor}() Line 3198 svllo.dll!std::destroy_at(MarkedUndoAction * const) Line 311 svllo.dll!std::_Default_allocator_traits<std::allocator<MarkedUndoAction>>::destroy(std::allocator<MarkedUndoAction> &) Line 688 svllo.dll!std::_Destroy_range(MarkedUndoAction * _First, MarkedUndoAction * const) Line 905 svllo.dll!std::vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>::_Destroy(MarkedUndoAction * _Last, MarkedUndoAction *) Line 1667 svllo.dll!std::vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>::_Tidy() Line 1751 svllo.dll!std::vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>::~vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>() Line 699 svllo.dll!SfxUndoArray::{dtor}() Line 1389 svllo.dll!SfxListUndoAction::~SfxListUndoAction() Line 1318 svllo.dll!SfxListUndoAction::`vector deleting destructor'(unsigned int) svllo.dll!std::default_delete<SfxUndoAction>::operator()(SfxUndoAction *) Line 3090 svllo.dll!std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>::{dtor}() Line 3198 svllo.dll!std::destroy_at(MarkedUndoAction * const) Line 311 svllo.dll!std::_Default_allocator_traits<std::allocator<MarkedUndoAction>>::destroy(std::allocator<MarkedUndoAction> &) Line 688 svllo.dll!std::_Destroy_range(MarkedUndoAction * _First, MarkedUndoAction * const) Line 905 svllo.dll!std::vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>::_Destroy(MarkedUndoAction * _Last, MarkedUndoAction *) Line 1667 svllo.dll!std::vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>::_Tidy() Line 1751 svllo.dll!std::vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>::~vector<MarkedUndoAction,std::allocator<MarkedUndoAction>>() Line 699 svllo.dll!SfxUndoArray::{dtor}() Line 1389 svllo.dll!SfxListUndoAction::~SfxListUndoAction() Line 1318 svllo.dll!SfxListUndoAction::`vector deleting destructor'(unsigned int) svllo.dll!std::default_delete<SfxUndoAction>::operator()(SfxUndoAction *) Line 3090 svllo.dll!std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>::{dtor}() Line 3198 svllo.dll!std::destroy_at(std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>> * const) Line 311 svllo.dll!std::_Default_allocator_traits<std::allocator<std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>>>::destroy(std::allocator<std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>> &) Line 688 svllo.dll!std::_Destroy_range(std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>> * _First, std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>> * const) Line 905 svllo.dll!std::vector<std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>,std::allocator<std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>>>::_Destroy(std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>> * _Last, std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>> *) Line 1667 svllo.dll!std::vector<std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>,std::allocator<std::unique_ptr<SfxUndoAction,std::default_delete<SfxUndoAction>>>>::clear() Line 1442 svllo.dll!svl::undo::impl::UndoManagerGuard::~UndoManagerGuard() Line 325 svllo.dll!SfxUndoManager::ImplClearRedo_NoLock(const bool i_currentLevel) Line 468 swlo.dll!sw::DocumentContentOperationsManager::InsertPoolItem(const SwPaM & rRg, const SfxPoolItem & rHt, const SetAttrMode nFlags, const SwRootFrame * pLayout, SwTextAttr * * ppNewTextAttr) Line 3694 swlo.dll!SwXTextField::attach(const com::sun::star::uno::Reference<com::sun::star::text::XTextRange> & xTextRange) Line 1972 swlo.dll!SwXText::insertTextContent(const com::sun::star::uno::Reference<com::sun::star::text::XTextRange> & xRange, const com::sun::star::uno::Reference<com::sun::star::text::XTextContent> & xContent, unsigned char bAbsorb) Line 606 mscx_uno.dll!`anonymous namespace'::cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy * pThis, bridges::cpp_uno::shared::VtableSlot aVtableSlot, _typelib_TypeDescriptionReference * pReturnTypeRef, long nParams, _typelib_MethodParameter * pParams, void * pUnoReturn, void * * pUnoArgs, _uno_Any * * ppUnoExc) Line 214 mscx_uno.dll!unoInterfaceProxyDispatch(_uno_Interface * pUnoI, const _typelib_TypeDescription * pMemberTD, void * pReturn, void * * pArgs, _uno_Any * * ppException) Line 430 binaryurplo.dll!binaryurp::IncomingRequest::execute_throw(binaryurp::BinaryAny * returnValue, std::vector<binaryurp::BinaryAny,std::allocator<binaryurp::BinaryAny>> * outArguments) Line 239 binaryurplo.dll!binaryurp::IncomingRequest::execute() Line 79 binaryurplo.dll!request(void * pThreadSpecificData) Line 84 cppu3.dll!cppu_threadpool::JobQueue::enter(const void * nDisposeId, bool bReturnWhenNoJob) Line 101 cppu3.dll!cppu_threadpool::ORequestThread::run() Line 169 cppu3.dll!threadFunc(void * param) Line 190 sal3.dll!oslWorkerWrapperFunction(void * pData) Line 67 I don't know why pType->Which() succeeded before the broadcast and reset, and pType->HasOnlyOneListener() crashed; field destructors themselves do not seem to destroy their types (except SwDBField, which is handled here explicitly). My blind guess is, that a change could happen in broadcast. Change-Id: I5c7f07da2e1283510bce3a3e3e80b6f8d849f38b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177854 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-12-05tdf#119840 speed up SearchForStyleAnchorNoel Grandin
no need to copy things to a std::deque, it is quite straightforward to just iterate over the SwNodes structure. Shaves off about 30% of the time spent processing post-load. Change-Id: I852079c18738299be04cec52b82e0f6949f2d81c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177837 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-05Resolves tdf#164034 - Rename Non-breaking SpacesHeiko Tietze
The option also affects hyphen and the label should reflect this Change-Id: I5e092f8c5d67c1c039de709d024c89481b40a82d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177841 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-12-05tdf#162750 sw: Fix layout with small caps inside ligaturesJonathan Clark
Previously, Writer was not correctly terminating layout contexts at the starts of small caps spans. This could cause incorrect character placement in certain cases. Regression since: Commit 30d376fb7ded4c96c85ad1112a0e44b5929657c9 "tdf#61444 Correct Writer text layout across formatting changes" and Commit ab0a4543cab77ae0c7c0a79feb8aebab71163dd7 "tdf#124116 Correct Writer text shaping across formatting changes" Change-Id: I863b9b66356eb0a9efb5bbdc75e80b43d56aaaf0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177839 Reviewed-by: Jonathan Clark <jonathan@libreoffice.org> Tested-by: Jenkins
2024-12-04sw: static_cast after dynamic_castXisco Fauli
Change-Id: Ie50fd8bb2bbb26962ead459fe8014828c99fd755 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177789 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-12-04Move helpers for css::awt/VCL point/rect/size to vcl::unohelperMichael Weghorn
Move helpers to convert between the Rectangle, Point and Size classes in vcl and in css::awt from VCLUnoHelper (in the toolkit module) to vcl::unohelper (in the vcl module), for reuse in vcl in upcoming commits. Change-Id: I7b11c8a6b8c843a01ce25b1e4c0fb1869ad1e6ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177816 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-12-04split up SwGetRefFieldType::FindAnchor method some moreNoel Grandin
To make it easier to see the modifications I want to do to improve performance here. Change-Id: Icbb663b39905ce0fe82544bac7afd21314d4c7c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177801 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-12-04split up SwGetRefFieldType::FindAnchor methodNoel Grandin
to make it easier to read Change-Id: Ifaece90d4fb18be3caae9fd4afbbbdf64ff9d18a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177800 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-04crashtesting: failure to reimport forum-es-2526.odt after export to odtCaolán McNamara
2nd arg to copy is len, not index. Probably a problem since: commit 12a7a3d57d3dcf222b13fa9143c37736f8ea3d0b CommitDate: Thu Sep 3 15:33:36 2020 +0200 Fix crashtest fdo77855.odt in forum-es-2526.odt the input has: fo:border-=".009cm solid #595959" where 'fo:border-' is an unknown attr and "fo" ends up truncated to "f". On export and reimport the 'f' is further truncated to '' and we assert on this oddness. Change-Id: Ie85d81947504bf15b9caefb92477c7f977eb5cb9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177788 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-04tdf#143148: Use pragma once instead of include guardsJohann Lorber
Change-Id: Iac334c822ab0699b5cc5122e5f2b1a2b9662f58e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177784 Reviewed-by: Skyler Grey <skyler.grey@collabora.com> Tested-by: Jenkins
2024-12-04cid#1636561 Dereference after null checkCaolán McNamara
Change-Id: I7a4c19d9344dba9c09861fe78b864a8651c3286f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177771 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-12-04Revert "PVS: V614 Potentially null smart pointer 'pFillData' used"Xisco Fauli
This reverts commit 60df7e1052e4ec0a33978df8af8afd65196dbd8c. Reason for revert: Michael Stahl: "the PVS warning is wrong, checking bChgFillData is already enough" Change-Id: I7d963e2b2ebbb30195af05b70ad36ab8d78e7c25 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177760 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-12-03tdf#48459 sw inline heading: don't apply inside frames or over 120 charsLászló Németh
Don't apply inline heading 1) in a text frame 2) or if the selected text is over 120 characters. 1) It would be enough to limit this for inline heading frames, but the recent FN_INSERT_FRAME – which is used for creating the Inline Heading frame, cannot handle the insertion inside a frame: the new frame is anchored outside of the frame, not inside the actual paragraph, resulting bad layout. 2) Increase also the limit of applying the inline heading to 120 characters (very upper limit for a long line) from 75. Follow-up to commit 7a35f3dc7419d833b8f47069c4df63e900ccb880 "tdf#48459 sw inline heading: apply it on the selected words", Change-Id: I05de4be3a08926fdabad2e601d4bbe57ae25f7c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177739 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: Jenkins
2024-12-03sw: HTML import: apply hard formatting at insert position ...Michael Stahl
... even if there is a character format hint there - in this case, a RES_TXTATR_AUTOFMT attribute will not be converted to the SwTextNode's item set. Also add a test that uses the XDocumentInsertable interface to insert the HTML, which is closer to the real use case. (follow-up to commit f45d2fa85ba89eb7d71b51c3324f5938509b3201) Change-Id: Idbf7efceabca8d43d3e32d0b29fb37a9322c184c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177740 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-12-03tdf#164090: a11y sw: add new warning for non numbered empty paragraphBalazs Varga
Add new warning for empty paragraph between numbering paragraphs. Change-Id: Ib85b376da77a72a87ab05a3e8271be43e223f129 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177493 Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de> Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de> Tested-by: Jenkins
2024-12-03don't bother passing const std::[u16]string_view by referenceCaolán McNamara
Change-Id: I49477c20849dd99118d5935c0f1576429648bfca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177734 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-03Resolves: tdf#139700 use WB_FLATVALUESET to get tracking highlightsCaolán McNamara
a problem since: commit 53d2a0390473319555f244f0ac3cf9a44b5ac7a0 CommitDate: Tue Jan 14 13:45:44 2020 +0100 weld PageSizePopup Change-Id: I5e55d1972a205b7bf1ec6f6bdfd2d8cd22e13eca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177728 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-03tdf#163403 fix comments not showing in generic backendMohit Marathe
Change-Id: I21345049d8137e43cc3e50b0b1bcc8d41a123458 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177582 Tested-by: Jenkins Reviewed-by: Sarper Akdemir <sarper.akdemir@allotropia.de>
2024-12-03tdf#164137 - Fix Accessibility sidebar gives no warningsBalazs Varga
We need to check rather the update button is visible instead of the expanders. Regression from commit: 13ac356a32f279a3fd542d62c12e58abe3d3ad30 (tdf#164048 sw a11y: improve error/warning levels with...) Change-Id: I63fb5906ad2f7bb13bc5822c284861a419897c4e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177723 Tested-by: Jenkins Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de> Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-12-02tdf#164098 sw: Fix word overflow kashida justification crashJonathan Clark
This change fixes an infinite recursion crash while updating kashida insertion positions. This crash could occur if a word is too long to fit on a page and is broken onto another line, with the best-fit valid kashida insertion position on the previous line, and the following line also containing valid kashida insertion positions. Change-Id: Ifc3320765f35ccdc49bbf179446bc03654e2596d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177709 Tested-by: Jenkins Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2024-12-02unotest,sw: introduce queryDispatchStatus()Michael Stahl
... and reset the view options that are toggled in testHiddenParagraphFollowFrame and testHiddenParagraphFlys. Backporting these tests to the libreoffice-24-8 branch broke 2 unrelated tests because of the changed view settings: Test name: (anonymous namespace)::testHiddenSectionPageDescs::TestBody equality assertion failed - Expected: 532 - Actual : 798 - In <>, attribute 'height' of '/root/page[2]/body/section[1]/infos/bounds' incorrect value. xmltesttools.cxx:203:Assertion Test name: (anonymous namespace)::testTable0HeightRows::TestBody equality assertion failed - Expected: 28 - Actual : 22 - In <>, XPath '/root/page[1]/body/tab/row' number of nodes is incorrect Change-Id: Ie58242348fecabe163e54048f3896c6d427d2608 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177691 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-12-02crashtesting: failure to import rtf output of forum-en-44797.odtCaolán McNamara
field text ended in \ so next } was escaped Change-Id: I2129f410a1d1c3d507a223c3576f02b78f7aac63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177681 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-02loplugin:unnecessaryvirtualNoel Grandin
Change-Id: Ie010deb5cdf9da20f2ca60d79feabf1c0de93c57 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177669 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-12-02tdf#163325: uitest: load the saved documentXisco Fauli
After commit 2145204724049cad1585743c0b980ed2c6561212 Author: Andreas Heinisch <andreas.heinisch@yahoo.de> Date: Mon Nov 25 09:17:45 2024 +0100 tdf#163325 - Check Lower() frame during ToC preview Change-Id: Ie34e4d433e747ad68264f618047b49b4a826eaa7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177667 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-12-02CppunitTest_sw_tiledrendering2: make this more stable, try 2Miklos Vajna
Similar to commit d248d8f5271c380e51af9482b6724d471e2cb929 (CppunitTest_sw_tiledrendering2: try to make this more stable, 2024-11-20), but note that the problematic assert at e.g. <https://ci.libreoffice.org/job/gerrit_linux_gcc_release/178813/console> is before the early return, so move the early assert below the early return. Change-Id: I0ed9168840defcc567e2e2fa8262bdf32489b54a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177652 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-12-02crashtesting: crash on load of forum-en-40508.odt + F9 to update fieldsCaolán McNamara
seems to already exist in oldest version I have Change-Id: I3f3652952476678c121cbe3f800b7adf7f7aa1a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177626 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-02crashtesting: crash on load of .doc output of forum-de3-398.odtCaolán McNamara
Change-Id: Ibcd898e25c8807dba36226d0ec7126588ba38837 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177631 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-02tdf#147021 - Use std::size() instead of SAL_N_ELEMENTS() macroRosh
Change-Id: I08c84cd3fdc1a1606bbfedbbf5a4987f923cefa8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177467 Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Tested-by: Jenkins
2024-12-02tdf#161341 show/hide controls/shapes/pictures in view/printOliver Specht
Controls/shapes and images/objects have a display option in tools/options/ Writer/View and in print dialog there is "Form controls" and "Images and other graphic objects". With this change the options will actually be applied again. Change-Id: I52389a8519d863792a7cd126a95a389c90c05a5e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171905 Tested-by: Jenkins Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-12-02tdf#120658 - Reworking of dialogues Organize macrosJim Raykowski
(make from 5 existing only one) Much of what makes up this patch is adapted from existing code that is used to organize and select macros and to assign macros to shortcut keys. Comments in the patch say where code is borrowed from. Known issues: + Scripting framework library rename for BeanShell, Java, and JavaScript always returns fail when there are no macro entries in the library even though it actually succeeds. The same thing happens using SvxScriptOrgDialog::renameEntry. + Deleting Basic macros from the Macro Manager dialog is not implemented yet. Change-Id: If4da04549f8b39675910cbbd1f94dd9a6b73c31a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176254 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>