Commit Graph
3296 Commits
Author SHA1 Message Date
Noel Grandin ab704c00fd tdf#161865 Base Table Design View not editable
we had an ODR violation with a constant named PROPERTY_DATASOURCE which
is also defined inside dbaccess

regression from
commit bacb92275c
"add dbu to --enable-mergelibs=more"

Change-Id: I315ba82e0bccc49e01bd6a438b7e671b971410dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170939
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-07-24 16:43:42 +02:00
Caolán McNamara 8a83a62410 cid#1555167 COPY_INSTEAD_OF_MOVE
and

cid#1555172 COPY_INSTEAD_OF_MOVE
cid#1555184 COPY_INSTEAD_OF_MOVE
cid#1555188 COPY_INSTEAD_OF_MOVE
cid#1555197 COPY_INSTEAD_OF_MOVE
cid#1555209 COPY_INSTEAD_OF_MOVE
cid#1555211 COPY_INSTEAD_OF_MOVE
cid#1555215 COPY_INSTEAD_OF_MOVE
cid#1555216 COPY_INSTEAD_OF_MOVE
cid#1555217 COPY_INSTEAD_OF_MOVE
cid#1555218 COPY_INSTEAD_OF_MOVE
cid#1555222 COPY_INSTEAD_OF_MOVE
cid#1556674 COPY_INSTEAD_OF_MOVE
cid#1555229 COPY_INSTEAD_OF_MOVE
cid#1555233 COPY_INSTEAD_OF_MOVE
cid#1555234 COPY_INSTEAD_OF_MOVE
cid#1555242 COPY_INSTEAD_OF_MOVE
cid#1555250 COPY_INSTEAD_OF_MOVE
cid#1555251 COPY_INSTEAD_OF_MOVE
cid#1555254 COPY_INSTEAD_OF_MOVE
cid#1555304 COPY_INSTEAD_OF_MOVE
cid#1555307 COPY_INSTEAD_OF_MOVE
cid#1555317 COPY_INSTEAD_OF_MOVE
cid#1555329 COPY_INSTEAD_OF_MOVE
cid#1555340 COPY_INSTEAD_OF_MOVE
cid#1555347 COPY_INSTEAD_OF_MOVE
cid#1555352 COPY_INSTEAD_OF_MOVE
cid#1555358 COPY_INSTEAD_OF_MOVE
cid#1555363 COPY_INSTEAD_OF_MOVE
cid#1555365 COPY_INSTEAD_OF_MOVE
cid#1555367 COPY_INSTEAD_OF_MOVE
cid#1555374 COPY_INSTEAD_OF_MOVE
cid#1555380 COPY_INSTEAD_OF_MOVE

Change-Id: I343194c10749488a1143e2517ee0638ab19da218
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170888
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-23 21:58:02 +02:00
Caolán McNamara 2a20a894b0 cid#1608071 Out-of-bounds access
Change-Id: Ia258bb10c015150f3ff8f978e975a033e981aa92
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170633
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-17 18:25:54 +02:00
Mike Kaganski 493b8ab997 Simplify comphelper::query_aggregation
Change-Id: Id673c27e21c6706367f2effc92bbea61c83a5482
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170133
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-07-09 05:46:19 +02:00
Tomaž Vajngerl 374a76adc5 vcl: Remove graph. reader context from {Imp}Graph and GraphicReader
This removes the mpContext member variable from ImpGraph, which
also make {Get,Set}ReaderContext on Graphic obsolete and is also
removed. GraphicFilter and other code is adjusted and simplified.

Change-Id: Icd1927d7b1bd4624b523d0f49a4343911ec6cd0a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165214
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-06-27 16:07:20 +02:00
Noel Grandin 0572ef356b loplugin:ostr in various
Change-Id: I7aa8ed716998a185996482dc561219b398a1c919
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169080
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-06-18 13:16:23 +02:00
Stephan Bergmann dc01a6e7ef Some missing "block untrusted referer links" for form controls
...where "Referer" is now passed in as an additional property, so that the
relevant objects can decide whether to obtain graphics while loading a document

