summaryrefslogtreecommitdiff
path: root/svx
AgeCommit message (Collapse)Author
2023-06-23tdf#155901 MCGR: preserve first and last gradient stop tooRegina Henschel
Error was, that only the in-between gradient stops were preserve. First stop was set with fixed offset 0, last stop with fixed offset 1. The offsets of first and last gradient stop of the original gradient were lost. Now in all cases (hopefully) the complete gradient stops vector is preserved and the original offset is used, if e.g. the user changes the color. For calculating transparence the indirect way over Color is removed. Instead percent is directly transformed to the 0..1 values of BColor. That avoids rounding errors. Change-Id: Icdf699a6c2e9c6289d2f77033858448e58396a60 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153395 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2023-06-23fix crash in PaletteManager triggered by the color pickerTomaž Vajngerl
The code expects the SfxObjectShell::GetThemeColors() always returns a current set of theme colors, but then for some modules we return nullptr. Change-Id: I4096b75942d818965cedf43f35444faeb870cb74 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153424 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-21Require icu-i18n >= 66Khaled Hosny
We were requiring ICU 4.6 which was released in 2011, and ifdef'ing our way through newer ICU versions. ICU is a core dependency and it makes no sense to build LibreOffice with such ancient versions of it. This change requires ICU 66 (released in 2020), and removes all the ifdefs for older versions. There are more cleanups to do, but these will be done separately. Change-Id: I2e4f7608a08f4d531b0a4c74bbfdf91a451f833f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153387 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@libreoffice.org>
2023-06-20tdf#155863 sd: fix resizing of cropped images to original sizeTibor Nagy
Resizing with the function "Original Size" (e.g. in the context menu) resulted distortion in case of cropped images, if the original image and its cropping have different aspect ratios. Now zoom the cropped image to the original resolution instead of stretching it to the same size. Change-Id: I5e59f8b48dc03844a739c3eb803e3195a12d9c6d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153170 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2023-06-19tdf#150534 reduce the memory consumption of cells when calculatingNoel Grandin
borders - if there are a lot hidden columns, we end up allocating a lot of cells. Since most of the cells have the same settings, use a SfxItemPool to consolidate them. Change-Id: If2dd77b3eabc5d37eb8804953f8c89ffa04f2400 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153258 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-19svx: prefix members of EnhancedCustomShape2dMiklos Vajna
See tdf#94879 for motivation. Change-Id: I88eaa11f4eaca381a9cb95aa2f24b5a43c7ca80d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153246 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2023-06-16tdf#103064 sw,editeng: enable UNO API and ODF import/exportMaxim Monastirsky
Change-Id: Icf30e1f30fe6bf6a7d96d14b975954613cd68b70 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153157 Tested-by: Jenkins Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2023-06-15speed up startup timeNoel Grandin
by avoid conversion of static locale data from sal_Unicode to OUString data - we can declare the data as OUStringConstExpr arrays and then no conversion is necessary. Here we trigger a problem - EditDLL has static data that tends to get torn down __after__ the i18npool shared library has been removed from memory, which means it tries to access OUStringLiteral objects that no longer exists. So use vcl::DeleteOnExit to explicitly clear that on application shutdown. Change-Id: Ie4bfcef7eb4656316ea825474ac42f85844d1dcc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153060 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-11use internal iterator for SfxBroadcasterNoel Grandin
So we can avoid exposing the internal listener vector. (which allows further optimisations) Change-Id: If288141a37314dcc01d203029dc51c71ec2b7f54 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152857 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-10tdf#151968: Fix vertical position of RTL spelling wavy lineKhaled Hosny
Second try. This time making sure start > end even for RTL text. This also now works for horizontal, vertical and rotated Arabic text, in Writer and Edit Engine. Change-Id: I6fe1e9dbb9c071287054200a58d4ddddee073311 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152743 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@libreoffice.org>
2023-06-09Related: cool#6511 hold json preview cache longerCaolán McNamara
due to oddities related to tdf155720 the notebookbar the cache is hooked to can be torn down and replaced if the 1st session is interacted with while multiple other users join. So count goes to 0 just at the wrong time to trigger throwing away the cache and forcing regeneration. An Idle doesn't suffice here. https: //github.com/CollaboraOnline/online/issues/6511 Change-Id: I148c99115fc497e34bf8920b6f59adc47605b8a1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152720 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-09fix wrong transform type, error handling when JSON parsingTomaž Vajngerl
also fix theme export - change scheme enum type name "hlink" to "hyperlink" and "folHlink" to "followedHyperlink" Change-Id: Id5435d59cd51352efc4a4a8e333ec1ff45847a6f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152782 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-09MCGR: tdf#155479 repair gradient SVG export for MCGRArmin Le Grand (allotropia)
Unfortunately SVG export is based on metafiles and thus there is (in principle) no way to get the BGradient/ColorStop/MCGR data transfered as needed. For that, using UNO API to read the model or using B2DPrimitives would help - as is better for the export respectively. Since there is not the time to re-design SVG export I added this 'compromize' as a fix. It gets the needed data transported over the metafile (that part is the compromize). It then exports the MCGR data to SVG (at least - as was already there - if it's a linear/axial gradient). This happens now with all Gradient Stops when there is a MCGR gradient. That part is/will hopefully be re-usable if SVG export gets redesigned. I also added a handling for StepCount feature, so when used (in LO, others do not have that) 'hard' color stops get generated to make the gradient look identical for SVG export. Had to make adding of that extra-information in metafiles dependent on exporting really to SVG. There are 51 cases which use 'MetaActionType::COMMENT' which would potentially have to be adapted. Also added code to solve the problem for TransparencePrimitive2D at VclMetafileProcessor2D::processTransparencePrimitive2D. This will now - also only for SVG export - directly create the needed MetaFloatTransparentAction and add additional MCGR information. This will be used on SVG export to write a 'Mask' as was done before. This is now capable of creating fill MCGR-Masks in the sense that any number of TransparencyStops will be supported. Change-Id: Ic6d022714eae96b8fbc09e60652851ac5799b757 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152623 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2023-06-08lok: send theme palette after the change in ThemeDialogTomaž Vajngerl
For some reason the SdrPage is constructed in Online after every change (cursor, selection) so can't use that to send theme change callback. Instead of that send it after the theme is changed with the ThemeDialog. in addition this requires that we transport model::ColorSet in a shared_ptr more, to prevent doing constant copies. This requires that the IThemeColorChanger interface is changed and the signature of apply() method. Change-Id: Iac951fce57a8e9dff467bd27b2f9c64ec65ea30c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152635 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> (cherry picked from commit 6c40e4d1796bcb6418dcb5ec17f46f576c171796) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152728 Tested-by: Jenkins
2023-06-08svx: add "Color" and "ComplexColorJSON" argument for XColorItemTomaž Vajngerl
This is needed now that the color picker expects this argument to be present. Without the "ComplexColorJSON" argument, it is not possible for the color picker to set any ComplexColor attributes, which is needed for theme support. Change-Id: I0a04ea57826afb9f17a54ce24a4cbcc88dfe1481 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152727 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-08tdf#155505 Improve display of individual entriesSamuel Mehrbrodt
* Remove "Go to" button and link the issue text directly * Improve layout a bit Change-Id: I3b0dbe7fa5ee0f2fcaeddbf12533ba9169171a57 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152621 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-06-08tdf#155404 handle ComplexColor as JSON for XLineColor and XFillColorTomaž Vajngerl
This adds support for MID_COMPLEX_COLOR_JSON attribute for XLineColorItem and XFillColorItem, which makes it possible to set a theme colors from the UI also for fills and lines. In addition this resolved the issue tdf#155404 which had the effect that unsupported "Color" attribute for the UNO call resulted that the dialog was opened. This is now not the case anymore as the "Color" argument for XLineColorItem and XFillColorItem was added in addition to "ComplexColorJSON" argument. Change-Id: I8876942b07aba453cbe1422b76a1608c78e42109 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152713 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-07tdf#155376 partially convert SvCTLOptions to officecfgNoel Grandin
When accessibility is enabled, Calc will add tens of thousands of listeners. We then spend a significant chunk of time creating SvCTLOptions objects (attached to ImpEditEngine) and adding and removing those objects from the related listener lists. But the required information is already globally cached by the officecfg module, so we can avoid that overhead and just fetch it directly from officecfg. Change-Id: I7ff55fd7c4926866eb7086812275ba8bd6e84c75 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152645 Tested-by: Jenkins Reviewed-by: Patrick Luby <plubius@neooffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-06perf: we don't need to 'really' insert a preview when providing jsonCaolán McNamara
if we have intercepting 'image' when generating the json, then we don't need to really insert the image into the server side TreeView at all, we just need to provide it in the client json payload. so we generate each bitmap once, and its base64 png representation once. Change-Id: I1b6916b036a0b84ef4346ebf2141240c4ae5b706 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152675 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-06convert SvtAccessibilityOptions to officecfg where possibleNoel Grandin
Change-Id: Ia530086fe35e64379e55135d392020304b466325 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152649 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-06perf: cache the generated json for an iconview imageCaolán McNamara
before: |--13.95%--JSDialogNotifyIdle::Invoke | | | |--13.01%--JSDialogNotifyIdle::generateWidgetUpdate | | | | | |--11.03%--IconView::DumpAsPropertyTree | | | lcl_DumpEntryAndSiblings (inlined) | | | | | | | |--10.94%--extractPngString (inlined) after: |--4.86%--JSDialogNotifyIdle::Invoke ... | |--2.90%--JSDialogNotifyIdle::generateWidgetUpdate | | | | | |--0.76%--IconView::DumpAsPropertyTree | | | IconView::DumpEntryAndSiblings | | | Link<std::tuple<tools::JsonWriter&, rtl::OUString const&, std::basic_string_view<char, std::char_traits<char> > > const&, bool>::Call (inlined) | | | StylesPreviewWindow_Base::DoJsonProperty | | | | | | | |--0.55%--StylesPreviewWindow_Base::GetCachedPreviewJson Change-Id: Id234a84e36710794822945584be3adf028808625 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152630 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-06Language list: sort generic language before country variantsMike Kaganski
In Edit Modules dialog, the language list may include entries added by LanguageTool, and among them are generic language-only entries like "Spanish {es}", stanfing for simple language tags like "es". These languages should go before country variants like "Spanish (Argentina)", but since "{" is sorted after "(", the order is the opposite. This change fixes this. Since other lists do not include generic language-only languages (filtered out by lcl_isPrerequisite and its requireSublang argument), this does not apply to them, but the code will execute nevertheless; hope that this UI-only performance hit will not be noticeable. Change-Id: I97adc1ae8feb4c8a94b567b33363d63d899cabaa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152676 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-06Drop the unneeded optimization for "[All]"Mike Kaganski
It will only be used *at most* once, but often will not be used at all. Change-Id: I13b0e9ab8a4918c56a7e710c80d6d9d36019c605 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152644 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-06Sort languages in Edit Modules dialogMike Kaganski
After commit e855481ead996a3b8270fae91bd23d6c8d75ef25, these languages are already ordered according to css::lang::Locale sorting implemented there; but this ordering does not follow the UI language sorting rules. TODO: put language without country/variant before respective languages having country/variant. Change-Id: Ic98b50ef4a500c799110611f7c35c74b4a239ed4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152641 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-06SvxLanguageBox::Store id from getReplacementForObsoleteLanguageMike Kaganski
... not the original id passed to the function. Theese corrected ids are used e.g. in set_active_id. Change-Id: I9967d52ed2362ace947ea21f526c4c0694f14476 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152640 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-05Drop unneeded indirectionMike Kaganski
Change-Id: Ie837aec7e2b4b87665cc98200d38329ec2155c56 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152614 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-05Drop duplicating functionMike Kaganski
Change-Id: I15f6aea604f5bc05ae8e2e13c1e79003512b707f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152613 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-05Restructure SvxLanguageBox::SetLanguageList for clarityMike Kaganski
And extract sorting and removing duplicates to a separate function. Change-Id: I57ed8d3960eefb8df8128cdb461a0621ed998bbb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152612 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-06-05lok: callback to send the updated theme palette when theme changesTomaž Vajngerl
The callback sends the updated theme color palette when the theme changes or initially when the view is registered, so the client should always have the up-to-date theme color palette stored, so it can just show the color picker with the theme at any time without the need to call the server. Change-Id: I7cceccc46c2fad23ba89e6d3f3643e37f8dab292 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152589 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-05svx: extract theme color generation into ThemeColorPaletteManagerTomaž Vajngerl
The generation of theme colors generation code is moved to the ThemeColorPaletteManager class, so it can be reused. Also change the GetThemeColors return type from std::vector<Color> to std::shared_ptr<theme::ColorSet> as we can now safely do that and simplifies things. Change-Id: I4a54bff889a1f97cb1e30467188dc69e07e8c518 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152588 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-05tdf#155504 Add "Fix" function to shapesSamuel Mehrbrodt
Change-Id: I9494207b0bcdf121034f79d936aeadd95cecdf23 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152494 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-06-05Simplify vector intialization in svx/svdmodelJulien Nabet
Change-Id: Ieaed80e4621084baf531b794323b2742ccd80310 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152594 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-06-04sw: border and background theme color support for multiple props.Tomaž Vajngerl
This adds support for theme colors for multiple properties that are stored in SvxBoxItem and SvxBrushItem / XFillColorItem. For those items the ComplexColor member variable was introduced. The UNO properties for the colors are added. The properties with the added support includes paragraph border and background + styles, page border and background, frame border and background + styles. The ThemeColorChanges has been extended to support changing the colors for those propertes. Color picker and tab pages have been fixed so they pass or set the theme color properties to the items. Change-Id: Id27272f5c4a448703a62a759d829e8a9540066e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152397 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-03perf: use freeze/thaw around block insert of multiple iconsCaolán McNamara
into the style preview widget in the tabbed view |--1.67%--StylesListUpdateTask::Invoke | StylesPreviewWindow_Base::UpdateStylesList | weld::IconView::append (inlined) | JSIconView::insert | | | |--1.58%--SalInstanceIconView::insert | | | | | |--1.19%--SvTreeListBox::Insert | | | SvTreeList::Insert | | | SvTreeList::Broadcast (inlined) | | | SvTreeListBox::ModelNotification Change-Id: I1c1058324a056e7c8fb42f31c5b4919fcc5870e6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152577 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-03Styles preview cache cleanup on exitSzymon Kłos
Change-Id: I28929d4137008ebcca1733837d0b2112b6859a89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152563 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152576 Tested-by: Jenkins
2023-06-03Styles preview widget should cache imagesSzymon Kłos
Change-Id: I3ee370e5d3ef4227681c4a973ac6f24f9aa241e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152556 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152575
2023-06-01Resolves: tdf#155425 turn off overlay scrolling for color selectorCaolán McNamara
the overlay width is too close to the column width to easily select the colors in the column beside/underneath an overlay scrollbar Change-Id: I096a6f2414eb69f10a79a4a0591f3a210c6784de Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152507 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-01resave with latest gladeCaolán McNamara
Change-Id: If9a61d218ccee6bb82adf533dc1932cb2dd46ad0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152505 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-01tdf#153361 improve theme color generation in color pickerTomaž Vajngerl
The theme color generator needs to take color luminocity into account, so that the very dark or very light colors are properly shaded. Otherwise a too dark color will generate a too dark (almost black) color variant, or a too light a too light (almost white) color variant. However those colors aren't useful. Change-Id: Id803a8f6f1a79cbc822ed2d7faca9bec228c0188 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152237 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-06-01Revert "Convert XFastParser into a normal C++ interface"Noel Grandin
This reverts commit 5e68d6cfade45f40b1ad46025a81afe4cb8dd337. Reason for revert: Seems like outside users have been using this API Change-Id: I8814cf1eb4f000eeb4cbbb5db9c282d001465993 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152441 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-01Convert XFastParser into a normal C++ interfaceNoel Grandin
There is no need for it to be an UNO interface anymore (ever since we started supporting dynamic_cast on UNO objects). Which means that XImportFilter2 also needs become a C++ interface. Change-Id: Ice2db0f098271bba32b199bd083b08cb8410ce93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152388 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-31speed up tab-switching in a calc document with a lot of graphic objectsNoel Grandin
if we are in the destructor, and we have never painted the object in question, then we don't need to do an expensive object-range calculation and invalidation Change-Id: I857c3d927142f4e90d54f79fa6c293731382f0d9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152424 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-31Added doxygen to calc currency comboLuigi Iucci
Change-Id: If6a70f38007c385c28f9136e48635e91b9ec93e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151968 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-05-29avoid some invalid Fraction objectsNoel Grandin
when loading spreadsheet with embedded OLE objects Change-Id: Ib8fe88f0ffec03e8b92d8d8b69c8763164f4dd05 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152370 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-29replace find_if by any_ofDr. David Alan Gilbert
A few cases where find_if is used just to test if there are any matches; use any_of as per tdf#153109 In document3 we can merge two identical loops. In langbox we can optimise the arg capture (Arkadiy's suggestion) Change-Id: I480b80ec1b859980b651c6d727e7fb5d01d390e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152201 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-29use more TypedWhichIdNoel Grandin
Change-Id: If7b4320e199a01f2614e3bf582e5d96fade22aa2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152353 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-29tdf#155515 tdf#155528 crash on exitNoel Grandin
regression from commit 3b7db802731826b6cc3b55100470b0c61c1f2dfa Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Thu May 4 10:06:14 2023 +0200 tdf#105404 [API CHANGE] add index to accessiblity change event Fix a handful of things related to accessibility objects being destructed later than they should and consequently trying at access other stuff that has already been destructed. (1) AccessibleControlShape::disposing check the window still exists (2) DocumentFocusListener::notifyEvent, handle INVALIDATE_ALL_CHILDREN (3) hold DocumentFocusListener by weak reference in GtkSalData, so that it dies when the related UI widgets die Change-Id: I38bf68a748b37e6abc4a8cfcc961436728e081bd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152365 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-26use more TypedWhichIdNoel Grandin
Change-Id: Iaa7ce9165da835a638bcc1d633bed0a2ff2c4108 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152308 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-26tdf#155190 svx,sw: PDF export: don't tag SwNoTextFrame as ArtifactMichael Stahl
The problem is that inside of the Figure tag, in SwNoTextFrame::ImplPaintPictureGraphic(), ViewContactOfSwNoTextFrame and ViewObjectContactOfSwNoTextFrame are used to create and process another primitive sequence. ViewObjectContactOfSwNoTextFrame does not have access to a SdrObject, because that was already processed by the outer layer of code that called the SwFlyFrame painting code. Avoid running the code that assumes anything without an SdrObject is an artifact by disabling PDF tags altogether in ViewObjectContactOfSwNoTextFrame. (regression from commit 81ef84648515965bf67afaced946227d0f63a71e) Change-Id: I9fabe7f7e5296f8d850448ac44865f87cd164591 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152335 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-05-26use more TypedWhichIdNoel Grandin
which flushed out an inconsistency in how SID_NUMBER_TYPE_FORMAT was being used Change-Id: Ib59ae4c4950136703d18d7485db432a39e3dc39c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152300 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>