Commit graph

327175 commits

Author SHA1 Message Date
Noel Grandin
863d38fbfa move DBG_UNHANDLED_EXCEPTION out of line
makes it easier to set a breakpoint on it.
Plus it's getting a little big to be a macro.

Change-Id: I2827aa3618ba966fbc85a4a56e0e794a55630730
Reviewed-on: https://gerrit.libreoffice.org/3988
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
2013-05-21 10:02:39 +00:00
David Tardon
65d2432963 do not second-guess help langs for installation
Change-Id: I48484ca81008fe650aa9fa0eb561e3b2ff33399c
2013-05-21 11:50:44 +02:00
Isamu Mogi
2147d08c78 Re-add PNG file that used to have a pathological (LF) filename
This is a cherry-pick of 4aa27cc3b98d455379f7c97a215d557d646fa08e .
Author: Andrea Pescetti <pescetti@apache.org>
Date:   Sat May 11 11:42:03 2013 +0000

Change-Id: Id91c9d5cd462e73a243d9c5670572a9c2293798e
Reviewed-on: https://gerrit.libreoffice.org/3985
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
2013-05-21 09:44:33 +00:00
Isamu Mogi
19ab0e5fc5 Avoid pathological filename, breaking checkout on some systems.
This is a cherry-pick of 8cb45ee0b8d744c282b76be8b26b1196b9d91b44 .
Author: Andrea Pescetti <pescetti@apache.org>
Date:   Sat May 11 11:39:07 2013 +0000

Conflicts:
    icon-themes/galaxy/svx/res/symphony/

Change-Id: I125e506531248c167cda20714228777e102a24e9
Reviewed-on: https://gerrit.libreoffice.org/3984
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
2013-05-21 09:44:01 +00:00
Mark Wielaard
a6a8c379b2 Fix two SfxFilterMatcher_Impl memory leaks.
First SfxFilterMatcher_Impl::InitForIterating() will set pList to either
the global filter array matcher pFilterArr, or to a new SfxFilterList_Impl.
This new SfxFilterList_Impl should be deleted in the destructor.

Second getSfxFilterMatcher_Impl() keeps a cache of SfxFilterMatcher_Impls.
If a SfxFilterMatcher_Impl for a given name doesn't exist yet a new one
will be created. But the cache stored objects by service name (aName), but
looked object up by factory name (rName). So it always created a new
SfxFilterMatcher_Impl instead of using the one from the aImplArr cache.