Change-Id: Ie3dabc574861713212b906a0d7793f438a7d50a8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168674
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-06-11 16:09:34 +02:00
Gabor Kelemen e3ca92bcfd Drop unneeded 'using' instances
found with bin/find-unused-using.sh

Change-Id: I647f493ee313e79e7a9967960ea089b729de59a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167637
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Tested-by: Jenkins
2024-05-16 08:35:11 +02:00
Noel Grandin 9c92eb6800 createFromAscii -> OUString literals in OLimitedFormats
Change-Id: I8acbc47f17da765189a824b067f89e590e661790
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167619
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2024-05-14 15:54:33 +02:00
Noel Grandin f2545fffcb replace createFromAscii with OUString literals in ControlFeatureInterception
Change-Id: If0fbaafbaa318ec541341fde723f92f3e8e92cfa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167510
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2024-05-11 19:27:55 +02:00
Armin Le Grand (allotropia) 24d78fcb53 tdf#160906 use SfxPoolItemHolder
to avoid handling already deleted SfxPoolItems.

Change-Id: I1f1f8f93cae8db7f7c8df66c2c7f3c02b59a39c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167274
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Tested-by: Jenkins
2024-05-08 20:49:51 +02:00
Noel Grandin 1eaae3966d loplugin:ostr in forms
Change-Id: Ifee5d86b54aa746dbd3b17ff966794f32fbc23bd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167303
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-08 11:15:40 +02:00
Noel Grandin 3f4726c45e replace createFromAscii with OUString literals in forms
Change-Id: I688fbf8777736a3f55ab5c0d9c8acaf55f83d8b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167009
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2024-05-02 20:09:09 +02:00
Caolán McNamara 41590e7d1f WaE: C6011 Dereferencing NULL pointer warnings
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-02 09:24:11 +02:00
Gabor Kelemen 4c1d626d72 Fix typo: compytibility
Change-Id: I989d0a9510e6a3691a4c1ba89dd3f04e62906292
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165691
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-04-09 08:46:04 +02:00
Gabor Kelemen ad640dedd2 tdf#146619 Drop unused 'using namespace' in: forms
Change-Id: I5d81e8c359100da2a7dd98e75a1f79bbb73d9521
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165570
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-04-05 13:45:10 +02:00
RMZeroFour 599b113b73 tdf#42982 Add error messages to thrown exceptions
As part of the efforts in #42982 to improve the UNO API
error reporting, this commit adds error messages in several
files to help improve debugging experience.

Change-Id: I7a51d4fd1e3a57798d70bc3464b034649948a287
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165253
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-03-30 13:32:16 +01:00
Noel Grandin 35d9d669f2 convert OXSDDataType to comphelper::WeakImplHelperBase
Change-Id: Idb299ea698480d0b98ac0deff9d1f9b87e749782
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165442
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-28 19:08:49 +01:00
Armin Le Grand (allotropia) cebbd5795d ITEM: Rename for more control over SlotID usages
Change-Id: I51585f1c15984a066262023184f668662853d20f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163556
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-02-18 21:37:52 +01:00
Armin Le Grand (allotropia) ca3c6d468f ITEM: ItemPool Rework (I)
Driving forward the Item reworks I now take the
ItemPool in focus: It now does not hold any items
anymore and should be renamed to something like
ItemInfoProvider/ItemHelper, since it's main purpose
is to provide the Defaults for the Item functionality.

There is that SfxItemInfo, only a struct and bundling
SlotID and ItemFlags. There are also the DefaultItems,
just handled as ptrs in an array. It is/was always
error-prone to keep these in sync. Remember that it's
also necessary for the order to not only being sorted
but being increments of one with no gaps allowed in
the WhichIDs to which the Items are bound.

I now bundled that to a new class ItemInfo that joins
WhichID, SlotID, ItemFlags and the default Item. This
is a pure virtual base class, it comes in three
derivations:

