summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-01-17tdf#114441 convert sal_uLong to appropriate typeAmosAidoo
getLength function returns sal_Int64 hence the change. The function cast is removed to avoid redundant casting. Change-Id: Ia947c544efca18d0495a691aa4ad3de5e4617d6d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162183 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
2024-01-17Implement hyperlinkInfoAtPosition function for Calc.Gökay Şatır
Move getEditURL function to public. When in readonly mode, we need a way to get the hyperlink info (if any) when user clicks on a certain coordinate. Signed-off-by: Gökay Şatır <gokay.satir@collabora.com> Change-Id: I2329b3569cfdca91f64cbdb46f43a3a9c34706c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162111 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> (cherry picked from commit be01dd78c47b51b19603a6259504e29b11979b0b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162143 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-17tdf#159101 sw: Fix space appearing at start of line when field wrapsMatthew Kogan
Adding the ' ' to ScanPortionEnd fails pretty quickly with infinite loop. The important part of fixing the forum-mso-en-13115.docx was that the SetHasFollow(true) condition is not affected by a ' '. (regression from commit 21473f46fda5f1c7f220493667a96fff7c78a7b3) Change-Id: I6452673c0fe05ca549b63a398a977fc71db64bae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162167 Tested-by: Jenkins Reviewed-by: Matthew Kogan <matthew@epoq.co.uk> Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-01-17tdf#134401 SD: export to pptx: autoGrow->textWordWrapAttila Szűcs
PPTX doesn't have autoGrowWidth and autoGrowHeight, but it does have TextWordWrap which is similar. If autoGrowWidth and autoGrowHeight are set in the document, then they are exported to PPTX as TextWordWrap = "none". Without this patch, PowerPoint may wrap some texts into more lines as Impress does. This is because some text may rendered at sligtly different sizes in PowerPoint as in Impress. (maybe it is just a rounding difference) Even 1% (or less) size difference is enought, because when autoGrowthWidth and autoGrowthHeight is set, then there is a good chance, the textbox rectangle is exactly as big as the text. Change-Id: I2cdba68c66c43507c5007a9e395b87ddeeea2372 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162152 Tested-by: Jenkins Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-17CppunitTest_sw_ooxmllinks: convert one test to use CPPUNIT_TEST_FIXTURE()Miklos Vajna
No need go via Writer-specific macros. Change-Id: Ib5e0b4f527cb6ff7ba72fd54037a339274aaf379 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162186 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-01-17tdf#158740 fix crash by checking the end node's indexPatrick Luby
I don't know why m_nEndNode is larger than the size of the node array, but adjusting m_nEndNode to the last element in the node array stops the crashing. Change-Id: I425589457c6729b6689a7046f063154a2496e811 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162035 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-17tdf#158950 Paste as RTF loses char color and paragraph alignment from stylesNoel Grandin
This logic partially originated in commit 8e8f9388c323ad3c32cef3f91609ad19386b7d56 Author: Miklos Vajna <vmiklos@collabora.co.uk> Date: Tue Apr 22 12:53:24 2014 +0200 Related: fdo#77600 RTF import: RTFValue::equals: compare attribute content But it is rather weird to compare RTFSprms this way, comparing each attribute to a parent RTFValue. Making the comparison more "normal" fixes the reported bug while not breaking fdo#77600 Change-Id: Iee224c7bc9542c359f8a71086230e4b53c1c3e16 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162164 Reviewed-by: Regina Henschel <rb.henschel@t-online.de> Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-01-17Resolves tdf#158958 and tdf#159124 - Improvements to Comments indicatorHeiko Tietze
* Option to control the indicator size added * Border color adopts the grid color * Indicator moved to the very edge of the cell * Default dynamic size reduced Change-Id: Ia298edfa30061910344a1afa42b42840b9cdab77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162175 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-01-17tdf#145538 use std::equal in place of for loopachintya
Change-Id: Ie262b36a5ad1be9b2c4d5e8acffc58895e795910 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161273 Tested-by: Jenkins Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-01-17tdf#135083: make sure to apply pending paragraph properties, even withoutMike Kaganski
... trailing \par. Commit a6ae84cc296d4d28e9a48a57406e955138c87a80 (tdf#70318: Prevent extra empty paragraph in clipboard RTF content, 2015-11-10) made sure to not emit trailing \par for RTF clipboard content. The problem was, that in the absense of the \par, the settings of the last paragraph were not applied (this happens in DomainMapper_Impl::finishParagraph). This change makes sure to call dispatchSymbol(RTFKeyword::PAR) (which eventually calls the mentioned method and applies pending para properties). Since this also adds a new paragraph (which needs to be avoided), a new flag is introduced, set by Stream::markLastParagraph. Its purpose is to make sure that all properties are applied to para, as opposed to bRemove argument to DomainMapper::finishParagraph, which prevents setting some properties (e.g., related to numbering - see DomainMapper::lcl_utext). Change-Id: Ia5e368e540c30f95058c81a280a62205aa85398b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162154 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-17ITEM: Remove suspicious extra-Which in ::PutArmin Le Grand (allotropia)
The ::Put methods at SfxItemSet had an extra WhichID parameter that was not really documented, but I would guess often asked why it exists: An extra WhichID, just called 'nWhich' (which makes things NOT clearer). That is 'strange' since the Item given to be put already internally has a WhichID, so why a 2nd one? If you were really interested and read all that code (no, no comments on that anywhere) you might know that this a kind of 'Target-WhichID' under which the Item shall be put to the ItemSet. Since this is unclear for most people it is even dangerous and explains why so many code places just hand over the WhichID requsted from the Item that already gets handed over. To make it short: I removed that. For the 19 places where this was really needed I added a new method besides ::Put called ::PutAsTargetWhich that takes that extra WhichID (now called TargetWhich) and takes the needed actions. These are quite some because that may be combined with the bPassingOwnership flag, see new SfxItemSet::PutImplAsTargetWhich method. This makes usage of ItemSets/Items less dangerous. It also simplifies and thus makes safer the central helpers implCreateItemEntry/implCleanupItemEntry which have some less cases to handle. Debugged the failing UnitTests showed that there is an incarnate Item != SfxVoidItem that causes problems. I checked for errors in the change, but no luck. Afterr some time I found out that a ::Clone implementation caused the problem: These need to also copy the WichID of the original, but the SfxFrameItem failed to do so. This did not cause problems in the former version because implCreateItemEntry was designed to set a missing/ different WhichID. I corrected that in SfxFrameItem, also removed not needed costructor that caused that. Also added a SAL_WARN and a correction in implCreateItemEntry. I could have added an assert (did so for running local UnitTests), but should be enough. NOTE: When hunting for Items except SfxVoidItem that get crerated using a WhichID '0' i learned that this indeed happens: There are some (5) calls to SfxRequest::SetReturnValue that incarnate an SfxBoolItem with WhichID '0' (ZERO). This is not good and I think about how to change that... Change-Id: I9854a14cdc42d1cc19c7b9df65ce74147d680825 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162124 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-01-16tdf#159213: fix Base crash when choosing "Help" in relations design (kf5)Julien Nabet
There are 2 parts here: 1) in vcl/qt5: - for release versions: avoid to call QtAccessibleRegistry::getQObject on a null object - for debug version: add an assertion on object to check it's not null 2) in svtools: the specific root cause was in EditBrowseBox::DeactivateCell, we must check m_aImpl->m_xActiveCell in addition to isAccessibleAlive() Import remark: I had a very naive/bandaid patch at the beginning this one is entirely thanks to Michael Weghorn Change-Id: I90214e9c5b7c0aa45481915d7be6020a7dc8c42e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162182 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
2024-01-16Fix typoAndrea Gelmini
Change-Id: I4a4e461845dabe7d8e869b18028096d094381d2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162120 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-01-16Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to 8e08228c2675a646daf27dac5def08eca97f3e88 - Typo Change-Id: I9bd53d8a62332c1b41f44245880c75ad2086313b Reviewed-on: https://gerrit.libreoffice.org/c/help/+/162140 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2024-01-16Remove executable bits on rtf filesAndrea Gelmini
Change-Id: I9990c75acfb40eb7aba742322767b42931aaf2ba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162122 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2024-01-16A base B3DTuple can no longer stand in for a derived BColorStephan Bergmann
...after 925c05ee1a1259641a28fe43588f425aff06b95e "chart2: Make automatic area coloring for charts work for tiled rendering" added a non-static data member BColor::bAutomatic. And e.g. CppunitTest_basegfx started to fail with > ==2962908==ERROR: AddressSanitizer: global-buffer-overflow on address 0x7f67a04a8378 at pc 0x56434b3e7077 bp 0x7ffdf41d8220 sp 0x7ffdf41d79e0 > READ of size 32 at 0x7f67a04a8378 thread T0 > #0 in __asan_memcpy at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp:63:3 > #1 in basegfx::BColorModifier_black_and_white::getModifiedColor(basegfx::BColor const&) const at basegfx/source/color/bcolormodifier.cxx:318:20 > 0x7f67a04a8378 is located 0 bytes after global variable 'basegfx::B3DTuple::getEmptyTuple()::singleton' defined in 'basegfx/source/tuple/b3dtuple.cxx' (0x7f67a04a8360) of size 24 Change-Id: Ib1ec52ae388b213b10ad8a772a36b2158df8b003 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162179 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-01-16CppunitTest_sc_uicalc: sc_uicalc: extend test a bitXisco Fauli
Change-Id: I3c112c1362485868d0da016428fb897e6e3df3dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162171 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-01-16tdf#140330: sc_uicalc: Add unittestXisco Fauli
Change-Id: I6cbb3f310f0876119e0d335807991e7a4f753226 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162169 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-01-16tdf#104026: sc: move UItest to CppUnittestXisco Fauli
I just realized there was already a test for tdf#104026 added in ad9336f29650dc38be06d771f5c3dbc7f0078ff1 "add tests for tdf#104026" so I don't know why I added a UItest in a7c41f93421ddb2b48e38960b669c4e4f5413efb "tdf#104026: sc: Add UItest" Anyway, I plan to extend this test for tdf#140330, so moving it to CppUnittest Change-Id: I6c4de9298877cc1c51377b099a6a4a53cf54c05b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162168 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-01-16SwNavigator: remove useless codeJim Raykowski
The comment states: -> the user data here are no longer valid! meaning sOldSelEntryId = m_xTreeView->get_id(*xOldSelEntry) isn't valid here. Change-Id: Ie5591a93a96eefb97b7563af69753f4a105696eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162068 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2024-01-16Remove unused `make upload-update-info`Stephan Bergmann
Change-Id: Ifdec48aaf53b0444c2d7ceef554f64795e2f2c38 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162172 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-01-16tdf#105844 xmlsecurity: fix test failure on WNTMichael Stahl
Commit 4d6e9d5e155da1dde05233eb87691e2a454162f6 added 2 tests that always fail on WNT, unfortunately Jenkins doesn't actually run the tests. There are 3 certificates involved: "Xmlsecurity RSA Test Root CA" "Xmlsecurity Intermediate Root CA" "Xmlsecurity RSA Test example Alice" In the signature XML, there are 3 elements that contain or reference certificates: 1. X509Data - xmlsecurity produces only the signing certificate here 2. xd:SigningCertificate (XAdES) - again only the signing certificate 3. xd:EncapsulatedX509Certificate (XAdES) - xmlsecurity produces the full certificate chain here All of these elements *could* contain the full certificate chain, but in LO-produced XML signatures only 3. does. The problem is that the function CheckUnitTestStore() that looks up a certificate in a unit-test-specific CA store via $LIBO_TEST_CRYPTOAPI_PKCS7 can only handle a root certificate, it does not recursively retrieve and check a certificate chain. The SecurityEnvironment_MSCryptImpl::verifyCertificate() already has a parameter "seqCerts" to pass in the full certificate chain, but due to the way the data from the XML is processed, it gets passed only the content of the X509Data element(s), which, for LO-produced signatures, do not contain the full certificate chain. Instead of improving the unit-test-specific function, let's try to get all the certificates out of the XML signature, and then pass them to verifyCertificate(). Of course this requires some consistency checks so that the verification can't be fooled by different certificates in different XML elements. Change-Id: I8ca541887ceac2dfb6af5d96a5565cfa58d7f682 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162170 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-01-16android: Update gradle + wrapper to 8.5Michael Weghorn
Commit the result of running ./gradlew wrapper --distribution-type all --gradle-version 8.5 --gradle-distribution-sha256-sum=c16d517b50dd28b3f5838f0e844b7520b8f1eb610f2f29de7e4e04a1b7c9c79b (minus the automatically added `networkTimeout=10000` in `android/source/gradle/wrapper/gradle-wrapper.properties`). This includes the following upstream change for gradle to port from the use of `which` to the more portable `command -v`: [1] Thanks to Eli Schwartz for pointing this out in his previous Gerrit change [2] that was suggesting to only backport that particular change to the wrapper script. [1] https://github.com/gradle/gradle/pull/23961 [2] https://gerrit.libreoffice.org/c/core/+/160667 Change-Id: I1c230c75d2d8583852c59ff43ddfdf77daf5d5ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162081 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-01-16cid#1546333 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1545979 COPY_INSTEAD_OF_MOVE Change-Id: I9ccdcf78ee961f9b90e365a246878c9243225ade Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162163 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-16tdf#159216: Do not use layout-styleXisco Fauli
Change-Id: I50c6f45cf12013ba7fb182928d5b566d88830d1f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162162 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com> Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-01-16chart2: Make automatic area coloring for charts work for tiled renderingofftkp
Charts now get a temporary colored applied to the area property set if their color was set to automatic, which is done by default in tiled rendering mode. Change-Id: Ic6bd19b97d2a0ffa2a1ad516cfa202e2f4921db7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160659 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-01-16Update git submodulesKira Tubo
* Update helpcontent2 from branch 'master' to 92f7d7e64bd5154e6b1c780cbdefe4c50a316243 - tdf#138748 Help: Language -> Locale for Sort Options Update help documentation to match replacement of "Language" to "Locale" in Calc sort options. Related to commit 79f3a2655d995421c989b9479e3c63e8ebeabeb2 Change-Id: Id0ef7c9e8ff1e11f4d44e41dfcec9837d86e671d Reviewed-on: https://gerrit.libreoffice.org/c/help/+/162129 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2024-01-16improve loplugin:cow_wrapperNoel Grandin
some stuff was hiding inside templates Change-Id: I89fd1a926dd6bf96e35a74e5028165acae51c60c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162159 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-16Fix typoAndrea Gelmini
Change-Id: I352ca1bfee42b3dfe49401a4c75fbbb2140d28da Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160204 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-01-16sc lok: don't set the GridWindow size to document sizeTomaž Vajngerl
We now set the GridWindow size to the size of the client area so no need to set it to the document size (which can get enormous in Calc). There are no ill effects AFAICS, but needs a lot more testing. Change-Id: Ib6d6fd0d72c9e8767bfe1636ba1621ccf9908f90 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162135 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-01-16editeng: add EditLineList testTomaž Vajngerl
Change-Id: Iaec97999ae9ea0a01251e4449d3c7b74aa3539d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162072 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-01-16loplugin:unusedmethodsNoel Grandin
Change-Id: I24c429c7cb8283a384b72499d1c3f4c2f1457c33 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162155 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-16ITextLayout is unnecessaryNoel Grandin
everything inherits through TextLayoutCommon Change-Id: Ibf91804a62fc8f4a803682c7d4b9eaaba7468512 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162156 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-16Use correct type when getting document colorsSzymon Kłos
After commit 0460be8848b0ce02c07183e41dd7137ac3b94164 Send document colors with lok callback There was issue detected by CI: /sc/source/core/data/document10.cxx:198:46: runtime error: downcast of address 0x6100000efa40 which does not point to an object of type 'const SvxColorItem' 0x6100000efa40: note: object is of type 'SvxBrushItem' 00 00 00 00 b0 79 19 48 ce 7f 00 00 01 00 00 00 94 00 be be 4c 17 00 00 a0 be be be cc cc ff 00 ^~~~~~~~~~~~~~~~~~~~~~~ vptr for 'SvxBrushItem' #0 0x7fce1fbed369 in ScDocument::GetDocColors() /sc/source/core/data/document10.cxx:198:46 Change-Id: I41f28b6bb54d7720d58c16d75b9d116a53f106cc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162077 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2024-01-16cid#1586339 COPY_INSTEAD_OF_MOVECaolán McNamara
Change-Id: I18109124eb1e78260b7cef8f809012118698e5c3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162160 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-16tdf#154248 Impress: fix color of hyperlinkAttila Szűcs
Added a new FindAttrib method that searches in the attribs a bit different. The original FindAttrib searches in attribs as if their position intervals are closed from both side [Start,End]. However, the actual attribs array was created using PaMs as positions, and these are right-opened intervals [Start,End) Change-Id: I9a46b6b27ce447366fc20af1b46fd60b5c745359 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161836 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162158 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-16ofz#65809 Direct-leakCaolán McNamara
since: commit c84a1928ea76cf175711942db9ca7bb2f0ec6f0b Date: Tue Oct 3 12:40:25 2023 +0530 sc: condfmt-perf: use a shared cache that... mbReadyForFinalize gets set to true, but the mpFormat is never set into the ScDocument, add a mbOwnsFormat to track successful transfer of ownership. Change-Id: I8f11c68a4253d1ad67ec96825d5036ad468562ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162128 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-16calc: on editing invalidation of view with different zoom is wrongMarco Cecchetti
This patch fixes the following invalidation issue: There are 2 views with different zoom levels. In a view text editing for a cell occurs. The other view is not invalidated properly: the computed invalidation rectangle is misplaced. Change-Id: I72db61486647640ee68e6cb2db96b2902de5b997 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160303 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162161 Tested-by: Jenkins
2024-01-16crashtesting: still seeing occasional impl_notifyEvent_nothrow failuresCaolán McNamara
e.g.: #0 0x00007f5a3a5d45fc in comphelper::OInterfaceContainerHelper3<com::sun::star::document::XDocumentEventListener>::NotifySingleListener<com::sun::star::document::DocumentEvent>::operator()(com::sun::star::uno::Reference<com::sun::star::document::XDocumentEventListener> const&) const (this=this@entry=0x7f5a38ffd680, listener=empty uno::Reference) at include/comphelper/interfacecontainer3.hxx:253 #1 0x00007f5a3a5d9427 in comphelper::OInterfaceContainerHelper3<com::sun::star::document::XDocumentEventListener>::forEach<comphelper::OInterfaceContainerHelper3<com::sun::star::document::XDocumentEventListener>::NotifySingleListener<com::sun::star::document::DocumentEvent> >(comphelper::OInterfaceContainerHelper3<com::sun::star::document::XDocumentEventListener>::NotifySingleListener<com::sun::star::document::DocumentEvent> const&) (this=this@entry=0x7f5a3035ea08, func=...) at include/comphelper/interfacecontainer3.hxx:275 xListener = empty uno::Reference iter = {rCont = @0x7f5a3035ea08, maData = {m_pimpl = 0x7f5a30132260}, nRemain = 1} #2 0x00007f5a3a5d950e in comphelper::OInterfaceContainerHelper3<com::sun::star::document::XDocumentEventListener>::notifyEach<com::sun::star::document::DocumentEvent>(void (com::sun::star::document::XDocumentEventListener::*)(com::sun::star::document::DocumentEvent const&), com::sun::star::document::DocumentEvent const&) (this=this@entry=0x7f5a3035ea08, NotificationMethod=<optimized out>, Event=...) at include/comphelper/interfacecontainer3.hxx:290 #3 0x00007f5a3a5d39f9 in dbaccess::DocumentEventNotifier_Impl::impl_notifyEvent_nothrow(com::sun::star::document::DocumentEvent const&) (this=this@entry=0x7f5a3035e9c0, _rEvent=...) at dbaccess/source/core/dataaccess/documenteventnotifier.cxx:200 __func__ = "impl_notifyEvent_nothrow" #4 0x00007f5a3a5d3b83 in dbaccess::DocumentEventNotifier_Impl::processEvent(comphelper::AnyEvent const&) (this=this@entry=0x7f5a3035e9c0, _rEvent=...) at dbaccess/source/core/dataaccess/documenteventnotifier.cxx:233 rEventHolder = <optimized out> #5 0x00007f5a57cd95ba in comphelper::AsyncEventNotifierBase::execute() (this=this@entry=0x7f5a3010f670) at comphelper/source/misc/asyncnotification.cxx:139 so lets guard the OInterfaceIteratorHelper3 ctor. might as well use empty() to return early then, and align the OInterfaceIteratorHelper4 case with that. Change-Id: I138841840e032e6524792fb75168ccabc666b34c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162127 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-16tdf#53614 - Don't try to lock file after cancelling the import processAndreas Heinisch
After cancelling the import process don't try to lock the file. Otherwise, the document in use dialog will be shown which has literally no effect. Change-Id: I0a9c786899a7fc648678c785e316d28fc43c7fe7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162150 Tested-by: Jenkins Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2024-01-16Add a minimal Python extensionHossein
This is a minimal Python extension. It is possible to run main.py from: 1. Inside a LibreOffice extension 2. Inside LibreOffice, and also via APSO 3. Outside LibreOffice, as an external process, and also in a Python IDE The provided Python script is very useful for debugging extensions as an example. That is because it is possible to debug it in an IDE before packaging it as a LibreOffice extension. Python file is checked with: $ flake8 --ignore E501 main.py Change-Id: I24d9aefdfda29264bf6b5f9403a40fae35e610f6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159938 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
2024-01-16Fix typoAndrea Gelmini
Change-Id: Idfb2308f0f61a494524bb8c4bf74ae0c78b3cf06 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162121 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2024-01-16Fix typoAndrea Gelmini
Change-Id: Icdfb0f41b7e69ea0efe441fdfba8b87aa370f413 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162118 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2024-01-16Fix typoAndrea Gelmini
Change-Id: I86b1472e88a6baaaaf562dc69cb98b079e963ca4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162119 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2024-01-16Fix typoAndrea Gelmini
Change-Id: I8da56aa65ff0488097b1f0ca00ed8ad08c212d59 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162117 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2024-01-16sw: document SwUndoCpyDocMiklos Vajna
Explain how this differs from SwUndoInsDoc, when both insert content to the document. Change-Id: I426f5a229bffe16d98fa7f7cd0e64d394297becc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162153 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-01-16tdf#159158 writerfilter: relativeHeights of 0/1 are highest zOrderJustin Luth
Apparently 0 and 1 are the highest zOrders, 2 is the lowest, then 3... At least, this seems to be true for relativeHeight. Of course the documentation doesn't say anything about this, but documents conclusively prove a maximum zOrder of 251,658,240. [When MS Word 2019 round-trips a file with a relativeHeight of 0/1, it replaces them with the highest relativeHeight in the document, but values of 2+ are preserved.] Notice that there are two things that feed into zOrder, the other being z-index where negatives have special meaning in this context, but no special meaning for 0 or 1. Interestingly, relativeHeight is unsigned, but z-index is signed. This ends up not being a problem with a maximum of 0F00 0000. GOOD! LO normally exports starting from 2, but writes 0 if no zOrder. // It seems 0 and 1 have special meaning: // just start counting from 2 to avoid issues with that. Proof case that 0 is higher than both 300 and 225,763,766 make CppunitTest_sw_ooxmlexport8 CPPUNIT_TEST_NAME=testN747461 make CppunitTest_sw_ooxmlexport18 \ CPPUNIT_TEST_NAME=testTdf159158_zOrder_1and0equalA make CppunitTest_sw_ooxmlexport18 \ CPPUNIT_TEST_NAME=testTdf159158_zOrder_1and0equalB make CppunitTest_sw_ooxmlexport18 \ CPPUNIT_TEST_NAME=testTdf159158_zOrder_1and0max Change-Id: I3540252ca5b0be3b2d847f1a3885adb850f39c39 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162038 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-01-16tdf#159158 writerfilter: duplicate relativeHeights? last one wins #2Justin Luth
Revert the previous solution and replace it with this simpler one. This version of the patch is riskier, but from what I can see last one always wins for GraphicImport. I assume that Miklos just limited it to a certain situation as a sanity check to try to avoid causing regressions outside of the scope he was working on. The fact that all DOCX and RTF unit tests pass is a good sign. The only way I would expect this to cause problems is if z-index somehow can come into play with a GraphicImport (since both z-index and relativeHeight feed into zOrder). However, an assert didn't turn up any instances where applyZOrder was called without a relativeHeight being set. assert(m_rDomainMapper.IsRTFImport() || bOldStyle || UsedRelativeHeight); Change-Id: I28e8acd5997eed0e82d5853c85b672c62b21afe5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162036 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-01-16tdf#159158 writerfilter: duplicate relativeHeights? last one winsJustin Luth
[When MS Word 2019 round-trips a file with a duplicate relativeHeight it replaces them with unique relativeHeights in the export.] My THEORY is that bOldStyle should always be true for GraphicImport, so a follow-up commit will basically revert all of this, but at least if my theory is wrong, I'll still have fixed this problem. Notice that there are two things that feed into zOrder, the other being z-Index. I assume the very explicit code that says that (except for bOldStyle) first one wins must be the standard for z-Index. make CppunitTest_sw_ooxmlexport18 \ CPPUNIT_TEST_NAME=testTdf159158_zOrder_duplicate Change-Id: I842d016a7922427ce1290a7134d4e19fed52880f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161989 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-01-16cool#1770 sw: make Edit Sections dialog async and mark it a jsdialogMéven Car
We want our dialogs to be async so they don't lock documents when opened and to allow concurrent edition. In SwEditRegionDlg, we need to make sure the reference to the SwWrtShell isn't read from 'this' after `response()`, as it is now the dialog is disposed of earlier in the async case. How to test: Create a new Writer document, insert a section, right-click inside the section, pick the 'edit section' menu item to trigger this dialog. Change-Id: Ibafca69542f13d16beef5a8fca006428cbcfe5c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161828 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161830 Tested-by: Jenkins Reviewed-by: Andras Timar <andras.timar@collabora.com>