Change-Id: I7840aaddc861f609fbe14d5b6c0ea20d997f690f
Reviewed-on: https://gerrit.libreoffice.org/3989
Reviewed-by: Fridrich Strba <fridrich@documentfoundation.org>
Tested-by: Fridrich Strba <fridrich@documentfoundation.org>
2013-05-21 09:41:32 +00:00
Faisal M. Al-Otaibi
3661c3eb01 fdo#64011 fix the position and the drawing from left to right in RTL sheet
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-21 09:29:55 +00:00
Petr Mladek
ada91eb7ea Updated core
Project: help  cfcc32824c195ca37339ef33c99a099f9b7afe1e
2013-05-21 09:09:02 +00:00
Petr Mladek
ab6d2b7c96 helpcontent2: add missing auxiliary helpcontent files for bn-IN
Change-Id: I90e4eb02e2f4e672681ff8fe1305eaa08b1769fd
2013-05-21 11:07:43 +02:00
Petr Mladek
13df1b95e8 allow to create new database using the wizard again (fdo#62937)
To be honest, I do not userstand the code much. Julien pointed out that
the setParentTitle and onTypeSelected were newer called. The condition
looked like an optimisation and it helped to remove it.

It would be great to put it back. It might be enough to hand the
intial values.

Change-Id: Id06cc9c63a9e578cb3c698c8526851fec71ef9da
2013-05-21 10:59:11 +02:00
Noel Grandin
895c1bcc81 fdo#46808, fix unit test
...after my PrimitiveFactory2D  changes

Change-Id: I994d2dd0aebed67643f749dc43bcd4e744601885
2013-05-21 10:12:31 +02:00
Noel Grandin
d5ac8a01b2 fdo#46808, Use service constructors
Change-Id: Ib428bb78751e9707c89dcf311b8ab86ad8184775
2013-05-21 09:58:13 +02:00
Noel Grandin
d256dbede6 fdo#46808, Convert chart2::Title service to new style
API CHANGE: The chart2::XTitled interface now takes and returns
   a XTitle2 instead of an XTitle.

Change-Id: I96c35909d3a13f1abb544296a782a0b6a7a58ec6
2013-05-21 08:24:01 +02:00
Noel Grandin
f2bc5c6229 fdo#46808, Convert various chart2:*Scaling services to new style
Change-Id: I93294be4c822160e609ae6aab552edd64478e34b
2013-05-21 08:24:00 +02:00
Noel Grandin
dfc49e043b fdo#46808, GetStorageFromURL now takes an XComponentContext
Change-Id: I300748914c913ecd9d433cb6f549a000717b538d
2013-05-21 08:24:00 +02:00
Noel Grandin
ee2e8d77fe remove unnecessary macros
Change-Id: Ie73092fa6fc4fa7a95900ef4ba772af0c27d0f39
2013-05-21 08:24:00 +02:00
Noel Grandin
184c48ee7a Remove unnecessary namespacing
Change-Id: I0ea52709f9a77d928a6704797ebd5be4c375e964
2013-05-21 08:23:59 +02:00
Noel Grandin
53d0832133 fix alignment in code
Change-Id: I0272e46cf34b52f578810ad0d17f33dd78accdd3
2013-05-21 08:23:59 +02:00
Noel Grandin
5ab3015aae fdo#46808, Clean up old usages of ExtToolkit
This service no longer exists in LO, and no-one seems to know what
this service was, so convert it to use the awt::Toolkit service,
since that service returns the interface the code expects.

Change-Id: I761effbd49a9a3a15ec9c8716c72d4220a3e987e
2013-05-21 08:23:59 +02:00
Noel Grandin
be50ad28f5 fdo#46808, Convert awt::XUnoControlDialog to new style
Change-Id: I40d2e2ddd92186a2ba22ebfbdda8367391e8d355
2013-05-21 08:23:59 +02:00
Noel Grandin
6c61b20a8d fdo#46808, Convert awt::UnoControlDialogModel to new style
Change-Id: I4b912034ef3f4855b87d6d6f18ff13bd1ecc8f72
2013-05-21 08:23:58 +02:00
Tor Lillqvist
6c53dff36e Bypass for now an OSL_ENSURE that doesn't compile
Change-Id: I8f6a74251cea70e7fd100e1ab233cf0033de4e50
2013-05-21 09:08:31 +03:00
Kohei Yoshida
f61aa0df67 Rehash the 0.8.1 package due to a last minute oops.
Change-Id: Idea947e8b6674d436cc1a1d92f29279d2c03fc58
2013-05-20 20:20:39 -04:00
Kohei Yoshida
fc3f0a2566 We don't need this patch anymore.
Change-Id: Id6b787096d15c40903661fa3d309e8131b655752
2013-05-20 20:20:39 -04:00
Kohei Yoshida
9785579ed0 Update mdds to 0.8.1.
Change-Id: If6c1a8a88e9996527d3fcf350a00a72a3866ef4f
2013-05-20 20:20:39 -04:00
Kohei Yoshida
876504529c Test performance of pasting of formula cells as well.
Undo and redo of this are still a bit slow. Not fast enough to be
reliably tested.

Change-Id: I0e0b4c16e55bae60f8d7b1db71347a93eb977de8
2013-05-20 20:19:29 -04:00
Kohei Yoshida
1cd034088c Another performance scenario. Pasting of cells interspersed with empty ones.
Change-Id: Ia03af65dc1daf13e1228cacc20ce931839305ab8
2013-05-20 20:19:29 -04:00
Kohei Yoshida
42855ef3a1 A bit cleaner way to measure time segment.
Change-Id: I999baaa3acba5513a148542fa28f7ae43dd7ee4f
2013-05-20 20:19:29 -04:00
Kohei Yoshida
42901096de Make these stack variables & fix one memory leak with the undo object.
Change-Id: I1dd2bf0fc843394502119928c921913131c86f7e
2013-05-20 20:19:29 -04:00
Kohei Yoshida
266e71c7b8 Add performance test for repeat-pasting cell to a large cell range.
Change-Id: I98dcdb1e0a72f2c3ad6f33c7b6b7d4a4bcf89096
2013-05-20 20:19:29 -04:00
Kohei Yoshida
02304b8fc9 Ditto when purging broadcasters.
Change-Id: I632d617cad76485f7e1f57daa7db4d4cfa775e8b
2013-05-20 20:19:28 -04:00
Kohei Yoshida
96d56b9cc6 A bit of cleanup.
Change-Id: I9f200377c1f5bf44eb4ba60c272b02ae3d632a19
2013-05-20 20:19:28 -04:00
Kohei Yoshida
a3d2a04291 Do the same trick when getting broadcasters during mass formula cell deletion.
Change-Id: Iee1b3ff637d10c6bd2d2342db518a2fc986327b7
2013-05-20 20:19:28 -04:00
Kohei Yoshida
d5b4cb00be Keep track of column block positions when mass-pasting formula cells.
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-20 20:19:28 -04:00
Kohei Yoshida
fc47041628 A bit of cleanup before refactoring.
Change-Id: I3627a83669b6a69c299aef96b8b2ead1352eabe2
2013-05-20 20:19:27 -04:00
Kohei Yoshida
c2e28f5035 Prefer early bail-out.
Change-Id: I112a4be56910c07007b28715336fcd82d56bb313
2013-05-20 20:19:27 -04:00
Kohei Yoshida
0e25fe33f0 Compiler warning.
Change-Id: I6f358f89348a23b3c70f8b7db8a1f01d659393ba
2013-05-20 20:19:27 -04:00
Kohei Yoshida
f7d037c228 Optimize ScColumn::MixData() to remove several bottlenecks.
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-20 20:19:27 -04:00
Kohei Yoshida
edddbde921 A bit of a cleanup.
Change-Id: Iaa7003cabee4630e4fbb8fb1cd114d04b4e9e33c
2013-05-20 20:19:27 -04:00
Kohei Yoshida
252a306093 Keep track of column block positions in ScDocumentImport too.
This currently only affects document import via orcus, but it'll be
good to put this in place.

Change-Id: I8cc6d54aba6fab1f2774127f92c2a764f7b690fb
2013-05-20 20:18:46 -04:00
Kohei Yoshida
430d81e1fd Same with MixDocument(). But this one has additional bottleneck...
With the removal of existing cells. So, this change is not enough to
make this operation fly.

Change-Id: Ic468375f6d0c28e2cc7d5391fb0565d53ee7fb4e
2013-05-20 20:18:46 -04:00
Kohei Yoshida
9cf69e73e6 Make it exception safe.
Change-Id: Ib9b734ac9800b1ecf005dcd3a66beac6fcfc3a4f
2013-05-20 20:17:28 -04:00
Kohei Yoshida
f72dadc3df Reuse CopyToDocContext for UndoTo*.
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-20 20:17:28 -04:00
Kohei Yoshida
96c870ea3d Do the same thing for CopyToDocument.
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-20 20:16:45 -04:00
Kohei Yoshida
1a43dd8e5b Move the boolean flags to the context bucket.
To reduce the number of function parameters lower.

Change-Id: I816bd7c27070597f5fcdf69bdc7d981279390ca6
2013-05-20 20:13:09 -04:00
Kohei Yoshida
11a164f0ac Do the same optimization for CopyToClip.
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-20 20:13:09 -04:00
Kohei Yoshida
417120f946 Get the script type in an efficient manner.
This alone makes AdjustRowHeight() fly on large ranges, by eliminating
the silly O(n^2) algorithm.

Change-Id: Id2693aab7fb9b2a5575c6390fcaae5a404549962
2013-05-20 20:13:08 -04:00
Kohei Yoshida
8eed8f8c3d Optimize ScViewFunc::GetSelectionScriptType().
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-20 20:13:08 -04:00
Kohei Yoshida
4da9bf8086 Cleaned up a bit to remove the need to initialize the block positions.
Change-Id: Iad2e69e4eb61167ad85581a83b19e3798c5edfd0
2013-05-20 20:13:08 -04:00
Kohei Yoshida
c232a8c472 Speed up ScColumn::HasEditCells() by keeping track of block position.
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-20 20:13:08 -04:00
Kohei Yoshida
f3f0ae12f9 Keep track of current block position when pasting a range of cells.
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-20 20:13:08 -04:00