summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-02-17tdf#104215: Remove the out-of-borders ruler checkMike Kaganski
It is not called for out-of-borders points anyway, unless there is a table border on page border, in which case the cursor shows that dragging should be possible. Change-Id: If5cecbcd0799c74012c525588c0d2fce5d79ffd6 Reviewed-on: https://gerrit.libreoffice.org/31309 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> (cherry picked from commit 764358a43b83cdae9269af47070e3cb4739c96c0)
2017-02-17sw lok: notify repair when exist a conflict of multiple users undo/redoHenry Castro
Change-Id: I026f4df6239fa87ee191f92127f9fa98ac2993eb Reviewed-on: https://gerrit.libreoffice.org/31161 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Henry Castro <hcastro@collabora.com> (cherry picked from commit 2db42ab241d0852d89a470b18727c22d0fc06745)
2017-02-17lok: avoid render font with empty rectangleHenry Castro
Change-Id: I58e24e0de37144ae5d67857b243e6a7091f2b77a Reviewed-on: https://gerrit.libreoffice.org/31281 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Henry Castro <hcastro@collabora.com> (cherry picked from commit e2d5f1ba3fd0db00276cf48b0d9be9b16dcbf7a0)
2017-02-17respect read-only config items in Basic IDE Options dialogAndras Timar
Change-Id: I4a23b347c5fed948045427bc440e7a821b95b63c Reviewed-on: https://gerrit.libreoffice.org/31242 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Andras Timar <andras.timar@collabora.com> (cherry picked from commit d5be8dddc43e8a880d546fb9a6e8fbb45278eeca)
2017-02-17lok: Implement new callbacks for comment notificationsPranav Kant
Change-Id: I298183b295c68c4a39cb1f6fffe4b89b4eaee0f3 Reviewed-on: https://gerrit.libreoffice.org/33469 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 5f5073a84518e4a8660e0153c2e218fb75a85ec4)
2017-02-17lok: New commandvalues command - .uno:ViewAnnotationsPranav Kant
Change-Id: I1c3560ab4609c64da7a77e9a65febeb569ec1a3c Reviewed-on: https://gerrit.libreoffice.org/33468 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit a623b3a449dfcddaad5b621ff1c0b7a520edf4d6)
2017-02-17lok: Unique annotation Ids to SwPostItFieldsPranav Kant
Change-Id: I6dd5186eb18ca99a75a5cb73263cc6bfcc7ff345 Reviewed-on: https://gerrit.libreoffice.org/33467 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 85959fccad7392646675a515afd09aadaaa9ed17)
2017-02-17use rtl::Reference in SwPostItFieldNoel Grandin
instead of manual acquire/release Change-Id: Id14ac4731e513ae37f922db5d1e497aee10b3b35 (cherry picked from commit f7ee0054cf9da35f210d9043a68339415aba2284)
2017-02-17lok: Exit early when inserting annotation if tiled annotation offPranav Kant
Change-Id: Ia5705a07166e5c40aface506e8e8e7b727c2e376 Reviewed-on: https://gerrit.libreoffice.org/33466 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit c67040c157aab029373c463a9d3c033c400ff6a9)
2017-02-17lokdocview: Turn off annotations rendering herePranav Kant
Change-Id: Ia1ee4f54a05ab3daca62a78fe335e731e4cfc02d Reviewed-on: https://gerrit.libreoffice.org/33465 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 0f0164d647e01c2e7d2a42a0dd9d58d5e7b765d4)
2017-02-17lok: New feature flag to turn off tiled annotationsPranav Kant
Change-Id: Ie418642242ada98d4a41f30bb6cefcd57f398ef0 Reviewed-on: https://gerrit.libreoffice.org/33472 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan Holesovsky <kendy@collabora.com> (cherry picked from commit 75d8b305bbc1c2377f23361ecd64816a350baa4c)
2017-02-17gtktiledviewer: Make edit mode the default onePranav Kant
This is a testing tool, most of the time developers want to do something with the document to test some functionality, lets keep edit mode on by default and save them a second. Change-Id: I61bbd2b85054b7ebdd14e69ca170674e260368e5 (cherry picked from commit 18fe7c8687182a1c5e6e497ec433d57b010d2e55)
2017-02-17lokdocview: Handle keypad enterPranav Kant
Change-Id: Ia892c346d4a3c0a5439c7977963cc502d287e6f7 Reviewed-on: https://gerrit.libreoffice.org/33445 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 5128e503ba8f602d1fda47c89e5b6ee4be6b7029)
2017-02-17lok: Listen for state change events for cell alignment commandsPranav Kant
We used to use HorizontalAlignment uno command for cell alignment both in online and gtktiledviewer. To make things simpler, lets use separate cell alignment uno commands for spreadsheets like we have in writer and impres. Change-Id: I2a959d1892f6b02db7a9ce51d55309216e4b3c6c Reviewed-on: https://gerrit.libreoffice.org/33444 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit a27e09079596eeae81cced01eaeabf94d6675085)
2017-02-17gtktiledviewer: Lets avoid using manual buffer sizesPranav Kant
Change-Id: I76e70ccb5b1f40193a1eda1cbca19b3444168dae (cherry picked from commit 29f697711e06b88fb8387518e7f8440cf49f0933)
2017-02-17gtktiledviewer: Override alignment buttons uno commands for calcPranav Kant
Use .uno:HorizontalAlignment instead of .uno:XXXPara for calc Change-Id: I5af4fe62dc3075af4ba779499d062e6d91f21ecf Reviewed-on: https://gerrit.libreoffice.org/32773 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 6ccd698371a8e88ea06ed0e144171dd1b6236aa7)
2017-02-17gtktiledviewer: Support for posting arguments to uno commandsPranav Kant
Change-Id: I5db217b525d0f976ef6a7840e370f8f6a21d60cb Reviewed-on: https://gerrit.libreoffice.org/32772 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 3ab6e2783bf7142729924cb95ca730404d0c54e1)
2017-02-17lokdocview: Handle insert keyPranav Kant
Change-Id: Idb5ad17a3a94b9a6fba1113a759207c59acfb7bd (cherry picked from commit de6e3d1e87d0e620bcef115605404a76800600a9)
2017-02-17lok: Fix state feedback for ToggleMergeCellsPranav Kant
Now it broadcasts "disabled" to disable the command and true/false to tell the status of the command which automatically means "enabled" Change-Id: I3314da77fb2b84d97f64b9832d65791b84fcd7df Reviewed-on: https://gerrit.libreoffice.org/32086 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit c5ceb0134dddb79207d3b8ddb7a36ee1ca294329)
2017-02-17lok: Sort ascending/descending is enabled/disabled statePranav Kant
... and not true/false Change-Id: Ie9ae6cbf70c1934dda1002deabda23c9f461c8b1 Reviewed-on: https://gerrit.libreoffice.org/32085 Reviewed-by: pranavk <pranavk@collabora.co.uk> Tested-by: pranavk <pranavk@collabora.co.uk> (cherry picked from commit 3ab307e568156b0fdafe1ee592870ef8c0e44750)
2017-02-17Lok: unittest batch APIAshod Nakashian
Change-Id: I33bc59756f46b51a69efd91b89813ba17eca6218 Reviewed-on: https://gerrit.libreoffice.org/33403 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit f6c0e851eff8c22c0ab427245c5eb78e9f396b62)
2017-02-17Lok: support for batch API callsAshod Nakashian
Mouse and keyboard operations typically come in batches, and often each results in tile invalidations and/or layout modifications. Processing each input event on its own, then processing the resulting output event is very costly and unecessary when we know there is more of the same. The new API adds support for batching such related input events by disabling the output events generated by Core until the batch is done. The client can then process the resulting events, which will be compressed and deduplicated. Change-Id: Id381dab807186d010021a8778ee440074a739920 Reviewed-on: https://gerrit.libreoffice.org/33402 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 1c27286b9d5331634c073cd3e327bd941e61bbb6)
2017-02-17Lok: improved tile invalidation compressionAshod Nakashian
Handle corner cases better and eliminate invalid rects and out-of-bounds coordinates. Change-Id: Ib9247ae4f0306cf68937cd2678f6386fe7710eec Reviewed-on: https://gerrit.libreoffice.org/31665 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> (cherry picked from commit 3db1ce30ab235ad22aed71c22e4f6f52b7b88829)
2017-02-17Lok: better logging and warningsAshod Nakashian
Change-Id: Ia933ae65197893592eeb04cb8a1a617a931ad623 Reviewed-on: https://gerrit.libreoffice.org/31606 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 2a5d8d7306776cc59a6311f20f32e1007dcac858)
2017-02-17Lok: disable DesktopLOKTest::testTileInvalidationCompressionAshod Nakashian
For some reason this test fails on TinderBox and for others while passing on Jenkins on all platforms. This might be related to the compiler version used. Disabling until resolved. Change-Id: Ic05dbb290818506c78ceaa4c416fb00e8c0dc8da Reviewed-on: https://gerrit.libreoffice.org/31607 Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit a8b2e3e948c507d71fd01b219dc77838f6bf785f)
2017-02-17Lok: correct tile invalidation mergingAshod Nakashian
Rectangles that are empty (i.e. IsEmpty() returns true) were incorrectly considered to mean equivalent to "EMPTY". The latter means full-area, while the former mean zero-area. This fixes the issue by restrict full-area to rectangles with 2 billion units on the each side (roughly INT_MAX) or more, and using this new check rather than IsEmpty(). Change-Id: I12aca17267f5dd33b2932012d1d9db3545f9af6f Reviewed-on: https://gerrit.libreoffice.org/31458 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 9c218858f1bd83ffdd72dd943a841cffa5a93b8c)
2017-02-17Lok: compress duplicate state-changed eventsAshod Nakashian
STATE_CHANGED callback events that have the form of name=value are only removed when newer ones are identical. This is not very helpful since often the same name (i.e. state type) changes its value and we need to superseed older ones with new values. This patch makes sure that a STATE_CHANGED with a given name has its latest value and doesn't change multiple times while in the queue. Change-Id: Ibfa18359464d7137411e5846b1c6d415a0aad43d Reviewed-on: https://gerrit.libreoffice.org/31258 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit f80140bf3a4fa2d809167825ee04ffd0a0c19c6c)
2017-02-17Lok: number callback enum for easier debuggingAshod Nakashian
Since the entries and their order are part of the public API, and will not change, numbering them makes it easier to trap particular callbacks by their number (as that's what shows in logs and the debugger). Change-Id: Ife2fe3e601ce3dce0939363d748fcb54d3c85fd4 Reviewed-on: https://gerrit.libreoffice.org/31257 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 719f7cb94ce783349fb1cf366a78edd9996d3e37)
2017-02-17tdf#104032: use correct text lengthMike Kaganski
Reviewed-on: https://gerrit.libreoffice.org/30980 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> (cherry picked from commit 7c43cba9804e70b23b71783d362401c75f9caa54) Change-Id: I16e6af179be3d7bee947c4054ae4fa6924b298f0
2017-02-17Lok: invalidate Writer comments correctlyAshod Nakashian
Because notifications to all views were disabled (to avoid moving the cursors of everyone when someone adds a comment) invalidation was also broken. The issue was observed when a comment crossed tile boundaries, the other tile was not redrawn. This forces invalidation so tiles are rendered correctly, fixing this regression. One small issue remains in that invalidating a comment only invalidates the text-area and not the complete PostIt (specifically, the author and date are not invalidated). This means that they can still get trimmed when crossing tile boundaries. That will be addressed separately, as it was an existing issue before the regression this patch fixes. Change-Id: Ic8173e4873d58836883b897f735fc627bb0572ee Reviewed-on: https://gerrit.libreoffice.org/31091 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com> (cherry picked from commit 9d2f30911de2f9d87cebb1a360fabe0bf9c05294)
2017-02-17osl::Condition - add deprecated markup. Use std::condition_variable.Michael Meeks
Change-Id: Id3488a46b12d41bada2711b135ca955259d6e448 Reviewed-on: https://gerrit.libreoffice.org/31176 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com> (cherry picked from commit ab45b41efe1109e015ecfcb670547d44026e4764)
2017-02-17sw: avoid busy loop waiting for OLE objects to load.Michael Meeks
Change-Id: I7f26a88d3dcdb47260eb95f7803702d55f4a9119 Reviewed-on: https://gerrit.libreoffice.org/31164 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com> (cherry picked from commit 17320183bdcaca335c339eecbba1b660bcc53c96)
2017-02-17sw: clean up redundant initializers in rtfstringbufferMiklos Vajna
Change-Id: Ie4bb6689b3b9bdfcfaab1f1c9320792672fb847a Reviewed-on: https://gerrit.libreoffice.org/31107 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org> (cherry picked from commit 6920eb20ae271b4f1cdbf574eb4beb8c796fcc6d)
2017-02-17Fix my windows build.Kohei Yoshida
Change-Id: I0cd6213f58e8b2d3d5950dfbb12e524de2950265 (cherry picked from commit 7637a20a622d6799ba867bd0122841a393178545)
2017-02-16Resolves: tdf#101000 ensure unique image names in .docscp-5.3-branch-pointCaolán McNamara
(cherry picked from commit 432f605e3287269d1a20383f4eeebf012ee3679d) Change-Id: Id4f93638ad366b66968e6946a835239beee16942 Reviewed-on: https://gerrit.libreoffice.org/34302 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-02-16tdf#95306: Be sure to specify the entire range.Kohei Yoshida
Especially in presence of multiple disjointed selections. Change-Id: I8e7779824109c30e69fd43a2448ae900beaf28d3 Reviewed-on: https://gerrit.libreoffice.org/34140 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Kohei Yoshida <libreoffice@kohei.us> (cherry picked from commit 6d450aad0a8f82ee0320ffc3e76eefb43c16addb) Reviewed-on: https://gerrit.libreoffice.org/34143 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-16tdf#103677 Windows installer iconsAndreas Kainz
Icons refreshed according Tango style Change-Id: Ibb86ea0a7153f0ac7331d278b2dcd8f8c64835e7 Reviewed-on: https://gerrit.libreoffice.org/32998 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> (cherry picked from commit a296a69c984b17cfbcd249cf6bdc191d08dff2a6) Reviewed-on: https://gerrit.libreoffice.org/33943 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-16fix build with hunspell < 1.5David Tardon
Change-Id: I66810d2bf9bbd08990dd8e995e34c50caa472ff8 (cherry picked from commit 64362ec119a4f38c98d2ff959a5651f4887ff942) Reviewed-on: https://gerrit.libreoffice.org/34339 Reviewed-by: Rene Engelhard <rene@debian.org> Tested-by: Rene Engelhard <rene@debian.org>
2017-02-16Updated coreChristian Lohmaier
Project: translations ec0fc5710bf0de01ff618ba5e89458bce286961d update translations for 5.3.1 rc1 and force-fix errors using pocheck Change-Id: Iee1dc87c949d400b36b590d5dbcfc8b6434c3a46 (cherry picked from commit 83ab35b7b8dee968b2827220496920dbe84c3c16)
2017-02-16Resolves: tdf#105968 handle engineering notation rounded into next magnitudeEike Rathke
Change-Id: Ie31ab88543994f0e8aeef8152c230c05e071ef8e (cherry picked from commit 63bc2b13cb344cce99348496838d7d2c2f690211) Reviewed-on: https://gerrit.libreoffice.org/34321 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-16Related: tdf#105712 inconsistency with num of a11y children in special charCaolán McNamara
with no visible scrollbar it claims 1 child, but trying to get child at index 0 throws (cherry picked from commit b3098d239f46c8d5965754f275bc62216dcb4f4f) Change-Id: Icf1a0afc4a6f6090e3f14f30b4380db477955561 Reviewed-on: https://gerrit.libreoffice.org/34313 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-16tdf#106026: Export paragraph top and bottom margin to DrawingMLTor Lillqvist
Change-Id: I8c60f86a1debe135c9172ff639aa5af93f03b99b (cherry picked from commit d2b014edc0f466370023a35eb46548390ceb7fb2) Reviewed-on: https://gerrit.libreoffice.org/34299 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-16Resolves: tdf#105229 restart in normal mode instead of quittingKatarina Behrens
Change-Id: I546629656ada6c7a8a15b4dc77a042e1f1106924 Reviewed-on: https://gerrit.libreoffice.org/33059 Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de> Tested-by: Katarina Behrens <Katarina.Behrens@cib.de> (cherry picked from commit 29b13a24cf5f0e6e58641d4a55cdfa03c83b68ac) Reviewed-on: https://gerrit.libreoffice.org/34096 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-16Resolves: ofz#576 unexpected exception with invalid fractionCaolán McNamara
(cherry picked from commit cff6cdb2ee37e836b9bab39500d24fcedc360121) Change-Id: I1d653775e88e9fa2ba7b62fce39d52fc21ffe363 Reviewed-on: https://gerrit.libreoffice.org/34069 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-02-15Simple work-around for unpleasant framework shutdown to avoid crash.Michael Meeks
http://crashreport.libreoffice.org/stats/crash_details/2de31c06-da20-4280-916a-e282a337b16b Change-Id: I0b599de9b36f62d65988c1ab698f1559134fbf7c Reviewed-on: https://gerrit.libreoffice.org/34294 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com> (cherry picked from commit 2c60e02bbfde8655828a5b019642f5e85f975e61) Reviewed-on: https://gerrit.libreoffice.org/34297 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-02-15external/firebird: Backport fix for CORE-5452 causing spurious SEGVStephan Bergmann
...while building LO. Patches from <https://github.com/FirebirdSQL/firebird>'s B3_0_Release branch; to apply, 0002 needed 0001 first (which looks like a reasonable thing to include in itself, anyway), plus a trivial whitespace modification, plus an additional #include for Windows. Reviewed-on: https://gerrit.libreoffice.org/33186 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com> (cherry picked from commit 592f4f6a5941e42e6b2b3fa76e74b8ad509724c9) Change-Id: Idd2e326432fa52762742a168c7e880a9c6fb650c Reviewed-on: https://gerrit.libreoffice.org/34305 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-02-15tdf#106011: The "swing angle" is negative when counter-clockwiseTor Lillqvist
Change-Id: I1ef77e4c8cf0a6d31b36411a79b576115c32c644 (cherry picked from commit 34d8dc19a08e2752a4b8d3b3d83b7cf3ac341f1c) Reviewed-on: https://gerrit.libreoffice.org/34283 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2017-02-15tdf#105840 EXCEL export: fixes for hidden defaultRowJustin Luth
second attempt at fixing hidden rows without creating a million repeated rows. (related to tdf#98106) This affects both .xls and .xlsx. XLSX previously had NO support for default-hidden(zeroHeight), but XLS already did. Change-Id: I804e3f2ba21e595a1c2b2ebb355f0995868dd289 Reviewed-on: https://gerrit.libreoffice.org/34128 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl> Reviewed-on: https://gerrit.libreoffice.org/34277
2017-02-15Optimize Excel GetOrCreateRow: compare to previous map entryJustin Luth
Follow-up patch to 09e9274fc080b471393b806617eb03124db67590 and related to tdf#105840. Just keeping the non-dependent parts separate, and building up to a solution for bug 105840. Change-Id: I129e671f71de6abf876a82d4a6503695add85548 Reviewed-on: https://gerrit.libreoffice.org/34039 Reviewed-by: Justin Luth <justin_luth@sil.org> Tested-by: Justin Luth <justin_luth@sil.org> Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl> Reviewed-on: https://gerrit.libreoffice.org/34276 Tested-by: Jenkins <ci@libreoffice.org>
2017-02-15Optimize Excel GetOrCreateRow: reduce loopsJustin Luth
for ( size_t nFrom = maRowMap.size(); nFrom <= nXclRow; ++nFrom ) This previous code worked best under the assumption that every row is added to the map. However, the size of the map actually has no correlation to the row numbers contained in it when many rows are identical to each other (think silly formatting and empty rows - related to tdf#105840) Thus row 1,000,000 could occupy slot 2, and every access of that row would then trigger nearly 1 million redundant loops. Optimize: -check to see if the row already exists - if so do nothing. -existance of higher rows indicates there are no missing rows. -build missing rows from the previously-mapped row. Reviewed-on: https://gerrit.libreoffice.org/34038 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl> Conflicts: sc/source/filter/excel/xetable.cxx Change-Id: Ib02520a1bf0f77b5ca0ec5ad3165ff7ea879515f Reviewed-on: https://gerrit.libreoffice.org/34275 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>