Age | Commit message (Collapse) | Author | Files | Lines |
|
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
|
|
Change-Id: I4963987a63d82dfe086932307675f92deebb8883
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166316
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I58e31ffdfc87a15e82bce54afd47ff3906159707
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166293
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Reduce the work we do in IndexedStyleSheets::Reindex
takes my test document from 117s to 48s
Change-Id: I2e23b05684d0f2e3a9dc05c0a0fc4e9bbea7008d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166180
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I79e2cb4c81a2bbac4da16ece778e4ad3acc59eb7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166025
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I1d1ab4539775c8c2fce591ca32fc15c3c0dd6060
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166024
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I19f466a272c821185bea4b45efd34392e525c0d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165785
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
I messed up in
commit 9c5fda14fff397d5d503f749ad019791d7e4ef83
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date: Wed Mar 6 16:20:41 2024 +0200
tdf#158773 reduce dynamic_cast'ing in CustomShapeProperties::Notify
and forgot to actually use the new SfxHintId::StyleSheetModifiedExtended
I created in the constructor of the SfxStyleSheetHint class
Change-Id: Ica661a156d72c8a4b8ad415b6f45fe5d3458ba26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165787
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
- Read spacing in oox.
- Add spacing scaling as a property.
- Rename property "TextFitToSizeScale" to "TextFitToSizeFontScale"
- Add property "TextFitToSizeSpacingScale"
Change-Id: Icde575e55a3146169d86bb538a57adcf1fa228a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165633
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
seen with forum-mso-en4-207468.xls
so we will have to ensure that nDefaultSystemCurrencyFormat
is set before using the RO mode
Change-Id: Ib1e755203917ddd751a1493c817cc8383bbbc043
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165658
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
we know that ScPatternAttr uses a single, contiguous range of
item ids, so we can compute the item offset at compile time.
Shaves 1-2% off some workloads.
Change-Id: I623b8cb3e0d5d070118117196d2b48575f505725
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165550
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
since:
commit c6c6126aa3e8de256091b829b98b5943db6a8be6
Author: Caolán McNamara <caolan.mcnamara@collabora.com>
Date: Thu Mar 21 17:25:35 2024 +0000
Related: tdf#160056 refactor SvNumberFormatter
to split it into two constituent parts
Change-Id: I4add9f383789ab03ceab751b07973448a41911ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165490
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I20dd009b2bd14cdf958572dabc7a7e565a2f98ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165393
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: Ieb532183fd07915f8e0f2ec0cc3983a390024522
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165257
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
to split it into two constituent parts
SvNFFormatData which is the data store for number formats it generally
operates on.
SvNFLanguageData for data around the current language in use.
and then a SvNFEngine which implements the interaction between those
parts
SvNFEngine has two policies, the typical RW mode and a new RO mode where
the SvNFFormatData doesn't change, all formats needed in this mode must
already exist.
Change-Id: I56b070ccd2e556a0cb1fe609a2fae28e18277c8c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165146
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Some of the exclusions were too aggressive. Restrict them to only the
important classes, which exposes some more places this plugin applies.
Change-Id: I1b2d1fb24391adc71ed0984f94168f61a149479f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165154
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icf52f1665561eef0aa10febc9ca2f946e89b689b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165141
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I895db1f02338b6c2a1fec8bdfc15c2857fbee38f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165138
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I3da15340809603b991d3a41beb2af7a0ba375acc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165137
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
I checked if this is used, but it can be replaced
using Clear() -> all. This prevents that the whole
array of Items in an ItemSet gets set to
INVALID_POOL_ITEM.
I also checked if INVALID_POOL_ITEM/IsInvalidItem
is needed at all representing SfxItemState::DONTCARE
but it is and still will need to be set for individual
Items.
At last checked if SfxItemState::UNKNOWN and
::DISABLED really need to be separate states, but
indeed there are some rare cases that need that.
To make things more consistent I also renamed
SfxItemState::DONTCARE to SfxItemState::INVALID
to better match Set/IsInvalid calls at ItemSet.
The build showed a missing UT and led to a problem
due to the hand-made ItemSet-like SearchAttrItemList.
The state 'invalid' seems to be used as 'unused'
marker. It should be changed to use SfxPoolItemHolder
and not need that. For now, set by using an own loop
to set to that state.
Change-Id: Ifc51aad60570569a1e37d3084a5e307eed47d06c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165035
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: I0ffebd5a1f871b86507d0c1b3946b32993d76365
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165106
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I1172854a1bf00e74adbe350c54e4e98ea38b0b35
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165072
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Method validRanges2() was encapsulated by DBG_UTIL
but used inside assert, so adapted the define
Change-Id: I695a0c85f389d0c37b24e6e1986037ce6fb0c805
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165052
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: I2ab1cd2d0be81b15b4701581093b696aaac2846c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164979
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: Ib0a72355972662c6b902bca9a527be91fb3e1d17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164930
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I66d749362c9fb5f2c228f0f5d2c927cc0cf3f89f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164179
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
towards making these immutable
Change-Id: I9f9ac17828018525194c34eadda66bbf863fd2f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164795
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
RTF documents may contain shapes of the type "Picture frame"
({\sn shapeType}{\sv 75}) that are imported as SdrGraphObj
This change prevents the display of a replacement picture
if there is no picture set.
Change-Id: Ia3a576ddcb2a3bbffae859102d274d4ecd214f6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164755
Tested-by: Jenkins
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
Change-Id: Iaef46216dac6584f57b7933d658384f54d0a4544
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164772
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: If499e28e5ac69018b35b475a73ecb2dc4b78dad6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164786
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I847e5de84f0636b5a169f383e319a6b8707cc31f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164773
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: If7a31f8b3667d9a6b8719553567211071bd2d631
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164774
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: Id229344a68925a1bde84f2b4aad46cfc5f01b797
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164769
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: If811c9ec336543227db73c990248b9113846cf2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164657
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
sal_uLong to sal_uInt32 for the clipboard format.
Clipboard enum class uses sal_uInt32, so staying consistent with that.
Clipboard format doesn't exceed unsigned 32-bit int.
Change-Id: I1938f9ba877fc89c51415d9715a82e9b0c09d4e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164604
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
|
|
we don't need to store SfxStyleFamily::All in the mStyleSheetsByFamily
array, the call sites just iterate over the main vector for that
case.
Change-Id: I17fca2aa59e786d6dee13c884dedb9fde847b979
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164579
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
we can store pointers styleSheetsByFamily and avoid having
to access the vector
Change-Id: I36b5df981b6e53d9aa4193de419fc6a44f0ed2da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164573
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I24a013d74bf8f9336496232d585ac1f0b069696c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164572
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
we can store the mStyleSheetPositionsByFamily inline, since it
is fixed size, and save some allocation overhead, and some pointer
chasing.
Change-Id: Id6ff02491e967b9fb145ba9752f4a52173692645
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164558
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
found by tweaking the stringview loplugin
Change-Id: I92203ba99642bef7951ffa146184c5562cb31d09
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163744
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: If4a68433c57fdf3da56891fa0b4be6f8a991d929
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164528
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
only called by a friend from the same .so
Change-Id: I5f63e83325b291b95b0132089dc331f3b7e79362
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164538
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
and rename to ImpIsSpecialStandardFormat
Change-Id: Ie20c83906559f94e545f384807396ec8acf970f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164537
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
shaves 2% off the load time
Change-Id: I579825bd6101b57a44b0f3118ede17ec2393d9d9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164477
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ie052e32976d9810555c8f1892dab47a7472cdc71
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164149
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I2c8ad9999adc406dc850c59b48e49681099dc054
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164147
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
that suggests there are alternatives to choose from
Change-Id: Ica3367fae93f57f339bdc39b1cd91d47a2c9618e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164146
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
so fold it into the ctor
Change-Id: If063143ef47a8ab293edf3896fb51079d0e0284f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164144
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
With ItemInfoPackages we now can have a buffered, static
global translation table from SlotIDs to WhichIDs since
the ItemInfoStatic used already contains all the needed
information.
Register that in registerItemInfoPackage at the Pool and
use it for lookup. That speeds up the lookup from O(n)
to O(1). Since that lookup is used in UI and UNO API
implementations this has positive effect on load/safe,
but also all interactive stuff in the whole office.
NOTE: I tried to use a merged version of that translation
table in the parent pool, but this shows double SlotIDs,
what is no wonder since that's what those are used for:
To get different WhichIDs for a SlotID in Item handling.
This *might* prevent getting rid of the chanined Pools
at all - sadly. The returned WhichID directly depends
on which Pool the function(s) GetWhichIDFromSlotID and
GetTrueWhichIDFromSlotID are called.
NOTE: Very strange is that the parameter 'bDeep' in that
functions is *not* passed down to the call to the
secondary Pool - probably an error, but risky to fix,
that may change already the behaviour :-(
Change-Id: Iea77ffad0f6a5401ab74fea0bbfc2589c66680ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163597
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
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>
|