summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2024-05-11loplugin:ostr in svxNoel Grandin
Change-Id: Ia765a03e033acb82e367873380d289587ea87d6c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167449 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-10loplugin:ostr in vclNoel Grandin
Change-Id: I5b6ee5bda0c5ff69d297f7f8e87d4c3f3d21791c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167470 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-10loplugin:ostr in sfx2Noel Grandin
Change-Id: I6306260d03c1208ec250c2f9a3860fa569f6d9c8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167448 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-10tdf#156484 svx,sw: fix visibility of shapes in header/footerMichael Stahl
Similar to commit ae132145ff42a95dc24fb124847c04af4b8c8dab, also forward IsVisible() and IsPrintable() from SdrVirtObj to its real object; evidently the properties aren't copied when creating SdrVirtObj but there is no reason for that to have these properties independent. This triggers an assert in VOCOfDrawVirtObj::createPrimitive2DSequence() because that is called during layout from getObjectRange(); the assert was added in commit ae3ec0d53a22ae5d2b7fb244a6056d0627b71873 and intended for painting, but this isn't painting, and it's not easily possible to detect if the function is called during painting, so remove the assert. Change-Id: Id2a04a5d07f43b86eb9c524b30ba74ecaf6a95c8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167350 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-05-08tdf#126573 Add Excel2021 array function RANDARRAY to CalcBalazs Varga
Add new function called RANDARRAY to the function list. (TODO: dynamic array in separate patch, oasis proposal) Change-Id: I34bad3b7e8d631d649a0350d7c1170b26161331d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167003 Tested-by: Jenkins Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de> Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
2024-05-08drop requirement for rtl_random_getBytes to have "Pool" argCaolán McNamara
Seeing as since: commit e9531b792ddf0cfc2db11713b574c5fc7ae09e2c Date: Tue Feb 6 14:39:47 2024 +0100 sal: rtlRandomPool: require OS random device, abort if not present Both rtl_random_createPool() and rtl_random_getBytes() first try to get random data from the OS, via /dev/urandom or rand_s() (documented to call RtlGenRandom(), see [1]). we don't use the initial arg to rtl_random_getBytes anymore, drop the requirement to have one. Then simplify our usages of that, and addtionally deprecate rtl_random_createPool and rtl_random_destroyPool. Change-Id: I13dcc067714a8a741a4e8f2bfcf2006373f832c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167067 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-05-08tdf#69192: add StartingSlide to SID_PRESENTATION and cmdline show=Justin Luth
Allow the user to start the presentation at a specific slide using command-line parameters. This patch depends on the previous variable renaming patch. Change-Id: I87797cbccb463904e5d2fe9b078e3921be27c91a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167066 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-05-07Sidebar: Direct update of FillStyleOliver Specht
FillStyle is directly updated to prevent deferred resize when additional controls are created. Change-Id: I48ed987971cf6c711af31d552e8d64fa9982a416 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165993 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-05-07lok: reseed comphelper's random number generator on fork.Michael Meeks
Also avoid std::random_device it doesn't work in a COOL kit process. Change-Id: Ie2d063611a73e734afd92d6fd779f34a2f316230 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167070 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-07tdf#147021 Replace SAL_N_ELEMENTS with std::sizeZainab Abbasi
Change-Id: I2df519a73f283c3a74353222826e82beaa98f017 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166194 Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-05-07tdf#160806 tdf#160837 gtk3 a11y: Drop VclEventId::ToolboxButtonStateChangedMichael Weghorn
Similar to how the previous Change-Id: I00e62016ced2fbb8796960671f5e58a3ceac4b29 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Mon May 6 14:44:36 2024 +0200 tdf#160806 tdf#160837 gtk3 a11y: Drop handling of some VclEventIds dropped handling for `VclEventId::WindowGetFocus` and `VclEventId::ObjectDying` in the gtk3 a11y bridge, do the same for `VclEventId::ToolboxButtonStateChanged`. And drop `VclEventId::ObjectDying` completely, as the gtk3 a11y bridge was the only place processing it. That event and the handling had been introduced in commit 3b40f502341272e989ae5266a1f8a03f2736449b Author: Ivo Hinkelmann <ihi@openoffice.org> Date: Tue Feb 5 11:30:51 2008 +0000 INTEGRATION: CWS fwk83_SRC680 (1.7.186); FILE MERGED 2008/01/30 12:40:39 obr 1.7.186.2: fix for fedora tinderbox (64bit) 2008/01/15 23:49:28 obr 1.7.186.1: #i70872# create wrapper for toolbox items that change state commit a1cbbd113da4ce3d5342d9ae5ff1c8d2137aa59c Author: Ivo Hinkelmann <ihi@openoffice.org> Date: Tue Feb 5 11:30:25 2008 +0000 INTEGRATION: CWS fwk83_SRC680 (1.51.160); FILE MERGED 2008/01/14 14:35:26 cd 1.51.160.1: #i70872# Added VCLEVENT_TOOLBOX_BUTTONCHANGED to notify accessibility implementation that an action happens to a toolbox button commit 3f1afd178875babe7ab79d22ab260221665bfb3f Author: Ivo Hinkelmann <ihi@openoffice.org> Date: Tue Feb 5 11:29:57 2008 +0000 INTEGRATION: CWS fwk83_SRC680 (1.2.262); FILE MERGED 2008/01/14 14:35:26 cd 1.2.262.1: #i70872# Added VCLEVENT_TOOLBOX_BUTTONCHANGED to notify accessibility implementation that an action happens to a toolbox button to ensure that an a11y object is created for toolbar buttons whose state changes, so that the corresponding a11y events are forwarded to the platform layer, see the referenced OOo bug #i70872# [1] for more details. This seems to be no longer necessary. By now, at least the scenario of toggling the bold/italics/underline status of text is announced just fine by Orca 46.1-1 on Debian testing with this change in place. (FWIW, tdf#123864 and the corresponding commits are more recent tickets/commits related to the topic.) Like for the above-mentioned change, dropping that handling addresses another case where the work window/root pane's a11y object when walking up the a11y hierarchy would be problematic, as it doesn't take into account the GtkWidget hierarchy. Sample backtrace of how the "problematic" a11y object was created (frame 1 below is the one where the a11y object with role root pane is created.) 1 atk_object_wrapper_new atkwrapper.cxx 983 0x7f620365672b 2 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0 3 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952 4 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0 5 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952 6 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0 7 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952 8 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0 9 create_wrapper_for_child atkutil.cxx 359 0x7f620364c740 10 handle_toolbox_buttonchange atkutil.cxx 376 0x7f620364c1ef 11 WindowEventHandler atkutil.cxx 438 0x7f620364bd7f 12 Link<VclSimpleEvent&, void>::Call link.hxx 111 0x7f620dfd4ef8 13 VclEventListeners::Call vclevent.cxx 46 0x7f620dfd3f1a 14 Application::ImplCallEventListeners svapp.cxx 725 0x7f620df96b0d 15 vcl::Window::CallEventListeners event.cxx 225 0x7f620d59f6ee 16 ToolBox::SetItemState toolbox2.cxx 1197 0x7f620d6afd81 17 ToolBox::CheckItem toolbox.hxx 515 0x7f6214502c53 18 (anonymous namespace)::PopupMenuToolbarController::statusChanged popuptoolbarcontroller.cxx 180 0x7f621454205d 19 (anonymous namespace)::GenericPopupToolbarController::statusChanged popuptoolbarcontroller.cxx 373 0x7f6214540855 20 SfxDispatchController_Impl::addStatusListener unoctitm.cxx 797 0x7f6213090e95 21 SfxOfficeDispatch::addStatusListener unoctitm.cxx 279 0x7f6213090ade 22 svt::ToolboxController::bindListener toolboxcontroller.cxx 558 0x7f620fe9fbce 23 svt::ToolboxController::update toolboxcontroller.cxx 235 0x7f620fe9f207 24 framework::ToolBarManager::UpdateControllers toolbarmanager.cxx 726 0x7f62145b0f25 25 framework::ToolBarManager::AsyncUpdateControllersHdl toolbarmanager.cxx 2291 0x7f62145bdbfc 26 framework::ToolBarManager::LinkStubAsyncUpdateControllersHdl toolbarmanager.cxx 2278 0x7f62145aff9d 27 Link<Timer *, void>::Call link.hxx 111 0x7f620dfbc618 28 Timer::Invoke timer.cxx 75 0x7f620dfbc46c 29 Scheduler::CallbackTaskScheduling scheduler.cxx 509 0x7f620df5fa08 30 SalTimer::CallCallback saltimer.hxx 54 0x7f620368b566 31 sal_gtk_timeout_dispatch gtkdata.cxx 733 0x7f620368a573 32 ?? 0x7f62097110d9 33 ?? 0x7f6209714317 34 g_main_context_iteration 0x7f6209714930 35 GtkSalData::Yield gtkdata.cxx 405 0x7f62036888ef 36 GtkInstance::DoYield gtkinst.cxx 435 0x7f620368dd73 37 ImplYield svapp.cxx 378 0x7f620df94dfc 38 Application::Yield svapp.cxx 466 0x7f620df9470b 39 Application::Execute svapp.cxx 353 0x7f620df944a2 40 desktop::Desktop::Main app.cxx 1615 0x7f62171254fc 41 ImplSVMain svmain.cxx 229 0x7f620dfb760e 42 SVMain svmain.cxx 261 0x7f620dfb9659 43 soffice_main sofficemain.cxx 93 0x7f62171a7eb3 44 sal_main main.c 51 0x56162eceea5d 45 main main.c 49 0x56162eceea37 [1] https://bz.apache.org/ooo/show_bug.cgi?id=70872 Change-Id: I7409806071a00f32b201b08a831dc6941f072047 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167209 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-06loplugin:ostr in canvasNoel Grandin
Change-Id: I6fe0ed24a42394936975e763aba9dc3625a373ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167205 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-06svx: prefix members of SdrUndoActionMiklos Vajna
See tdf#94879 for motivation. Change-Id: Ieca2f1d0a8b781a908e3b4bd7fd7698305248a60 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167181 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-05-05use [[noreturn]] for these throw helpersCaolán McNamara
Change-Id: Ia50d6f2be91e830201689cc428e55203eeb41eb0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167035 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-05-05replace createFromAscii with OUString literals in vcl::pdf::BuildinFontNoel Grandin
Change-Id: Ia5bf95a5474363e745517edce96a123764dcab73 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167151 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-03sd, svx: Return new annotation instead of using out paramMichael Weghorn
Let `SdrPage::createAnnotation` et al. return the newly created annotation rather than using an out parameter, which makes this more straightforward. Change-Id: Iee0561859756522ef33680c2cc9b492541a31d5e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167019 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-03jsdialog: support for LinkButton as an independent widgetTomaž Vajngerl
This adds support for the (weld)LinkButton (FixedHyperlink) as an independent widget and not part of FixedText to jsdialog. In addition add "click" event that triggers activate_link method. Change-Id: Id110b4a0fd60fc24592e00235243783d46ae4575 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166898 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-05-02make the slot data constinitNoel Grandin
because it takes a surprising amount of time to initialise it at runtime during startup (*) have to convert the std::function in SfxType to a function pointer, because the std::function constructor is not constinit compatible. (*) the SfxType0..SfxTypeN types need some reinterpret_cast to work around the lack of zero-sized trailing arrays in c++ (*) Sadly MSVC does not support taking the address of symbols in constinit structures, so we cannot make the SfxSlot array constinit. Change-Id: I300ee770cc115d30bc25c819f2ad34b29633876c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166963 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-02WaE: C6011 Dereferencing NULL pointer warningsCaolán McNamara
Change-Id: I8edb1fefe1b2b8a3db3ee8f3a0eed59c7f08a36e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166863 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-05-02use more OUString compile time literals in xmloffNoel Grandin
Change-Id: Iddf9d40ca63f2f3ce7d48aaf881a3abb10f88bbf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166975 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-02use more OUString literals in XMLEventNoel Grandin
Change-Id: I77f9b7fc731be3c3f7cd0c642f9b210e28fdf545 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166974 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-01use more OUString in sfx slotsNoel Grandin
Change-Id: I900d9f1d35bc1e620822eedd5722a502704d6de0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166959 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-01Use a for loop for setting view properties.Gökay Şatır
Since there may be no view with the given id, checking the list first is safer. Signed-off-by: Gökay Şatır <gokaysatir@collabora.com> Change-Id: I4c305e0a0f6ce7cccdfea9889c414a6054ed3a88 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166531 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Michael Meeks <michael.meeks@collabora.com> (cherry picked from commit 4d8c4a60105488be84ea80775dc04a24582752fb) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166720 Tested-by: Jenkins
2024-05-01CopyTo is never passed a null argumentCaolán McNamara
Change-Id: Ie25e61d6795819a9c432d71fdf478b1a4430c06f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166940 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-04-30WaE: C6011 Dereferencing NULL pointer warningsCaolán McNamara
Change-Id: I498c10e8bc134b41e3606d8a05cf3103a9274735 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166937 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-04-30tdf#160867: restore HTML map export for text hyperlinks in framesMike Kaganski
The most exciting was to discover that this functionality was actually already implemented prior to 2001, and then accidentally dropped, and nobody noticed, until Noel did his great cleanups, and made an amazing investigation in commit ed2ae3c3bb0a708cafc3de6a01adc9ddc43fb859 (remove dead SwNoteURL, 2018-03-14). The detailed commit message made my task so much easier: I knew where and what to restore. So this change restores relevant pieces removed over the time in commits * 1b666235f6b0b0f0b13f473bf3b639f4f5f0b12f (loplugin:singlevalfields improve copy constructor check, 2018-01-03), * be8c414567f49242164b1fdfb12764b16be355c1 (loplugin:unusedmethods also check for functions returning bool, 2018-01-19), * 73139fe600fc1399ae828077981a2498cb0a0b0c (loplugin:unusedmethods, 2018-01-20) * bb7ade140df807b6a0f12766a1365b8f8d0fd342 (loplugin:unusedmethods, 2018-03-08), * ed2ae3c3bb0a708cafc3de6a01adc9ddc43fb859 (remove dead SwNoteURL, 2018-03-14), * fd1cfd25b48cb4bd5c87e9cb317b37699ca3a1d6 (PortionType::Url is unused, 2019-01-18). It re-implements the functionality accidentally removed in commit da7671e4f7482110ecd0cfbfd7dbd9e0b873c81c (Opt.(FME): The new attribute handler makes a lot of code superfluous, 2001-03-15), moving it into SwAttrHandler, which replaced the ChgFnt in SwTxtAttr. It also fixes the code writing the HTML image map, to output valid HTML. And finally, it adds a unit test, to avoid repeating the story :-) Change-Id: I72ae3cf30f0e9689f50a2c877e1622e4ae46de49 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166924 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-30loplugin:ostr in comphelperNoel Grandin
Change-Id: Ide07689bf1a68973cb176554e44e9a809d633def Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166851 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-30Embind: Fix out-param handlingStephan Bergmann
...by using UnoInOutParam in all cases. Some types whose Embind mappings don't employ any smart pointers (like any and sequence) would have worked directly with pointers, but others (like string and type) would have caused Embind errors at runtime. So consistently use UnoInOutParam in all cases (and generate bindings for all the used cases in embindmaker). Change-Id: If26551bf4e99d10748aec1597d6e99f994dfd86e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166854 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-04-30Drop some uses of css::uno::Sequence::getConstArray ...Mike Kaganski
where it was obsoleted by commits 2484de6728bd11bb7949003d112f1ece2223c7a1 (Remove non-const Sequence::begin()/end() in internal code, 2021-10-15) and fb3c04bd1930eedacd406874e1a285d62bbf27d9 (Drop non-const Sequence::operator[] in internal code 2021-11-05). Change-Id: I4ccc647bb794515c8c11f8dfd9a26563f4aa094b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166819 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-04-30svx: use o3tl::convert instead of 847 (mm100) when we want 24ptTomaž Vajngerl
Change-Id: I1d1c4a0e12c0443e7021c8aedcd386814a1647be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166823 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-04-29reduce symbol visibilityNoel Grandin
Change-Id: Ibc850eb12c38f2985015f06e330585b02d6bf15f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166822 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-04-29svx: prefix members of SdrLayerAdminMiklos Vajna
See tdf#94879 for motivation. Change-Id: I8ea80a3f2121c5c29168aa185e6278d924874c72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166815 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-04-29WaE: C6326: Potential comparison of a constant with another constantCaolán McNamara
if msvc -analyze is used Change-Id: I5905447a79e8e50d70281e0c230d1ce3b13fc475 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166704 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-04-29rearrange to clarify that ThumbnailViewItem* was never nullCaolán McNamara
Change-Id: Ie10ed0193fbaeae2fb711caa9059906513c42e1f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166730 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-04-28reduce symbol visibilityNoel Grandin
Change-Id: Iad2d114d257244f456d5579636e5c25ce070a08a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166805 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-28Extended loplugin:ostr manual changesStephan Bergmann
I had done these a while ago, when I looked into extending loplugin:ostr to do more automatic rewriting, and these were places where I needed to do something manually, for one reason or another, because the automatic rewriting would not pick it up correctly. However, I got distracted, and a wholesale automatic rewrite would still run into cases where an _ostr/_ustr instance from a library's .rodata would still be referenced after the library has already been dlcose'd. So I never came around to finishing all that. But there appears to be renewed interest in (automatic) rewritings here now, so it probably makes sense if I share this part of my work anyway. Change-Id: I3da9d38398e4bca373cb0000a9d34b49a36ad58a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166792 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins
2024-04-27reduce symbol visibility in vbahelperNoel Grandin
Change-Id: I68995b10956afe4b2a2cf69fe1393d4deaaff02a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166780 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-26annot: moved more of Annotation and dependencies into svxTomaž Vajngerl
Moved the holder of annotations from SdPage to SvxPage, so that the vector holding the annotations and accessors are on SvxPage and adapted the code. This also changes the type od most parameters on most methods from sd::Annotation to sdr::annotation::Annotation and adapted the code. Moved AnnotationEnumeration into svx, as it was needed in svx already. Change-Id: Iab17aa881443f58adfb9158959db00ed24076279 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166494 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-04-26annot: move UndoAnnotation and deps. to svx, adapt svx AnnotationTomaž Vajngerl
This moves UndoAnnotation and dependent classes to svx, refactor the code to in sdr::annotaion::Annotation so annotations in sd module still work as they have before. Change-Id: I3769069a636c30c55bc1fcf2406d990f1b44baa6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166493 Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Tested-by: Tomaž Vajngerl <quikee@gmail.com>
2024-04-26tdf#126573 Add Excel2021 array function SEQUENCE to CalcBalazs Varga
Add new function called SEQUENCE to the function list. (TODO: dynamic array in separate patch, oasis proposal) Change-Id: I9fa6f2c83536536987542cc00a9eec5c196ada8d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166245 Tested-by: Jenkins Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de> Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
2024-04-25Move ObjectInspectorWidgets code into cxx fileNoel Grandin
having this much code in a header file is not a good idea Change-Id: Ic21eca651335bb282ebbf9434811ae591b7e0b18 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166620 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-25Remove unused fieldsSamuel Mehrbrodt
Unused since f944648e0f5d52605a267ed50bba4bfc035aecc6 Change-Id: Id5f5a77df8afdf15d99989b86bb04179d86ae92b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166614 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2024-04-25annot: added Annotation impl. to svx, moved some thing from sdTomaž Vajngerl
This is an attempt to move the sd::Annotation to the common code in the svx module. This will need to be done in multiple steps so the first one is to introduce sdr::annotation::Annotation class in svx module, which is derived by sd::Annotation. Non-problematic functionality and members are also moved to the svx Annotation. Change-Id: Id20466b3780514ab63a9df8923b879098870ebb6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166492 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-04-24vcl: Factor out common code and simplifyXisco Fauli
Change-Id: I836c8f85474dc564efa3ca781f47a25e1d8c55fb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166582 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
2024-04-24tdf#160253: fix list identifier export decision codeMike Kaganski
Commits 8f48f91009caa86d896f247059874242ed18bf39 (ODT export: omit unreferenced <text:list xml:id="...">, 2022-03-10) and 82bbf63582bdf28e7918e58ebf6657a9144bc9f3 (tdf#155823: Improve the check if the list id is not required, 2023-06-14) tried to improve deterministic ODF output, by omitting the list identifiers in case when those identifiers were unreferenced. The latter of these used document model node numbers to check if other lists appeared after the last occurrence of the list that is continuing in the current node. But it turned out, that this isn't robust. Consider this ODF: <text:list xml:id="list1" text:style-name="L1"> <text:list-item> <text:p>a</text:p> </text:list-item> </text:list> <text:p>b<text:note text:id="ftn1" text:note-class="endnote"><text:note-citation>i</text:note-citation><text:note-body> <text:list text:style-name="L2"> <text:list-item> <text:p>x</text:p> </text:list-item> </text:list></text:note-body></text:note></text:p> <text:list text:continue-list="list1" text:style-name="L1"> <text:list-item> <text:p>c</text:p> </text:list-item> </text:list> The paragraphs a, b, and c are all in the main document body, and have sequential document model node numbers (say, 15, 16, 17). If these numbers are checked, there is no node between node 15 ("a") and node 17 ("c") with a different list (both 15 and 17 belong to a list with style "L1" and identifier "list1", and node 16 doesn't belong to any lists). That suggests that the list identifier isn't needed in this case. Bug when the actual output of node 16 is done, it includes a node from an endnote ("x"), which is located in a different place in the document model, and has a node number like 7 (so not between 15 and 17). The paragraph "x" belongs to another list with style "L2", and is output to ODF between paragraphs "a" and "c". Here, we must refer from paragraph "c" to the list of the paragraph "a" using the list id, but this is not obvious when only considering node numbers, and requires the prior knowledge of the actual order of appearance of lists in the ODF. Unless we build a DOM, this is only possible, if we do a two-pass output, and collect the nodes order in the first pass. The output already does that in a "collect autostyles" pass. The problem here is that the "collect autostyles" pass used an optimized function, XMLTextParagraphExport::collectTextAutoStylesOptimized, introduced in commit 8195d7061ed52ebb98f46d35fe5929762c71e4b3 (INTEGRATION: CWS swautomatic01 (1.126.4); FILE MERGED, 2006-12-01) for #i65476# and which used style::XAutoStylesSupplier for optimization to get the autostyles. This drops XMLTextParagraphExport::collectTextAutoStylesOptimized, and reverts to use of collectTextAutoStyles, which handles nodes in the same order as when writing to ODF. There, we build a vector of the node numbers sequence, used later to sort DocumentListNodes. This uncovered an omission from the work on paragraph mark (commit 1a88efa8e02a6d765dab13c7110443bb9e6acecf tdf#155238: Reimplement how ListAutoFormat is stored to ODF, 2023-05-11). Turns out, that the code in SwTextFormatter::NewNumberPortion introduced in commit cb0e1b52d68aa6d5b505f91cb4ce577f7f3b2a8f (sw, numbering portion format: consider full-para char formats as well, 2022-10-20) was left behind when re-implementing paragraph marks to use dedicated property; empty trailing spans still affected how the lists were rendered, and that allowed to overlook import defects, where the paragraph mark properties weren't properly set. In ODF import (XMLParaContext::endFastElement), for compatibility, this treats empty trailing spans as defining paragraph mark (when the paragraph mark wasn't set explicitly). This way, the trailing spans get converted to the paragraph mark. In WW8 import, last cell paragraphs didn't call the code handling the paragraph marks. This is also fixed now. The changes result in slightly different numbering of autostyles in the ODF. It seems, that the new numbering more closely follows the order of appearance of the autostyles in the output; and some cases of autostyles that were written, but unreferenced, are now eliminated. The unit tests were updated accordingly. I hope that the performance impact on the export time would not be too large. It is unclear why outline numbering exports a list element at all. Fixing that to not emit the list element is a separate task / TODO. Change-Id: I5c99f8d48be77c4454ffac6ffa9f5babfe0d4909 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166572 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-23loplugin:singlevalfieldsNoel Grandin
Change-Id: I4d7b38c90d73a00f4dbc8ad7318fe4573328ed46 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166503 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-23ITEM: Add measurements for SfxItemSet usages (debug only)Armin Le Grand (allotropia)
I was wondering how much of that arrays of pointers to SfxPoolItems is actually used in the SfxItemSets in real office runtime, so I added code now to measure that. It does use the state of the ItemSet at destruction, so it is possible that items were added/removed which are not covered, but most cases of internal usages do not do that. I then check/sort the collected data at office shutdown, it will be printed as SAL_INFO when svl.items/vcl.items is set, so use this to see the data. This gives info about the average space utilization in different ItemSets with different sizes, also gives an insight about used ItemSet sizes and amount of their usages. Of course results differ from app to app and dependent of what is done with the office, but interestingly when using quite some files opening from all apps it toggles/normalizes to something around 20-25%... Change-Id: I3eb2f0401c39a5bdb5d1d8176e95df07be4c111a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166455 Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> Tested-by: Jenkins
2024-04-22tdf#159660: also add normal blend filterXisco Fauli
Change-Id: I3edc7495975618357f002536857a11dcc72cc0b9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166460 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-04-22tdf#160782: convert to bitmapEx from 0,0 to width,heightXisco Fauli
This is the way it's done everywhere. Partially revert 4b6e0f2c88debaedb514c868e061c21e15215b6e "tdf#160726, tdf#48062: Simplify how BitmapExs are created" Change-Id: I15fea0b6855a65da7cb48b24fc00ba303e33dcf8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166456 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-04-22tdf#159660: Add support for lighten mode in feBlendXisco Fauli
Change-Id: I17471a9c70a38d05de5ad476f817285fb2438e5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166429 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>