(1) ItemInfoStatic:
This is supposed to be global static and hosts the
Item in a std::unique_ptr to ensure cleanup. It is
designed to be constructed once during runtime and
being shared globally. It allows the ItemPtr to be
nullptr to mark as non-static (if initial static is
not possible for some reason) but still offers the
needed data. Most cases (95%+) are of that case.
The contained Item is owned by that instance. The
flag isStaticDefault() is set at the Item.

(2) ItemInfoDynamic:
This is supposed to be used for cases where the Item
cannot be static: Mainly for SfxSetItem (that needs
a Pool itself in the contained SfxItemSet, so lifetime
is bound to that Pool), but other cases showed up in
the transition. These instances live while the Pool
lives and get destructed when the Pool goes down.
Also uses std::unique_ptr for the Item instance for
as much automated cleanup as possible, the contained
Item is owned by that instance, the instance by the
Pool. The flag isDynamicDefault() is set at the Item.

(3) ItemInfoUser:
This is used for UserDefaults that can be set for
every ItemInfo entry to 'overshadow' the default
from the 'outside'. It uses a regular Item and
the central access methods implCreateItemEntry/
implCleanupItemEntry to manage the Item instance,
thus works like a SfxPoolItemHolder. The Item
instance can be globally shared and re-used even
when the Pool goes down. Instances belong to the
Pool and are cleaned up when the Pool goes down.
This Item does not need any further flag to be
set.

The ItemInfos are organized using a class
called ItemInfoPackage:

This bundles groups of ItemInfoStatic to
functional instances. There are derivations/
implementations of this e.g. for Writer ItemPool
bundling all the needed defaults for Writer,
similar for draw/impress, Calc and other usages.

These ItemInfoPackage can be 'registered' at an
ItemPool using it's method registerItemInfoPackage.
This does all the needed stuff to setup that
group of ItemInfos at the Pool (It even sets
internal vars First/LastWhich, that info can just
be derived from the buildup ItemInfo Ptrs).

The ItemInfoPackage has methods 'size()' and
'getItemInfo(index) to allow looping over it
and deliver the infos the Pool needs. The
(forced, pure virtual) overloads of getItemInfo
in the specific implementations check for the
ItemPtr being nullptr and create a exclusive
incarnation of ItemInfoDynamic for the Pool if
needed, returning that. The Pool owns the
ItemInfoDynamic incarnations and uses the
ItemInfoStatic directly. On shutdown it cleans
up the ItemInfoDynamic as needed.

The ItemInfoUser is used by the Pool when a
UserDefault is set/used: for SetUserDefaultItem,
GetUserDefaultItem, ResetUserDefaultItem. It
is not held in a 2nd list, but directly in the
list of ItemInfo'ptrs: To keep track of this
an unordered_map is used that helds the original
ItemInfo associated with the WhichID. That way
no two lookups (as before) are needed to get the
current Pool's default for any WhichID.

The derivations of ItemInfoPackage are
encapsulated and just allow access to an
ItemInfoPackage& with a single method as
return value. All use a static local instance
of a std::array<ItemInfoStatic, FIXED_SIZE>
which constructs all ItemInfoStatic and the
static Item instances - if already possible.
Sometimes it is necessary to overload the
constructor to set some static instances
for Items later than the lib init. These are
also just marked with nullptr as Item instance.
Some need to overload getItemInfo to complete
instances of ItemInfoStatic, if needed, or
create and deliver instances of ItemInfoDynamic.

The registerItemInfoPackage also offers a
optional lambda callback: there were two cases
where local data from the Pool was needed to
incarnate the item - just add that to the
call to registerItemInfoPackage if needed,
see examples in the adapted code.

For the re-use of Items this means that now
in SfxItemSet/SfxPoolItemHolder *true* static
Items can and will be used without RefCount
directly and globally. This is also the case
for dynamic Items, with the exception of
differing Pools for SfxSetItems which cannot
be done.

