Commit Graph
2068 Commits
Author SHA1 Message Date
Caolán McNamara 21124741e0 ofz: pdf, check record againsts max allowed size
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I51a31c1e09d2b5d5a413c5345c40998e032f09d6
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/6117
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
(cherry picked from commit e230b10b7cd2d5d8623cdba0877ec68f67003690)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207659
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-07-06 13:06:56 +02:00
Caolán McNamara dcf16d610a ofz: pdf, clamp stream Length to the bytes actually read
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I155f3eddbd204069084b50f52f7cc6328fb053eb
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/6118
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
(cherry picked from commit 332e8831e0b0e580dae0d77a0ec27bd267af6b29)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207660
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-07-06 12:29:35 +02:00
Tomaž Vajngerl a3253ebf8d basegfx: speed up B2DHomMatrix a bit
translate/scale/rotate/shearX/shearY each used to build a
temporary B2DHomMatrix in the obvious sparse form and run the
generic doMulMatrix to combine it with *this, which multiplies and
adds a lot of zeros for every call. Make it faster by applying each
transform directly to the six stored cells instead.

Also unroll doMulMatrix itself (caching the six old values in
locals since the result overwrites them) and unroll the isIdentity
/ identity loops.

Using the micro-bench the speedup can be 50% for translate and
shear operations. In practice this will not have much measurable
effect (it could accumulate as B2DHomMatrix is used a lot for
rendering) but as the code is also more straight forward it is
worth merging.

Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: If13d91d4c7353be4e4433d8d8bb7f40866578a5b
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2755
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 3db39371454fa7de994dbc9b214668a4818ed357)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205801
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-06-16 22:27:31 +02:00
Neil Roberts 3cddd0bb95 sdext: Use Translate::nget for two strings with numbers
Two strings used in the Presentation Optimizer were using a count
without using pluralisable strings. They are only used with counts > 1
so maybe the assumption was that there is only one possible plural form,
but of course some languages have several plural forms that need
differing strings even for larger numbers.

I noticed this because the French translation was incorrect for
STR_DELETE_SLIDES as if %SLIDES was going to be replaced by a type of
slide rather than a number. Maybe if the string had plural forms that
would have been more obvious.

Change-Id: Icf2df1bfed3907226e45e819ad0c14c4a33e8bfe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206314
Tested-by: Jenkins
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
2026-06-11 13:36:08 +02:00
Michael Weghorn f26084217a weld: Move weld::Button to own header/Rename weld.hxx
In the past, weld.hxx used to contain the class
definitions for weld::Widget and all subclasses.

By now, weld::Widget and almost all subclasses have
been moved to separate headers, to make it easier
to keep the overview and to avoid having to
recompile ~all UI code when one class changes.

By now, only weld::Button is left in weld.hxx.
Rename the header to Button.hxx.
Drop weld.hxx includes and instead add Button.hxx
includes (or weld::Button forward declarations) where
weld::Button is used.
(Don't simply replace all weld.hxx includes with
Button.hxx ones, since many of them were for the
use of other widgets that have since been moved
to their own headers.)

Add further includes where needed now that the
(direct or transitive) includes of weld.hxx were removed.

Change-Id: I8ea6201446a418d5e38b46337059dcd517ee29d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205937
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-06-05 07:58:07 +02:00
Xisco Fauli b08afae7e4 poppler: upgrade to 26.06
Downloaded from https://poppler.freedesktop.org/poppler-26.06.0.tar.xz

Change-Id: Idbcf3baf344f7400dad28d06e4a2b18118e647f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205964
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-06-04 09:04:34 +02:00
Michael Weghorn 8f7cf9c32c weld: Move weld::CheckButton to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Add missing includes/forward declarations in places
previously depending on transitive includes that
are now dropped.

