Age | Commit message (Collapse) | Author |
|
shave about 2-5% off the cycles here
Change-Id: I23adffa4715d3dd28a92d48603a236115fb7d680
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165647
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
takes time from 2.5s to 1s for me
Store all of the PrintPageRanges in the ScPrintState
save/restore data structure, means we don't recompute the data
in that structure, so of which is quite expensive.
Change-Id: If65c8ca1cce25ff228c483f173b19b456056dc57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165646
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
And introduce methods in TransferableDataHelper to handle that.
Change-Id: I1d91f0f6b7e8523125f9cc1507dbd6737968f7d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165607
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Since bug 154449 was fixed, Calc now supports hidden named ranges. However, named expressions were not considered in the original patch and it would be useful to support hidden named expressions as well.
This patch adds suppport for hidden named expressions (import and export).
Change-Id: I2580416dcd5db0fcb2aa9061085cdc9975fb03c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165239
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ia1f8f1527e76f2a721d42f6de11122f8c167bc96
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165589
Tested-by: Jenkins
Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
|
|
that can't fit in SCCOL
ignore negative colspan and rowspans too
Change-Id: I79a010bcd7d9d84de70f6dac2e09614d6d448227
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165558
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
to reproduce the underlying problem: data, calc, recalculate hard:
which asserts that cell I367 is dirty during parallel calc
checking the dependencies for a parallel calc is supposed to find what
cells it depends on and either: ensure they are not dirty or detect its
not possible to do the parallel calc
checking starts in J9 where::
J9: =SUM(H$8:H9)-SUM(I9:I$9)
J10 =SUM(H$8:H10)-SUM(I10:I$9)
for the first sum it detects that the input range is H9:H367 and checks
that for dirty results, but for the second sum it detects a range of
just I9 and the dirty I367 is not detected and the problem arises on
calculation
The code to detect the range is:
// The first row that will be referenced through the doubleref.
SCROW nFirstRefRow = bIsRef1RowRel ? aAbs.aStart.Row() + mnStartOffset : aAbs.aStart.Row();
// The last row that will be referenced through the doubleref.
SCROW nLastRefRow = bIsRef2RowRel ? aAbs.aEnd.Row() + mnEndOffset : aAbs.aEnd.Row();
where for the I9 case has nFirstRefRow true and nLastRefRow false so we
just get a range of I9:I9 instead of I9:I367.
Trying to create a doc from scratch to reproduce this case proves
tricky, so trim down the original document to the sheet and subset
of columns that can trigger it.
Change-Id: I44bfd1f6d3a3ee13db9024c5b2efa2588cc30521
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165510
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
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>
|
|
Change-Id: I42aa4b3e43636bf6f0c0f77c5028501229badee2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165545
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
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>
|
|
Extend .uno:OpenHyperlinkOnCursor to open all hyperlinks
in a cell, when not in edit mode.
The UNO command can be assigned to a keyboard shortcut from
`Tools > Customize > Keyboard`. If the active cell is not in
edit mode, then pressing the shortcut opens all the hyperlinks
in the cell. If in edit mode, pressing the shortcut opens the
hyperlink under the caret "|".
Change-Id: I7ffdab54fa31b9f7f614e04cc3158d8be217825e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157666
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
|
|
To avoid code copy/pasting, common code is refactored to
`lcl_SetEngineTextKeepingDefaults` to be used later in
tdf#123159
Change-Id: I1889c8eee931ef8950e95af8aec73a1884b07302
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158516
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
|
|
takes time from 11s to 5s for me
Change-Id: Ic874b9168f9caaf697007e586df8499a849ccfd6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165460
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
takes time from 5s to 2.5s for me
Change-Id: I7e62e4a47d5b2aae982273cc3ea38c5c9b04256d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165461
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ieeb06e5c5d28f1c457db369a732bc37a7d5f2be8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165447
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I007d0c44bed1ab9e00cadcdbd126bc6bf3d99ea8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165364
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I94974713ce5acff13aa0c12a782f9f3fdf004f55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165363
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Iec9a3d20868c96dfe23141930b660e08773b5833
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165362
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
we can used an unordered_map here, we are sorting by pointer value. Also
reduce the number of erase/insert
Change-Id: Idb68f76e04248a0c808399bf9881afb5a8e01451
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165346
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This is the same problem as described in:
commit 22a185a977f90d706c3e9d182adeaac310b6f348
Date: Thu Jan 11 15:08:21 2024 +0900
sc lok: set the GridWindow size to the client area size + test
except that the size of the GridWindow gets reset by UpdateFormulas
via UpdateHeaderWidth to the width of the "frame" which is remains
at the nominal 800x600 initial size throughout.
That only happens if there are enough rows in the document to trigger
a check against this, so add some extra content into the test document
to trigger the problem, and then guard against this reset for the kit
case.
Change-Id: Ibf80849929a4c987fd0fe977518336e5115ebdce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165240
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I460877adf29dcde69713d9d1671680e3172d138f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165221
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
This reverts
commit 76e9023c8abc823447b1128056e55238f90da8d6
Author: Noel Grandin <noelgrandin@gmail.com>
Date: Mon Jan 22 08:36:28 2024 +0200
convert more calc dialogs to async
I fixed some lifetime issues, but even once that was happy,
the Text Attributes dialog was not receiving mouse events
properly, something else is unhappy when we mix async
and modal dialogs.
Change-Id: I4a35d886895c65af2085b606ff5c7a7c02fb5671
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165305
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia764276d6b35ea84d7415484eaeb9da77e55092a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165307
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
TODO/WIP: oasis proposal
More information about how this new function works:
https://support.microsoft.com/en-au/office/sortby-function-cd2d7a62-1b93-435c-b561-d6a35134f28f
https://exceljet.net/functions/sortby-function
Change-Id: I4538a32f7f75056d3055369fc5f4483d24fd1089
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165069
Tested-by: Jenkins
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
As part of the efforts in #158237 to replace older parts of
the codebase using find() and end() methods, with contains(),
this commit does the needed changes for a few files in the
sc and sw modulues.
Change-Id: Ibf0a432c537879f5bec8e8912d11150733366689
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165223
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: Icaf621e7a2e163f969ac7b6a1d6d04bf9251ea56
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165277
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I710a6a2f045de095f5f3f09a971162b669eedd4c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165275
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I81aea5f73b9b28e28366beb74e853518287a9ef7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165274
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: Iafcda5fb4d639d35ea35bab2b8b015208a8397fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165276
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
TODO/WIP: oasis proposal
More information about how this new function works:
https://support.microsoft.com/en-au/office/sort-function-22f63bd0-ccc8-492f-953d-c20e8e44b86c
https://exceljet.net/functions/sort-function
Note: Move ScSortInfoArray class to sortparam.hxx, which is a more
logical place.
Change-Id: I70e720e93ba0414d54cb3437de0bfa066508fe30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164778
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
Change-Id: Ieb532183fd07915f8e0f2ec0cc3983a390024522
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165257
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I3828bb76ab7808ac0717b33c231927730216b42b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165216
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I1654d23fd8768a77d32fc3150a9d8554afa2e91f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165220
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I498985962feb7d77c1a71af7002a85aa02aa3e65
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165217
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
As part of the efforts in #143148 to replace include guards in
the codebase with #pragma once, this performs the changes for
the remaining files in the sc module.
Change-Id: Ia5633919e4159da94b6e663fa484ef0524cf7bd4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165196
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
|
|
and for the duration of Threaded calculation where there will be
no new formats required we can drive number formatting with the
unlocked RO policy.
Change-Id: Ic0e449acdcf834bc569d13b4a984f13c55316801
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165160
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>
|
|
Change-Id: I3d3bb22302ad5016c962d606e80c2e9942301fbd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165095
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
|
|
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>
|
|
operators which need to be checked if they are next to a trimmable
DoubleRef arguments or not.
Example:
=SUMPRODUCT(($D:$D>M47:M47)*($D:$D<M48:M48)*($I:$I=N$41)) -->
$D:$D and $I:$I columns are trimmable.
Recalculation of formulas with a lot of SUMPRODUCT where we comparing
full columns could take minutes during editing a sheet. With reducing
the size of the compared ranges to the actual data could significantly
speed up the recalculation.
This takes the recalculation time from ~50 sec to <1 sec on my machine.
Note: probabaly the same could be applied to the SUM function.
Change-Id: I758660d0b638ef7255bd5a41a96755289b5a2b41
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165074
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
Change-Id: Icf52f1665561eef0aa10febc9ca2f946e89b689b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165141
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
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>
|
|
GetFormatTable calls mxPoolHelper->GetFormTable()
but asserts if this happens during threaded calculation
so replace the first with the latter
Change-Id: I7027f66a929159525842bfabbf8cf4ab0e55ed23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165107
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>
|
|
Summary for what's done with this commit:
init.cxx
* Add guards for modify commands.
viewsh:
* Add "IsCurrentLokViewReadOnly" for ease of use.
unocitm:
* Add guard for modify comamnds
dispatch.cxx
* Implement readonlyview.
objmisc:
* Modify IsReadOnlyUI check for LokReadOnly view.
svx.sdi:
* Disable TableChangeCurrentBorderPosition command for readOnly views.
sw-editwin:
* Treat mouse moves as readonly when the view is LokReadOnly.
gridwin:
* For autofilter.
impedit2, inputhdl:
* For text input.
svdedtc:
* For sdr object dragging.
Change-Id: I71fc353976256bce22042bbb6042ee464b65cc13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165093
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I229126f1fc52e85026dd75fb6ce3851653a8e250
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165102
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
and ScCompiler ctor will take that one already. So drop this for
clarity.
Change-Id: I7fc16b4cd40f08556704bfa2e3ee28d56ed6e947
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164869
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Starting with commit bfa21ce5fa08f2c634ccb6162914be55aef9f3c2,
horizontal swiping in Calc moved in the wrong direction scrollbars
were drawn mirrored.
So, revert parts of commit bfa21ce5fa08f2c634ccb6162914be55aef9f3c2
so that we are using Calc's previous "negative scrollbar range"
implementation for RTL UIs, but only for horizontal scrollbars since
vertical scrollbars are the same in LTR and RTL UIs.
Also, always disable RTL for scrollbars. Enabling RTL causes the
following bugs when clicking or dragging the mouse in scrollbars in
Calc's RTL UI:
- Click or drag events get mirrored so you must click or drag in
unexpected locations to move the scrollbar thumb in the desired
direction
- Repeatedly dragging the scrollbar thumb leftward can only move
no highter than the R, S, or T columns
Note: even though RTL is always disabled for Calc scrollbars, the arrows
must still be swapped in vcl's ScrollBar class.
Change-Id: I85aac94ffaf7df2eeb251a3ff150cc0363b5d770
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164959
Reviewed-by: Stéphane Guillou <stephane.guillou@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
|
|
Change-Id: I0d74859e276bfa98d8abf7b2e66600f849971468
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164956
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
On in place editing cell cursor overlay matches the output area.
In this way the user has a better guess about the edited area.
Change-Id: Iba3370d942a9deaedeed23298a7cb7a6c6c0f5f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164701
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
(cherry picked from commit cc88ad715f80b13efb29744673d044df9c16550c)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164992
Tested-by: Jenkins
|