Future:
That design is already prepared to allow
solving that Pool-chaining problem: currently
there are master/sub-pools and all accesses
have to traverse that structure before even
doing anything.
For the future the idea is more to 'compose'
a Pool by registering ItemInfoPackages, e.g.
for Writer pool you may start with SfxItemPool,
register the writer-specific ItemInfoPackage,
then the one for DrawingLayer (if needed) and
the one for EditEngine.
It should also be possible to get to smaller
granularities of that packages. Ideas for
new ones will emerge. We might also think
about composing Pools which can e.g. run Writer
and Chart, so allowing to use Chart *without*
OLE stuff in Writer - just ideas...

More changes:
- Adapted all stuff, cleaned up old stuff/
  definitions
- Removed FreezeIdRanges, that can be done
  once per Pool on-demand (and cannot be
  forgotten to be called)
- Merged XOutdevItemPool with SdrItemPool
  and offered a ItemInfoPackage which joins
  both needed sets of Items
- All the cleanup hassle with Pools and
  defaults cleaned up
- Adapted all access methods of the pool
  to use that new stuff. Pool chaining
  currently stays, but I use a central
  method 'getTargetPool' instead of
  recursive calling to get the correct
  Pool for the action

Change-Id: I2b8d3d4c3cc80b1d0d0b3c0f4bd90d7656b4bab7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163157
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-02-12 10:35:33 +01:00
Armin Le Grand (allotropia) 4790ef5cb5 ITEM: Cleanup some Pool stuff with Defaults
Sorted out some methods at ItemPool which process
Defaults to make more clear what is going on and
what which method is doing.

Change-Id: I2568d3e03d0a56a14b6fe4e04521e1a8e22c000b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162643
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-01-27 19:02:54 +01:00
Mike Kaganski 0fa827dbb2 Drop std::as_const from css::uno::Sequence iterations
Obsoleted by commit 2484de6728 (Remove
non-const Sequence::begin()/end() in internal code, 2021-10-15) and
commit fb3c04bd19 (Drop non-const
Sequence::operator[] in internal code, 2021-11-05).

Change-Id: Idbafef5d34c0d4771cbbf75b9db9712e504164cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162640
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-27 12:43:48 +01:00
Tomaž Vajngerl 049bbd95c1 editeng: change EditEngine getter to ref in {Imp}EditView
{Imp}EditView always needs to have EditEngine set (or it would
crash otherwise), so we can change the getter to return a referece
instead of a pointer. This simplifies things a bit because we get
rid of all the nullptr checks and makes the interface more clear.

Also change direct access to mpEditEngine in {Imp}EditView to use
getEditEngine() and getImpEditEngine() (returning a reference)
instead.

Change-Id: Ib8f9c565b8364144bb9c35c3093c4975af1970c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162333
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-01-21 00:54:54 +01:00
Noel Grandin f54d9547c0 loplugin:unusedmethods
Change-Id: I24c429c7cb8283a384b72499d1c3f4c2f1457c33
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162155
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-16 13:01:25 +01:00
Caolán McNamara f7327527d4 cid#1560053 Missing move assignment operator
and

cid#1560054 Missing move assignment operator

Change-Id: I438699b24ca7aa7726dbce3af310d80327b9a717
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161708
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-06 19:48:25 +01:00
Caolán McNamara 4b9a538418 cid#707862 Uninitialized pointer field
returned since

commit 04c3ef3c72
Date:   Sat Dec 30 15:08:30 2023 +0200

    ImgProdLockBytes is unnecessary

Change-Id: Iabd3cf1f64b87b8ffb8c73702ef138cf7b7d64a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161502
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-31 21:02:10 +01:00
Julien Nabet 7dcc4bf0d8 Replace "size() != 0 with !empty()" (forms)
Change-Id: I855c4868334c8890b00e78caa67bfc9c9c9ebd80
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161485
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-12-31 16:03:09 +01:00
Andrea Gelmini 2ccb21c26f Remove duplicated include
Change-Id: I64436766ca0274e0877c861db3ffdb9d87f5e12a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161462
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-12-31 11:26:36 +01:00
Noel Grandin ec29db74bf no need to use SvLockBytes in OImageControlModel
we already have other, simpler facilities for wrapping streams