Change-Id: I3215b358e0fa45ffce08756218c386e1a4d7ebc6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205928
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-06-04 08:39:19 +02:00
Michael Weghorn da1c7a5459 weld: Move weld::RadioButton to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: I34876c5bef75e30e758029b0fe5afeecc92d509d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205903
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-06-03 23:19:54 +02:00
Michael Weghorn 243bb112ec weld: Move weld::Container to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Adjust includes in files that were implicitly depending
on transitive includes that are no longer present because
the more specific include/weld/Container.hxx is included
further down now instead of include/weld/weld.hxx.

Change-Id: I04e6bb72ce446b746dfdf88b45c7df9d0ccda473
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205899
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-06-03 23:19:22 +02:00
Michael Weghorn 336f70f966 weld: Move weld::Label to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: Ide86f35543468a88288a068cc9f89eaf381ac52f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205763
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-05-27 22:24:37 +02:00
Michael Weghorn ecab2e0226 weld: Move weld::ProgressBar to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: I8861b5494c22b666ed80ead82ec3a8293dbeee81
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205473
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-05-22 21:56:02 +02:00
Michael Weghorn 3f1fb9d4b0 weld: Move weld::Window to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: If7cb4403f1861c465f44a1cae4065b0bf8dfad48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205323
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-05-19 09:10:43 +02:00
Muhammad Naeem 884db13b71 tdf#147021: Use std::size() instead of SAL_N_ELEMENTS in several modules
Verified: make Library_tk Library_lng CppunitTest_sax_xmlimport Library_PresentationMinimizer Executable_xpdfimport
Change-Id: I1b7c30fda2b72cdc3fe1cf6bf802f15624aee148
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204771
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2026-05-11 15:31:06 +02:00
Xisco Fauli a427db4f20 poppler: upgrade to 26.04
Downloaded from https://poppler.freedesktop.org/poppler-26.04.0.tar.xz

Change-Id: I1e43d4a63da2f380b613718a897c3973ec9e16ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203153
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-04-02 16:10:33 +02:00
Noel Grandin 4b10710e09 loplugin:passstuffbyref
Change-Id: I559d246b25c99e5cb7a28ba94e04a2acedd3e720
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200943
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2026-03-04 19:22:19 +01:00
Gabor Kelemen eb087d25b3 tdf#146619 Use more forward declarations in include/drawinglayer
Change-Id: I5911dfb1cfc2bfd291758334b69123cfbce559a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199387
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
Tested-by: Jenkins
2026-02-22 12:08:33 +01:00
Mike Kaganski e18a815190 Use rtl::isAscii(Hex)Digit and o3tl::convertToHex
Since some code needs flexibility in error handling, where hardcoded
error value of -1 wasn't handy, o3tl::convertToHex was changed to
accept the error value as its template parameter.

Change-Id: Ifc771cc8fa29a801d4556dea969fc3ea7e620df5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199367
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2026-02-14 11:40:50 +01:00
Michael Weghorn ab3635b2f3 weld: Move weld::MessageDialog to own header
Move the class out of weld.hxx into its own header, in
order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: I5b23b02151c75bb49831a2bbf8d515eb0b54415e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199068
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-02-11 07:32:45 +01:00
Xisco Fauli 3c29b709cd poppler: upgrade to 26.02.0
* external/poppler/missinginclude.patch has been fixed upstream

Downloaded from https://poppler.freedesktop.org/poppler-26.02.0.tar.x

Change-Id: I7641b7b544e853a86563dbe312af4b36444dea8e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198803
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-02-06 17:21:15 +01:00
Gabor Kelemen 495fa42afa tdf#146619 Use more forward declarations in include/vcl/weld/
after recent split of these headers

This shaves off another 150M input

Change-Id: Ia4e42781cdc6fd6e795c9fb55c6c24dd641b8f0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197339
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
Tested-by: Jenkins
2026-01-31 11:06:42 +01:00
Gabor Kelemen c8cc15d483 Fix some non self contained headers in module sd sdext
Change-Id: Ib574b48a30baa4d7bd7609cf31063fe860703a8a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196635
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
2026-01-18 17:46:26 +01:00
shark 7eabaec02e tdf#165234 use lambdas instead of boost::bind
Change-Id: I502a783154fdced0526ac3dbcdf0d5b795fbb416
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197186
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
2026-01-17 14:10:57 +01:00
Gabor Kelemen 2a9fd078ff Add some customAssumeFilenames to yaml files
After checking all modules with
bin/find-unneeded-includes --finderrors --headers --recursive

