summaryrefslogtreecommitdiff
path: root/include/tools
AgeCommit message (Collapse)Author
2024-10-22move vcl::DeleteOnDeinit to toolsNoel Grandin
so we can fix a shutdown use-after-free in sot. Change-Id: I32f83bd94627d72d7bee7ea2ebd6ab77a7f78435 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175335 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-10-21Make tools::Time ctor taking sal_Int64 privateMike Kaganski
This ctor is meant to set the value of nTime directly; and that value is not nanoseconds, but an encoded value, using SEC_/MIN_/HOUR_MASK. But in some places, this ctor was misused for setting of nanoseconds, which would only accidentally work for values less than one second. All places that initialized tools::Time with 0, now use EMPTY. This makes the ctor private; and for the very few cases where really the encoded value of nTime is stored / restored, fromEncodedTime is introduced. Change-Id: I1f1994bd9aab1b51a41b1de637619049fe820da4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175283 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-10-16loplugin:unusedmethodsNoel Grandin
Change-Id: I6ba4b4046190b701d4a15c6fa90b6009ecf4ab1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175014 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-10-14version COVERITY conditionalsCaolán McNamara
so there's a recheck on each major if they are still needed Change-Id: I351f731fe4eaec0ebf735147a9a168cccba3bca5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174883 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-10-08Simplify tools::Time codeMike Kaganski
Change-Id: I44a61a0ae2f6e2b81cce96ff96418484a611821d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174689 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-09-13sw: add Comments Panel in sidebarMohit Marathe
This commit adds a sidebar deck for comments. It has all the functionalities of the old comments shown via annotation window. Change-Id: Ibab0e21a54c097d0f42bddb1d07da74319970135 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167840 Tested-by: Jenkins Reviewed-by: Sarper Akdemir <sarper.akdemir@allotropia.de>
2024-08-23allow an exemption to be made for a specific hostCaolán McNamara
Change-Id: Ie423df7839e793a9c07561efb56d5649876947ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168826 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172328 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16Resolves tdf#161766 - WCAG 2.1 compliant luminance for isDark()Heiko Tietze
Alternative solution to I63b85694584cdc6213e7b904ed6402b6c2f2b422 Change-Id: Ifca47de30616295a9965b9313886456313921401 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171862 Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Tested-by: Jenkins
2024-08-11Resolves tdf#61242 - Customization of comment background colorHeiko Tietze
* COL_AUTHOR<1..>_DARK/LIGHT/NORMAL removed Author1..9 added * dark variants calculated from light with 50% brightness * light does In/DecreaseLuminance(30) and dark (sd) resp. anchor (sw) In/DecreaseLuminance(80) depending on GetUseDarkMode() * sw: font color depends on outline background, which now picks up DOCCOLOR; this does not work for dark colors in light mode, for example * sd does not update on changes and requires a restart Change-Id: I773793de8cfbdc0d23124db790604b93030375c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171523 Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Tested-by: Jenkins
2024-07-18make date/time single-arg constructors explicitNoel Grandin
Change-Id: I943f755d95b90ef8aeb7d5b339f617ff50db4e29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170673 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-07-14tdf#145538 - related: Make tools::PolyPolygon iterableYuki Joou
This patch allows tools::PolyPolygon to be iterated using c++11's fancy range-based for-loops. It also upgrades a bunch of old-style for-loops iterating over polypolygons to the new style to make code more readable. Note that not all for-loops iterating over polypolygons have been upgraded, as I didn't find a way to automatically find those. I just did a few I found manually. Change-Id: Ifa8d0d44e6f0aa28fdcfd87d70058b12f48c1349 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168730 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-07-08sd: function to return a presentation info in a JSON documentMarco Cecchetti
The presentation info includes properties like document size, if the slide is visible, master slide information and similar. [ Miklos: don't refer to removed tools::ScopedJsonWriterArray. ] Change-Id: I5b0acff2ee0df351dd1859e02695ca249e17c391 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170155 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-07-07move UniqueID to tools and rework to increase counter in constructorTomaž Vajngerl
In the tools module it can be used in more other modules. Changed the instantiation to increase the counter already in the constructor, so no need to check if the ID is 0. Also test for UniqueID Change-Id: I77c80461875c69496a7e218534d16d6550c168c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170061 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-07-06cid#1554717 COPY_INSTEAD_OF_MOVECaolán McNamara
Change-Id: Icb1df2b857568cf085b597e378094e7231286fce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170047 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-07-02Use more getters/setters instead of direct member accessMike Kaganski
Change-Id: I8e0077f9040f0036f16e97da65c93c3fd6a87747 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169744 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-06-29Move MapToO3tlLength and FieldToO3tlLength to respective enums' headersMike Kaganski
Decreases dependency on <tools/UnitConversion.hxx> a bit. Change-Id: Ia469c08ca2844c522f508a724ddc879120d0b50d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169761 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-06-29Simplify a use of convertTwipToMm100 a bitMike Kaganski
For some reason, MSVC fails to find the o3tl::convert overload for Size defined in <tools/gen.hxx>, unless the call to convert is unqualified, accompanied by a 'using namespace o3tl' in convertTwipToMm100. Change-Id: I7100ef55156b6944b5adc5aefa52eee38b3fe69e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169751 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-06-28Simplify solar.h a bitMike Kaganski
Use std::copy / std::reverse_copy for double serialization. Also remove __cplusplus conditions, because the header is not included in any C files. And simplify the functions uses, where casts were unneeded. Change-Id: I1d8375e601851231fdffcf52e3f3e3bdcbcbde7f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169706 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-06-20tdf#161469 - Basic: align implementation now with the now function in calcAndreas Heinisch
Align the implementation of the now function in basic with the now function in calc to include the also nanoseconds. The precision is limited to milliseconds to avoid comparision inaccuracies. Change-Id: Ia85b653898f5849f67a171749725faab976b2a8a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168706 Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2024-05-13do less OString->OUString conversion in tools datetime functionsNoel Grandin
Change-Id: I93d012f32b8006019c431b8bf88ab9c7ffb4d3a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167574 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
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-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-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-20loplugin:constantparamNoel Grandin
Change-Id: I4963987a63d82dfe086932307675f92deebb8883 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166316 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-19loplugin:unusedfieldsNoel Grandin
Change-Id: I43b7a553177bbbdeebe37f7d7e63dfcb2ae70778 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166292 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-17Simplify a bitMike Kaganski
Change-Id: Iadfa442f762aa3caf3a8de7f3633be4e73bfd91a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166091 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-17Drop FRound, and use generalized basegfx::froundMike Kaganski
Change-Id: I7447e649dc3ef4e51242f69c7486a3e84e103d2e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166159 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-14Round in XmlWriter::attribute when passing a doubleMike Kaganski
Before, it truncated. Rounding provides a closer value. Change-Id: I213e6ae34ada2f5081cb2c8b2ef431448c712b37 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165947 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-04loplugin:unusedmethodsNoel Grandin
Change-Id: I19f466a272c821185bea4b45efd34392e525c0d1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165785 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-26loplugin:finalmethodsNoel Grandin
create a plugin that finds methods we can mark as final because they are not override in subclasses. Which is useful both as documentation (telling you that you don't need to worry about subclasses changing the implementation under you), and for performance, letting the compiler elide virtual calls in many cases. Apply the results to a subset of stuff in /include Change-Id: I7b5cc893ec2f343bc356bfc338e4cf531ffba1e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165054 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-17loplugin:unusedmethodsNoel Grandin
Change-Id: Ib0a72355972662c6b902bca9a527be91fb3e1d17 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164930 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-11Document Colors do not show any color in the PaletteCaolán McNamara
same is true for "Theme Colors", a problem since: commit 4ccc2f0e3f45c9d78f74b1848851bedf71f7382d Date: Fri Mar 1 22:11:14 2024 +0200 cool#8327 use tools::JsonWriter for theme colors Change-Id: Ibaab5df197bd8005037e066181e8a50bdda5ceda Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164658 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164669 Tested-by: Jenkins
2024-03-02avoid a memcpy when constructing output of tools::JsonWriterNoel Grandin
we can store the data in an rtl::OString object and then return that directly Change-Id: I65af6820bfd3135b38d437cf9736fffff8924e88 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164291 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-25Avoid MAX_PATH limitation in launcherMike Kaganski
... and drop some manual memory management. Change-Id: I4c60ce559ff185d4685a6b9799a97651438115b1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162502 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-23use more string_view in tools::JsonWriterNoel Grandin
Change-Id: Ia3ac54a1164b99a806298a47115ea3bc570f3b0c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163810 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-19hide more symbolsNoel Grandin
using the bin/find-can-be-private-symbols.py script to find classes with large numbers of exported symbols that can hidden. before exported = 58104 imported = 30810 unused_exports = 35433 after exported = 55094 imported = 31073 unused_exports = 32423 Change-Id: Idd0a70ee3740afd5ca1a86771e0e2ff8090d102d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163456 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-12use more UNLESS_MERGELIBSNoel Grandin
Change-Id: I351a9127fb26369d8f598b6d6519d7e490fa476b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163190 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-09tdf#157664 Drop operator !=, where respective operator == is definedRafał Dobrakowski
Found when working on 'tdf#141908' Change-Id: I33aae153b448c4c6bf0a17810a16c34f8e400774 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163104 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-06return string_view from some XmlWalker methodsNoel Grandin
elides some OString temporaries Change-Id: Ic07f18eb3c71637593e64128605c1ebfa8e68474 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163044 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-29tdf#143148 use pragma once instead of include guardsKeldin Maldonado (KNM)
Change-Id: I42c39d991d243191f410ebb8f91940d5922a6fc5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162678 Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-01-16chart2: Make automatic area coloring for charts work for tiled renderingofftkp
Charts now get a temporary colored applied to the area property set if their color was set to automatic, which is done by default in tiled rendering mode. Change-Id: Ic6bd19b97d2a0ffa2a1ad516cfa202e2f4921db7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160659 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-01-16loplugin:unusedfieldsNoel Grandin
Change-Id: Ic53aacfc76cb73902cf5e304153975fa02509da2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162110 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-09lok: external data source listSzymon Kłos
Make possible to filter allowed data sources. It is used for WebDAV curl, WEBSERVICE function, cell external references. Change-Id: Ifc82af31ff1123b5656a21e6a27624fb1616db39 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160196 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> 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/+/161772 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2024-01-08Simplify JsonWriter a bitMike Kaganski
Change-Id: Ifa4278cfd62df4179dd3ae627369c077e31dbd00 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161780 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-31add comment to SvLockBytesNoel Grandin
Change-Id: I41280ba13a35d2e89e24a574200f3db60dfd293e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161495 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-30no need to use SvLockBytes in formsNoel Grandin
Change-Id: Ide586997d504e0fbdb72aa1db77c49ba3d6007c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161437 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-24Remove unused headers found by bin/find-unusedheaders.shGabor Kelemen
Change-Id: I859138dee575ef7fd76db28b619c673782914782 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161235 Tested-by: Jenkins Reviewed-by: Gabor Kelemen <kelemeng@ubuntu.com>
2023-12-20Fix BigInt::AbsMike Kaganski
It would fail to negate SAL_MIN_INT32. Change-Id: Ia5d34fc31917cabee2a1b130ef69c91b202592fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161063 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-20Make BigInt::DivMod public, to allow optimized divisionMike Kaganski
Change-Id: I4f79c30b9ab997d01e59a0dec76986e74abfc11f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161053 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-20Simplify and rename for clarityMike Kaganski
Change-Id: Ic97a2b313c6f7d9da540a8867f01362c2fe7b0d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161052 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>