Change-Id: Ic6f88821e089951999395507bc84e68ea339d9de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161444
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-30 19:05:38 +01:00
Noel Grandin 04c3ef3c72 ImgProdLockBytes is unnecessary
we already have facilities for doing this kind of wrapping
(removes another instance of SvLockBytes)

Change-Id: Ie3546efe06580f9492d8f6ddbc1a2e904036465a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161443
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-30 19:05:29 +01:00
Noel Grandin 7de4661827 no need to use SvLockBytes in forms
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-30 13:45:53 +01:00
Caolán McNamara 6ef28599b2 cid#1545612 COPY_INSTEAD_OF_MOVE
and

cid#1545605 COPY_INSTEAD_OF_MOVE
cid#1545587 COPY_INSTEAD_OF_MOVE

Change-Id: Iafb1d81dbacfefe70fbddd84b29e827dc137ef07
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161077
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-20 20:59:04 +01:00
Noel Grandin a214ac6774 simplify and modernise ScopedBitmapAccess
(*) Make all of it use a "Scoped" paradigm
(*) pass by value, no need to allocate on heap
(*) make all of the construction go via the *Access constructors, instead of it being some via the constructors and some via the Acquire*Access methods.
(*) take the Bitmap& by const& in the constructor, so we can avoid doing const_cast in random places.

Change-Id: Ie03a9145c0965980ee8df9a89b8714a425e18f74
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160293
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-07 09:32:14 +01:00
Julien Nabet 67c2a47861 cid#1545597 Using invalid iterator
and :

cid#1545537 Using invalid iterator
cid#1545508 Using invalid iterator
cid#1545494 Using invalid iterator
cid#1545478 Using invalid iterator
cid#1545427 Using invalid iterator
cid#1545420 Using invalid iterator
cid#1545400 Using invalid iterator
cid#1545300 Using invalid iterator
cid#1545258 Using invalid iterator
cid#1545257 Using invalid iterator
cid#1545200 Using invalid iterator
cid#1545183 Using invalid iterator

Change-Id: Ibf3a41902f34286967195c5c3b22e337a4b06809
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160322
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-12-04 22:10:20 +01:00
Noel Grandin 0cea768b52 loplugin:fieldcast in Binding
Change-Id: Ia4bb341dba0c853b53c42a36fcb472e5948f1708
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159839
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-11-23 08:13:53 +01:00
Stephan Bergmann bd6fb0cd3e Extended loplugin:ostr: Rewrite some O[U]StringLiteral -> O[U]String
...in include files.  This is a mix of automatic rewriting in include files and
manual fixups (mostly addressing loplugin:redundantfcast) in source files that
include those.

Change-Id: I1f3cc1e67b9cabd2e9d61a4d9e9a01e587ea35cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158337
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-23 11:04:42 +02:00
Stephan Bergmann 6581f028f8 Extended loplugin:ostr: Automatic rewrite O[U]StringLiteral: forms
Change-Id: Ifab0f06a776a9c505508781018300c7ce5d46436
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158194
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-19 20:21:47 +02:00
Mike Kaganski 176e8cf09a Use exception ctors, instead of setting members later
Avoids overwriting source location in message

Change-Id: Ia0290c7dd1ab3ea1357712a27ecab75c7b583dd4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157893
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-14 15:37:17 +02:00
Stephan Bergmann e0c33ec15f loplugin:ostr: automatic rewrite
Change-Id: I2d09b2b83e1b50493ec88d0b2c323a83c0c86395
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157647
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Jenkins
2023-10-07 00:47:20 +02:00
Julien Nabet 74410e57bd Replace useless lcl_throwIllegalArgumentException function (forms)
Change-Id: Icad8c36ef91edd12da8cc533e3ce24c0000a8a28
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157590
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-10-05 20:35:59 +02:00
Noel Grandin 81994cb2b8 Convert internal vcl bitmap formats transparency->alpha (II)
(Second attempt at landing this)

Image formats and graphics APIs use alpha, not transparency,
so change our internal formats and data structures to work directly
with alpha, so we don't need to modify data before we push it to
graphics APIs.

