summaryrefslogtreecommitdiff
path: root/sc
AgeCommit message (Collapse)Author
2013-05-22Resolves: #i122261# Calc Navigator - assure non-overlapping layoutOliver-Rainer Wittmann
(cherry picked from commit e7fa6ef1cbae2354078ec185c987e16e004e8a5d) Conflicts: sc/source/ui/navipi/navipi.cxx Change-Id: I91147e2c4f5647e719eb86d0b4b342ea0d9770a7 (cherry picked from commit 94a3dc9e47afc40be21838889a326489b133c2df)
2013-05-22WaE: unused variablesTor Lillqvist
Change-Id: I52d43a35e621636175e6c56bc068837d3a84bec4 (cherry picked from commit 66c315bcf2b78c4928d1e436d1a853f58f4cccdb)
2013-05-22Adjust a bit.Kohei Yoshida
Change-Id: I74be2d40d9eb92813836a35892f461fe27b79aeb (cherry picked from commit 563f15a609f5c637cd73d831830a68bdb61fb4d8)
2013-05-22Hopefully this will disable testPerf for Windows too... Untested.Kohei Yoshida
Change-Id: I6d06b8e2b3cdb22948e606a7d928c57ea9347cea (cherry picked from commit 80648e06cac011c01e624cba91ce71fdf431e78a)
2013-05-22Disable the perf test for dbgutil build.Kohei Yoshida
Change-Id: Ifd95ea4f88175b9010f93a4a064be5d908b2a224 (cherry picked from commit df4d6b134bfe45e380416f0d9eecb482843e8a47)
2013-05-22make calc tests use some sort of pseudo-cycle measurementMichael Meeks
Change-Id: I9f58a7b00a6e4441c08254ef99829fab805beef8 (cherry picked from commit 7141c7517db5bbb9814308aa4c68bc95beb4de8c)
2013-05-21fdo#64011 fix the position and the drawing from left to right in RTL sheetFaisal M. Al-Otaibi
this will fix the start position for drawing and you can draw shapes from left to right when the Sheet are RTL Change-Id: I5cc8eabf474918968bea026dba9c5add2bb4f28e Reviewed-on: https://gerrit.libreoffice.org/3912 Reviewed-by: Ahmad Harthi <aalharthi@kacst.edu.sa> Tested-by: Ahmad Harthi <aalharthi@kacst.edu.sa>
2013-05-21fdo#46808, fix unit testNoel Grandin
...after my PrimitiveFactory2D changes Change-Id: I994d2dd0aebed67643f749dc43bcd4e744601885
2013-05-21fdo#46808, Convert chart2::Title service to new styleNoel Grandin
API CHANGE: The chart2::XTitled interface now takes and returns a XTitle2 instead of an XTitle. Change-Id: I96c35909d3a13f1abb544296a782a0b6a7a58ec6
2013-05-21fdo#46808, Convert various chart2:*Scaling services to new styleNoel Grandin
Change-Id: I93294be4c822160e609ae6aab552edd64478e34b
2013-05-21Bypass for now an OSL_ENSURE that doesn't compileTor Lillqvist
Change-Id: I8f6a74251cea70e7fd100e1ab233cf0033de4e50
2013-05-20Test performance of pasting of formula cells as well.Kohei Yoshida
Undo and redo of this are still a bit slow. Not fast enough to be reliably tested. Change-Id: I0e0b4c16e55bae60f8d7b1db71347a93eb977de8
2013-05-20Another performance scenario. Pasting of cells interspersed with empty ones.Kohei Yoshida
Change-Id: Ia03af65dc1daf13e1228cacc20ce931839305ab8
2013-05-20A bit cleaner way to measure time segment.Kohei Yoshida
Change-Id: I999baaa3acba5513a148542fa28f7ae43dd7ee4f
2013-05-20Make these stack variables & fix one memory leak with the undo object.Kohei Yoshida
Change-Id: I1dd2bf0fc843394502119928c921913131c86f7e
2013-05-20Add performance test for repeat-pasting cell to a large cell range.Kohei Yoshida
Change-Id: I98dcdb1e0a72f2c3ad6f33c7b6b7d4a4bcf89096
2013-05-20Ditto when purging broadcasters.Kohei Yoshida
Change-Id: I632d617cad76485f7e1f57daa7db4d4cfa775e8b
2013-05-20A bit of cleanup.Kohei Yoshida
Change-Id: I9f200377c1f5bf44eb4ba60c272b02ae3d632a19
2013-05-20Do the same trick when getting broadcasters during mass formula cell deletion.Kohei Yoshida
Change-Id: Iee1b3ff637d10c6bd2d2342db518a2fc986327b7
2013-05-20Keep track of column block positions when mass-pasting formula cells.Kohei Yoshida
This speeds up the following scenario: 1) type =B1 in A1. Leave A2 empty. 2) Select A1:A2 and Ctrl-C to copy. 3) Select A3:A50000 (or longer if you so wish), and ctrl-V to paste. This causes the broadcaster storage array in column B to be heavily partitioned due to the empty cells interspersed between formula cells in column A. Without tracking the column position this would cause a O(n^2) complexity algorithm. Change-Id: Ic2f23c2c2bea3353c517faa73fe5412c7528bd95
2013-05-20A bit of cleanup before refactoring.Kohei Yoshida
Change-Id: I3627a83669b6a69c299aef96b8b2ead1352eabe2
2013-05-20Prefer early bail-out.Kohei Yoshida
Change-Id: I112a4be56910c07007b28715336fcd82d56bb313
2013-05-20Compiler warning.Kohei Yoshida
Change-Id: I6f358f89348a23b3c70f8b7db8a1f01d659393ba
2013-05-20Optimize ScColumn::MixData() to remove several bottlenecks.Kohei Yoshida
The use case that would previously make Calc freeze. 1) type in "test" in A1. 2) Select A1:A2 and Ctrl-C to copy to the clipboard. 3) select the whole column B. 4) paste special, select "Add" operation and click OK to paste. With this change, the above scenario no longer freezes Calc. Change-Id: I98b1f1e6c25b853aa884e7598c04b1457fab4636
2013-05-20A bit of a cleanup.Kohei Yoshida
Change-Id: Iaa7003cabee4630e4fbb8fb1cd114d04b4e9e33c
2013-05-20Keep track of column block positions in ScDocumentImport too.Kohei Yoshida
This currently only affects document import via orcus, but it'll be good to put this in place. Change-Id: I8cc6d54aba6fab1f2774127f92c2a764f7b690fb
2013-05-20Same with MixDocument(). But this one has additional bottleneck...Kohei Yoshida
With the removal of existing cells. So, this change is not enough to make this operation fly. Change-Id: Ic468375f6d0c28e2cc7d5391fb0565d53ee7fb4e
2013-05-20Make it exception safe.Kohei Yoshida
Change-Id: Ib9b734ac9800b1ecf005dcd3a66beac6fcfc3a4f
2013-05-20Reuse CopyToDocContext for UndoTo*.Kohei Yoshida
UndoToDocument and its nested methods are tightly coupled with the CopyTo counterparts, and they both are used in the same undo / redo code.... Perhaps we can clean this up to reduce redundancy in the future. Change-Id: Id3aec60914ac3a87acbb53f889896a5850047c59
2013-05-20Do the same thing for CopyToDocument.Kohei Yoshida
This removes O(n^2) slowness from undo and redo of a large array of cells with empty cells in between. Change-Id: Id87c8ac8986c97ddf305f849a4752f0f92cc5899
2013-05-20Move the boolean flags to the context bucket.Kohei Yoshida
To reduce the number of function parameters lower. Change-Id: I816bd7c27070597f5fcdf69bdc7d981279390ca6
2013-05-20Do the same optimization for CopyToClip.Kohei Yoshida
The basic idea is the same as the one I did for CopyFromClip. This prevents the O(n^2) algorithm from being invoked during undo object creation. Change-Id: Iac46663b0c25db2f00ffa3ab95a4dcf2857252ce
2013-05-20Get the script type in an efficient manner.Kohei Yoshida
This alone makes AdjustRowHeight() fly on large ranges, by eliminating the silly O(n^2) algorithm. Change-Id: Id2693aab7fb9b2a5575c6390fcaae5a404549962
2013-05-20Optimize ScViewFunc::GetSelectionScriptType().Kohei Yoshida
This change reduces the duration of this method from somewhere in the ballpark of 10 seconds down to a tiny fraction of a second. Change-Id: I0278dc06a4f134b43cd08bd94693b6dec4893f1f
2013-05-20Cleaned up a bit to remove the need to initialize the block positions.Kohei Yoshida
Change-Id: Iad2e69e4eb61167ad85581a83b19e3798c5edfd0
2013-05-20Speed up ScColumn::HasEditCells() by keeping track of block position.Kohei Yoshida
Use block position hint to avoid re-starting search in the cell text attribute array. This change alone cuts additional 10 seconds off of the previously mentioned use case, by reducing the duration of HasEditCells() call from the previous ~10 seconds to a tiny fraction of a second. Change-Id: Id9f951cd235a88928c900619b6b66d7b8a057e0c
2013-05-20Keep track of current block position when pasting a range of cells.Kohei Yoshida
This avoids re-starting the search for insertion position in the cell text attribute array, on every single cell insertion. Instead of always searching from the first position, it starts the seaarch from the previous insertion position. This reduces the paste time from the previous 3.5 seconds to 1.7 seconds on my machine. Here is the scenario. 1) Put =A1 in B1, and leave B2 empty. 2) Select B1:B2 and copy it via Ctrl-C. 3) Select B3:B50000, and paste via Ctrl-V. Because of the empty cells interspersing the destination range, this makes the data array highly partitioned, which makes the position lookup very very expensive without the position hint. Still, I was hoping the duration would become a fraction of a second. 1.7 seconds still seems a bit too slow... Change-Id: I7742ce7e22935b6d0e082e4569d53dbd2072c4e5
2013-05-20Move the column element block definitions out of ScColumn.Kohei Yoshida
so that I can reference it in another class. Change-Id: I035cc1d37ec219c3e3da2e180a0337fb3c6fba8a
2013-05-20Slightly shorter way of getting the element value.Kohei Yoshida
Change-Id: I9f56c7a54405a805cb843321bdab660a3ab22fd6
2013-05-20Avoid expensive element position lookup twice.Kohei Yoshida
This moderately improves the performance of pasting a large array of formula cells. Change-Id: I27a59ff348cb715df15db80693cb7d193e67ec2e
2013-05-20Remove unused function argument.Kohei Yoshida
Change-Id: I0b4deec7f4b10c7b14e482f61c667972caa30bc8
2013-05-20Move all clip params into the new context class. We don't need two buckets.Kohei Yoshida
Change-Id: Ida0542583242ebcdd7f1448931e31656aa542457
2013-05-20Introduce copy-from-clip context for copy handling code.Kohei Yoshida
It's not used yet, and is currently empty. Change-Id: Ia377994ae042fc8b19d269adc2f94830422770f1
2013-05-20Reduce indentation level by early bail-out.Kohei Yoshida
Change-Id: I5e108efa0219620696d15a304d2f4e3566d58d57
2013-05-20Add perf test for removal of large array of formula cells.Kohei Yoshida
Change-Id: I2fdf38b23e74a9f4cad7abd9a943e8817f39474c
2013-05-20Fix memory leak.Kohei Yoshida
Change-Id: I90e419d19f4565f7f20603358308fd7aeba83190
2013-05-20Remove duplicate code blocks.Kohei Yoshida
Change-Id: I945c7ae834393c760d8a552043c391ff0eb9ce22
2013-05-20Unit test for range deletion of broadcasters.Kohei Yoshida
Change-Id: I615c9f9e95a44149c8079754e9aa6497f34c76cf
2013-05-20Keep track of empty broadcaster segments, and delete them all in one go.Kohei Yoshida
This massively speeds up the deletion of a large group of adjacent formula cells. As an example, on machine, deletion of formula cells over B2:B109101 (109100 cells in total) got reduced from 4.7 seconds to 0.09 seconds). Change-Id: Ib72da42a6644421601111907cf7c899d828c2996
2013-05-20Collect all empty broadcasters and remove them in one go later.Kohei Yoshida
This is to avoid repeated calls to set_empty() on the broadcaster array which causes array reallocation on each call. Instead, we can store the segments of broadcasters to be deleted later, and call set_empty() on those segments to reduce the number of calls to set_empty(). The meat of this is not implemented yet, as EndListeningContext is still empty. Change-Id: I914bc2881acee3902c4fec0f6c21aaf4d2489df8