these subdirectories seemed to need custom assumes for an
error free run of IWYU

Change-Id: I8e0553355809e49e3ec3d06aa4404e6cd7b72aff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196631
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
2026-01-12 11:21:38 +01:00
Gabor Kelemen b63115f3fa tdf#146619 Use more forward declarations in include/vcl/[d-g]*
Found after running bin/find-unneeded-includes --headersfwd include/vcl/[d-g]*

This shaves off about 150M input

Change-Id: I2b15257451d4b392dca3e5d07f4a443ee653b04c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196395
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
2026-01-11 21:38:37 +01:00
Mike Kaganski 2d68362dac enable-msvc-analyze: C6011: Dereferencing NULL pointer
C:\lo\build\workdir\UnpackedTarball\poppler\poppler\Object.h(258) :
warning C6011: Dereferencing NULL pointer 'cString'. See line 257 for an
earlier location where this can occur.: Lines: 254, 255, 256, 257, 258

See https://gitlab.freedesktop.org/poppler/poppler/-/issues/1658.

Change-Id: Id6778ad6f2d04dfbc2a1ef753bd0b6bda55ababc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196953
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2026-01-10 15:02:10 +01:00
Xisco Fauli b307d254a8 poppler: upgrade to 26.01.0
Adapt external/poppler/poppler-config.patch.1 after
commit 808094b11c07b1895bc9a1d03e338584045e6087
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Dec 5 01:59:41 2025 +0100

    cmakedefine -> cmakedefine01

Downloaded from https://poppler.freedesktop.org/poppler-26.01.0.tar.xz

Change-Id: I8cf88d535e6fbd85fa0761fa23ac790c01711e01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196684
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-01-08 22:40:24 +01:00
Michael Weghorn 01e513fccf weld: Move weld::SpinButton to own header/source
Move the class out of weld.hxx into its own header and source
file, in order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: I6555d2343ec9b01d7915cd52508c0db4c8704509
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196445
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-01-04 15:03:06 +01:00
Michael Weghorn b44a20cdb7 weld: Move weld::ComboBox to own header/source
Move the class out of weld.hxx into its own header and source
file, in order to make it easier to keep an overview and to avoid
having to recompile ~all UI code when the class is
modified.

Change-Id: Ib2fe4a6b5e34ad8ae2194ba85249ca25ed16e9d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196435
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-01-03 08:12:10 +01:00
Michael Weghorn 5454b7ed94 weld: Move weld::DialogController and subclasses to own header/source
This is also in preparation of moving weld::Builder to
its own header.

Change-Id: Icb65ee85376d17e1abead2c6339f78b129112d0a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195841
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-12-18 19:44:41 +01:00
Michael Weghorn 5b16b3acc6 weld: Move weld.hxx and weldutils.hxx to new include/vcl/weld subdir
This is in preparation of moving code out of weld.hxx
to separate headers/source files, in order to make it
easier to keep an overview and to avoid having to
recompile ~all UI code when anything changes.

Also move weldutils.cxx to a new vcl/source/weld
directory.

Change-Id: Ia75b42f21e560dd248307282a522f186a64cd742
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195777
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-12-17 18:20:13 +01:00
Mike Kaganski 7b04ef05cd Drop some uses Sequence::getConstArray
Similar to commit b280efcb9b
(Drop some uses Sequence::getConstArray, 2025-12-07).