Add a couple of new Color constants to make the intention
of the vcl code clearer.

Notes
(*) On macOS, tweaking the logic in CreateWithSalBitmapAndMask
to more accurately reflect the requirements of the
CGImageCreateWithMask function seems to fix some
tests.

(*) The vcl code does not properly support gradients
with transparency. So the previous code was wrong, and this
change is going to result in slightly different wrongness.

Change-Id: I9e21c2e98d88ecfdc5f75db13bd1ffff7c38db98
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114168
Tested-by: Jenkins
Reviewed-by: Patrick Luby <plubius@neooffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-07-25 08:38:12 +02:00
Michael Stahl 2295c2b17c sw, forms: some hacks to nerf time-fields so convwatch works better
This is useful for PDF-based layout-comparison regression testing
where date/time fields were updated upon PDF export and create
lots of false positives. Hopefully these can be eliminated this way,
at least from text documents.

To test:
Download https://bugs.documentfoundation.org/attachment.cgi?id=48452
from tdf#38703 and export it with:

STABLE_FIELDS_HACK=1 instdir/program/swriter --convert-to pdf DeleteStackSample.odt

The date and time fields are now reset to
30/12/1899 00:00:00

Change-Id: Ic89111615074adb50f16a605f920f9a89c437dfd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/24442
Tested-by: Jenkins
Tested-by: Gabor Kelemen <kelemeng@ubuntu.com>
Reviewed-by: Gabor Kelemen <kelemeng@ubuntu.com>
2023-07-24 18:56:40 +02:00
Noel Grandin 18446cdd60 loplugin:finalclasses
Change-Id: I62b094a3bd9a4f630cebdf538c04391e2920ff2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154064
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-07-05 21:39:51 +02:00
Noel Grandin 77befddec9 loplugin:unusedvarsglobal
Change-Id: Ia86c8bd0bdc85c375eb3837ba97f9e171d9dac6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153974
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-07-04 19:16:40 +02:00
Noel Grandin 0193b284e8 new loplugin:constexprliteral
OUStringLiteral should be declared constexpr, to enforce
that it is initialised at compile-time and not runtime.

This seems to make a different at least on Visual Studio

Change-Id: I1698f5fa22ddb480347c2f4d444530c2e0e88d92
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153499
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-26 13:12:31 +02:00
Noel Grandin 839c501024 use more TypedWhichId in editeng
Change-Id: I2eb2b50ef7002e23221c985ab3218617b3832aa7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152203
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-05-25 07:52:21 +02:00
Julien Nabet 45826e60d5 XML forms: remove duplicate addEventListener DOMAttrModified with capture true
since commit b2a54aa2e4
Author: Vladimir Glazounov <vg@openoffice.org>
Date:   Wed Mar 23 10:34:34 2005 +0000

Change-Id: I8f511d1efa0e2ee713d1e7c145cc60f4945aa8cb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151983
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-05-19 21:19:31 +02:00
Julien Nabet 0138745f02 tdf#155123: XML Form: Deleting parts of user defined data type impossible
2 parts:
1) in extensions/source/propctrlr/standardcontrol.cxx
if value retrieved from the field is 0, let's return an empty Any var.

2) forms/source/xforms/datatypes.cxx
Allow to select 0 in the spinbox for String and URI ("hyperlink") datatypes
to be homogeneous

Change-Id: Ife9a94c279e8651623112c0bf8a64555cb9c556c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151740
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-05-18 12:40:03 +02:00
Julien Nabet 2811ffb4a5 tdf#154628: XML Form Document: Sending data with GET fires very often
See rationale here:
https://bugs.documentfoundation.org/show_bug.cgi?id=154628#c5

Change-Id: I26556baceec8823d2c3bed382d51731d18bd2ccd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151852
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
2023-05-17 15:35:52 +02:00
Julien Nabet aa0cbe2c82 tdf#155121: XML Form Document: better take into account "not required"
Change-Id: Ibebdbc52f2bd7d09ec7aa5f072efef364249a291
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151733
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-05-14 14:17:00 +02:00