Change-Id: Ieac325a660fe64e8172c5ed139380caa3d26a73c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195200
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-12-08 10:00:21 +01:00
Noel Grandin aaedabdaa3 loplugin:unusedmethods
Change-Id: I85e2ca6222e33c2a99bfd0ea614d5ad238a7e8de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194890
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-12-01 18:27:09 +01:00
Noel Grandin 6d0a0d9747 loplugin:unusedfields
Change-Id: I42dd442dc599d6a590b0b7874f5cd76dc8c07017
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194888
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-12-01 17:05:41 +01:00
Gabor Kelemen 4b1ef239c4 Revert "Unbreak build on sdext translations"
This reverts commit e72efd1527.

Reason for revert: translations repo update added the missing sdext.po 
files in commit 510e00c2a2d916e56a05a6d09ba28633ec9f23f1

Change-Id: Ib409fbb9f2d9e36940d5d77aab6a7c48f422438d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194291
Tested-by: Jenkins
Reviewed-by: Andras Timar <andras.timar@collabora.com>
2025-11-23 20:01:05 +01:00
Gabor Kelemen e72efd1527 Unbreak build on sdext translations
Change-Id: I1280b736c14b4d26048462212b713340608d783d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193771
Tested-by: Jenkins
Reviewed-by: Andras Timar <andras.timar@collabora.com>
2025-11-11 06:24:26 +01:00
Gabor Kelemen f86a784f8f tdf#61950 Move Presentation Minimizer UI strings out of officecfg
Change-Id: I8a9bba8cdde89a87340ed9dd46dbac53b6806e9d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193654
Tested-by: Jenkins
Reviewed-by: Andras Timar <andras.timar@collabora.com>
2025-11-10 15:32:38 +01:00
Balazs Varga 6998ed74d5 tdf#169160 - Fix after presentation minimizer works
the file size is barely changed (from 1.6 Mb to ~1.2),
comparing to older version with where we used awt::XBitmap
and the file size changed from 1.6 Mb to ~0.3.

Issue came up after commit:
7243f7c706

co-author: Gabor Kelemen <gabor.kelemen@collabora.com>

Change-Id: Id728abe61556c40d7dfb0f0f9e4fb7278639a691
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193322
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-11-03 17:16:24 +01:00
Đoàn Trần Công Danh 89841fc694 Fix memory leak with poppler-25.10.0
https://gerrit.libreoffice.org/c/core/+/192743, which fixes ftbfs with
poppler 25.10.0, unfortunately introduced a memory leak when building
with poppler 25.10.0 or later.  `pOwnerPasswordStr' and
`pUserPasswordStr' ownership are supposed to be transfered to
`pDocUnique', but is now orphaned.

This change fix that said memory leak.

Change-Id: I545d461c07f033b41a4276665483b44fa401a3bd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192645
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-10-24 09:56:14 +02:00
Xisco Fauli ae83e57750 poppler: upgrade to 25.10
Downloaded from https://poppler.freedesktop.org/poppler-25.10.0.tar.xz

Change-Id: I05f89f4177312a148a5a15cd1f1b206d1dc01a86
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192743
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2025-10-20 21:19:32 +02:00
Noel Grandin 40e5bc6e68 lets have just one getB2DRange function/method
Change-Id: I5081abca177c6fb8bd21d971d93dc115d57de294
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192589
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-10-19 12:13:53 +02:00
Gabor Kelemen a20e7520c3 Sanity check all IwyuFilter files
This should not complain anymore:

for i in $(ls -1 */*yaml) ; do mod=$(echo "$i" | cut -d '/' -f1 ) ; bin/find-unneeded-includes --sanitycheck "$mod"; done

Change-Id: I5c4b99f5cb58c6f696b127c81edd6d323104cd7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191829
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2025-10-14 19:44:19 +02:00
Xisco Fauli b4e581f3e3 poppler: upgrade to 25.09.0
Downloaded from https://poppler.freedesktop.org/poppler-25.09.0.tar.xz

Change-Id: Ic7f3abd64d129543dcdc370816a0d69e5a59be90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190513
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-09-02 12:35:00 +02:00
Mike Kaganski f0b6299a8e Simplify PDF signature search using std::search
Change-Id: I143b195e23d0e4969744ec7eca6e7d365dab9e0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190290
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-08-27 19:43:08 +02:00
Caolán McNamara 05fb33a429 cid#1662135 Variable copied when it could be moved
and

cid#1660117 Variable copied when it could be moved
cid#1659950 Variable copied when it could be moved
cid#1659946 Variable copied when it could be moved
cid#1659945 Variable copied when it could be moved
cid#1659936 Variable copied when it could be moved
cid#1659933 Variable copied when it could be moved

Change-Id: Ib6cbb6751a230e62b416b33ca082b279a2ecb878
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189318
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-08-10 22:32:18 +02:00
Dr. David Alan Gilbert 393f24a891 sdext,pdfimport: cid#1662134: Uninitialized members
Change-Id: I2fc93feb4f48bcd8e1d4eaa3f7291878505c813f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189316
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: David Gilbert <freedesktop@treblig.org>
2025-08-10 22:01:35 +02:00
Dr. David Alan Gilbert 2383fae366 tdf#44729 sdext,pdfimport: Hide transparency groups 'for soft mask'
In PDF, 'Transparency groups' are used to group objects for compositing.
One variant of those is a transparency group that doesn't actually
get directly composited, but is used as a 'soft mask' to modulate
the effects of another group when the other group is composited.

So far we've not done anything for transparency groups, where
softmasks are used that means the softmask gets rendered as a visible
object - often a big semi-transparent polygon covering the rest.

Add 'group' elements into the tree for Transparency Groups and mark
them.
During tree walks skip the 'for soft mask' transparency groups.

This improves tdf#44729 which prior to this patch is mostly
seen as a big black page because it's covered with the soft mask
misrendering.

Since it also stored the transparency group it also means we can
attack the real rendering of those later.

Change-Id: Ieb1eb56b15d8def5c842c1d84349173ccca630dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188455
Reviewed-by: David Gilbert <freedesktop@treblig.org>
Tested-by: Jenkins
2025-08-09 15:54:58 +02:00
Dr. David Alan Gilbert e750353139 tdf#44729 sdext,pdfimport: Add Group elements
Add a new tree element 'group' which represents a collection of other
elements but doesn't necessarily give a specific output node.
Later patches will add some flags and use those to change the output.

Change-Id: I981d345873436f6f9ffc9de67123f38de1e3d86a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188454
Tested-by: Jenkins
Reviewed-by: David Gilbert <freedesktop@treblig.org>
2025-08-09 15:54:49 +02:00
Dr. David Alan Gilbert 56d8b1a916 tdf#44729 sdext,pdfimport: Route transparency group down
Route the calls from the wrapper down to the pdfiprocessor layer.

Change-Id: I646adf4acc884cccecd08da6fcdca4cfa8841954
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188453
Tested-by: Jenkins
Reviewed-by: David Gilbert <freedesktop@treblig.org>
2025-08-09 14:59:55 +02:00
Dr. David Alan Gilbert f365a63a4a tdf#44729 sdext,pdfimport: Pass begin/end Transparency Group
Pass the begin/end of transparency groups down from the wrapper,
for now just with the 'forSoftMask' flag.

Change-Id: Id3f69a943a16166106ce23cb600cc85c26c505ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188452
Tested-by: Jenkins
Reviewed-by: David Gilbert <freedesktop@treblig.org>
2025-08-09 14:59:43 +02:00
Caolán McNamara 5568801a46 cid#1556634 Variable copied when it could be moved
cid#1659641 Variable copied when it could be moved
cid#1659647 Variable copied when it could be moved
cid#1659650 Variable copied when it could be moved
cid#1659663 Variable copied when it could be moved
cid#1659685 Variable copied when it could be moved
cid#1659698 Variable copied when it could be moved
cid#1659703 Variable copied when it could be moved
cid#1659705 Variable copied when it could be moved

Change-Id: If0d399dcce73d47be105ac4b1c342bcc010c56c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189181
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-08-09 00:45:51 +02:00