summaryrefslogtreecommitdiff
path: root/desktop
AgeCommit message (Collapse)Author
2022-06-10loplugin:unnecessaryvirtualNoel Grandin
Change-Id: Ica246a12d93f5417ad857b9484575d03c66f761a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135601 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-10new loplugin:moveitNoel Grandin
look for local variables that can be std::move'd to parameters off by default, since it doesn't do proper data flow analysis Change-Id: I3403a0fcffd165bdea6a772528bc53995c5fdb40 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135527 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-08use recursive mutex for LOK queueLuboš Luňák
Callbacks may be invoked while calling getLOKPayload(), which would try to lock the mutex again. I actually originally expected this possibility, as the comment and moving the data to temporaries in CallbackFlushHandler::enqueueUpdatedTypes() shows, I just didn't realize the used mutex wasn't recursive and so would deadlock. Change-Id: I2b5c4b6b4c1a3933a32ae4641830877e085f2b6c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135499 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-07Use o3tl::make_unsigned, OString::getLength() is guaranteed to be non-negativeStephan Bergmann
Change-Id: Ibddd4f2b3d8680c94fd0ab45f6ed6204215c6009 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135339 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-06-04ScriptForge - New 'UnitTest' service for BasicJean-Pierre Ledure
The "UnitTest" service is implemented as a new Basic library called 'SFUnitTests'. ScriptForge unit tests (SF_UnitTest class module) ====================== Class providing a framework to execute and check sets of unit tests. The UnitTest unit testing framework was originally inspired by unittest.py in Python and has a similar flavor as major unit testing frameworks in other languages. It supports - test automation - sharing of setupand shutdown code - aggregation of tests into collections. Both the - code describing the unit tests - code to be tested must be written exclusively in Basic (the code might call functions written in other languages). The code to be tested may be released as an extension. It does not need to make use of ScriptForge services. The test reporting device is the Console. Definitions: - Test Case: each test case is a Basic Sub. - Test Suite: a collection of test cases stored in 1 Basic module. - Unit test: a set of test suites stored in 1 library. Two modes: - the normal mode ("full mode"), using test suites and test cases The UnitTest service is passed as argument to each test case. - the "simple mode" limited to the use of the Assert...() methods. Service invocation examples: - In full mode, the service creation is external to test cases Dim myUnitTest As Variant myUnitTest = CreateScriptService("UnitTest", ThisComponent, "Tests") ' Test code is in the library "Tests" ' located in the current document - In simple mode, the service creation is internal to every test case Dim myUnitTest As Variant myUnitTest = CreateScriptService("UnitTest") With myUnitTest If Not .AssertTrue(...) Then ... ' ... .Dispose() End With Error handling To support the debugging of the tested code, the UnitTest service, in cases of - assertion failure - Basic run-time error in the tested code - Basic run-time error in the testing code (the unit tests) will comment the error location and description in a message box and in the console log, providing every test case (in either mode) implements an error handler containing at least a call to the ReportError() method. Change-Id: I9d9b889b148f172cd868af455493c8c696d1e953 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135365 Tested-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jenkins Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
2022-06-03Fix typo in codeAndrea Gelmini
Change-Id: I2c1f14d033a733210dfee617ecaa7a9cea07c4f9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135352 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-03Improve some C code mixing size_t and ssize_tStephan Bergmann
Change-Id: I9b6082f3e913a9bddcb3bd035b92e829f9b00c07 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135340 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-06-03elide some makeStringAndClear() classNoel Grandin
when we are passing the result to a string_view, it is pointless. Change-Id: I4c780bd8dd356bd764b9f88400a41cca6d85f84b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135337 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-03Use more appropriate index variable typeStephan Bergmann
Change-Id: I0d18657fe3565b07fb1de2f0704f62aaf8226f9d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135338 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-06-03clang-tidy modernize-pass-by-value in desktopNoel Grandin
Change-Id: Ie9c1cd41c5944b901f4ec6c1e4ffd8608c063ffa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135317 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-02fix handling of XTransferable2 if the type is only XTransferableLuboš Luňák
Apparently some selections provide only XTransferable and not XTransferable2, making this entire call think that there's no selection at all. Handle that properly, and if XTransferable2 is not provided, then presumably it's not important to check for isComplex(). Change-Id: I3bbafe46a6b9ac8552c62e524137e1691b54895a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135300 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-31lok: don't render active textbox on all slidesSzymon Kłos
when we render tiles for slide previews we use viewid = 0 (first session) so when first session edits any textbox and in other session we request slide previews (eg. after new slide was added) then we received tile with additional text from the first session this is caused by: commit bee4ff508a456a1552aacdf6fc838b8b7cffb9ec desktop lok: avoid unnecessary setPart() in paintPartTile() If possible, switch views, not parts, that way started Impress text edits don't end as a side-effect. but later there was a fix which doesn't trigger closing of texbox editing when switching parts: commit ce7bf351972bbfd64ca99e8d2fb4c5f77591c9e0 impress: don't exit textbox editing when new slide was added so we don't need that in all cases... to fix issue described above: still switch views instead of parts when possible - but avoid views where editing is active Change-Id: Ib6e66a85b9ca68d6e67e3d9cb17060aa42b85220 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133202 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Pranam Lashkari <lpranam@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133650 Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135196 Tested-by: Jenkins
2022-05-31lok: add more efficient getSelectionType() replacementLuboš Luňák
The getSelectionType() function usually needs to be followed by a call to getTextSelection(), which means having them as two functions leads to duplicating to a number of calls, some of which may be somewhat expensive (pDoc->getSelection() e.g. for Calc builds another ScDocument for the selection, and then getFromTransferrable() converts that to the given format). Change-Id: Ib0a8844701d80eaaff4834dcd3633c09d6b921b1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134603 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-26desktop: fix type of the last argument of lok_preinit_2()Miklos Vajna
This went wrong in commit 5de22d1e559cd0f1f5fa4e247f0ce153710fbeab (Handle "addfont" from Collabora Online, 2022-03-09), running e.g. online.git unit-tiff-load with sanitizers complains: kit/Kit.cpp:2977:9: runtime error: call to function (unknown) through pointer to incorrect function type 'int (*)(const char *, const char *, _LibreOfficeKit **)' I.e. the type in lok_preinit_2() is LibLibreOffice_Impl**, but the type in LokHookPreInit2 is LibreOfficeKit**. Since this is just a pointer, there is no harm in adapting lok_preinit_2() to match. Change-Id: Ib80711a5ae7719a9058151f482aca50c43185348 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134941 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-05-25tdf#149280 modified called after dialog was destroyedCaolán McNamara
just ignore it in that case Change-Id: I8f294acd9ee16d2f9c8662614fac3672f80b3376 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134937 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-24Use o3tl::make_unsigned in some placesStephan Bergmann
...where a signed and an unsigned value are compared, and the signed value has just been proven to be non-negative here Change-Id: I20600d61a5d59d739bc1bee838c0038e4611aec2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134875 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-23sw content controls, picture: add LOK APIMiklos Vajna
- send a LOK_CALLBACK_CONTENT_CONTROL callback with action=change-picture when a file picker should be shown - extend lok::Document::sendContentControlEvent() to be able to replace the placeholder with the selected URL - update gtktiledviewer to work with these Change-Id: Ifb3750803885fc09fc82905b0cf85b2b8ca06e77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134750 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2022-05-17add truncate-multiline to match vcl defaultCaolán McNamara
Change-Id: Ic3e8840bd124eacdcd30182a584568d5ee0081fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134387 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-13sw content controls, dropdown: add LOK APIMiklos Vajna
- expose the available list items in a new "items" key of the LOK_CALLBACK_CONTENT_CONTROL callback - add a new lok::Document::sendContentControlEvent() function to be able to select a list item from the current drop-down - add a new listbox to the gtktiledviewer toolbar to select a content control list item when the cursor is inside a dropdown - add tests for the array API of tools::JsonWriter Change-Id: I47f1333a7815d67952f7c20a9cba1b248886f6dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134256 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2022-05-09osl::Mutex->std::mutex in desktop::AcceptorNoel Grandin
Change-Id: I450734e615c4c214f18641a3ac79f6810d98922c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134030 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-05use more o3tl::getTokenNoel Grandin
found by inspecting call sites of OUString::getToken Change-Id: I4269c7476c7aa46fac39528227e350568f0eb34a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132644 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-05Just use Any ctor instead of makeAny (Linux, sequel)Stephan Bergmann
Change-Id: Idcf537a838bb0e47cfa31db8bc09e477b277ee37 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133875 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-05use more string_viewNoel Grandin
found by examining the call sites of OString::getToken which means I needed to add a new o3tl::equalsAscii function Change-Id: I7dc0ea1cf5ce8090a708d44f2cf7c938fa200c5f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133826 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-04Just use Any ctor instead of makeAny in desktopStephan Bergmann
Change-Id: Ieca85ea1b822ffa80420ed1cb6950bdedd15d000 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133828 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-03add o3tl::matchIgnoreAsciiCaseNoel Grandin
Change-Id: Iad8e1ed256d84808404bf20ed7a16b05b3db5818 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133753 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-01use more string_view in variousNoel Grandin
found by examining uses of OUString::copy() for likely places Change-Id: I6ff20e7b273ad6005410b82719183c1122f8c018 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133617 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-30jsdialog: used for formulabarSzymon Kłos
- do not block painting - use welded wrappers to send JSON - don't send tunneled dialog Change-Id: I54c3cd02ab63bad4a50a3623a32f13b0c94a3595 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132757 Reviewed-by: Mert Tumer <mert.tumer@collabora.com> Tested-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133651 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2022-04-29use more string_view in INetURLObjectNoel Grandin
Change-Id: I4462f7cf4740fa4d1b129d76a0775f4250f41bbd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133555 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-26cid#1504268 Silence false data race condition warningStephan Bergmann
Change-Id: I058a0f9d2e3c7434b5dc742c82067cb97c6102d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133425 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-04-25tdf#126672 Add search field to extension managerSamuel Mehrbrodt
Change-Id: Ie5c44e79cff236c5d306c34492a5c6c789d6fb60 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133381 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2022-04-25Update to glade 3.38.2Samuel Mehrbrodt
Change-Id: Ia57eef82cd74e14aa9f09143dcc0e5101eab9949 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133380 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2022-04-21Drop special-casing for Chart's sidebar property deckMike Kaganski
Introduced in commit b33b2afe6a8b4224450da7c686beb81dbf5cd24a Author Markus Mohrhard <markus.mohrhard@googlemail.com> Date Thu Jul 09 20:39:06 2015 +0200 big step towards real chart sidebar later in commit da57c32c5cb27eee38e32d10232b31d459c399df Author Tor Lillqvist <tml@collabora.com> Date Fri Feb 28 17:02:30 2020 +0200 tdf#130348: Add special case for ChartDeck, too and then in commit ff23d87cb00388095a94b90e061564fc179e1823 Author Mert Tumer <mert.tumer@collabora.com> Date Fri May 08 17:23:12 2020 +0300 mobile: fix calc chart wizard properties is not shown The normal PropertyDeck can host all the chart-specific panels, and the other decks that had "all" application context, but are not needed for charts, have their context fixed. This cleanup is needed for a following introduction of sidebar in Math. Change-Id: I5bb24d52b8dec2133213d7dddfeb91359ed4cb4b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133262 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-04-21rhbz#2075918: Join ExtensionCmdQueue::ThreadStephan Bergmann
...so that it can't still run when the main thread is already in DeInitVCL, and this thread would crash with SIGSEGV at > #6 0x00007fe79001ac74 in dp_gui::TheExtensionManager::modified (this=<optimized out>) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/gui/dp_gui_theextmgr.cxx:498 > #7 0x00007fe790834a0b in operator() (__closure=<optimized out>, xListener=...) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/manager/dp_extensionmanager.cxx:1416 > #8 cppu::OInterfaceContainerHelper::forEach<com::sun::star::util::XModifyListener, dp_manager::ExtensionManager::fireModified()::<lambda(const com::sun::star::uno::Reference<com::sun::star::util::XModifyListener>&)> > (func=..., this=<optimized out>) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/include/cppuhelper/interfacecontainer.h:292 > #9 dp_manager::ExtensionManager::fireModified (this=0x5613a450e050) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/manager/dp_extensionmanager.cxx:1414 > #10 0x00007fe79082d907 in dp_manager::ExtensionManager::activateExtension (this=0x5613a450e050, identifier=..., fileName=..., bUserDisabled=<optimized out>, bStartup=<optimized out>, xAbortChannel=..., xCmdEnv=...) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/manager/dp_extensionmanager.cxx:425 > #11 0x00007fe790830b5f in dp_manager::ExtensionManager::addExtension (this=0x5613a450e050, url=..., properties=..., repository=..., xAbortChannel=..., xCmdEnv=...) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/manager/dp_extensionmanager.cxx:721 > #12 0x00007fe79002d628 in dp_gui::ExtensionCmdQueue::Thread::_addExtension (bWarnUser=<optimized out>, rRepository=..., rPackageURL=..., rCmdEnv=..., this=0x5613a4753490) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx:870 > #13 dp_gui::ExtensionCmdQueue::Thread::execute (this=0x5613a4753490) at /usr/src/debug/libreoffice-7.3.2.2-1.fc36.x86_64/desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx:744 (Which can apparently happen when you quit/restart LO quickly enough after installing an extension through "Tools - Extension Manager...") The join was missing ever since the code's introduction in f167d090345c9c7950665e50006aff4fc0ace078 "INTEGRATION: CWS extmgrui01" (there originally was an unused stopAndWait that would have joined, but which got removed in 0014f10d9237e82357e11aedecca817f67827536 "#i105556#: remove unused code", but there doesn't appear to be at least any obvious reason why joining in ~ExtensionCmdQueue should cause problems (at least with the recent fixes 2dce6754355a06e567427c39154d8747538864b1 "Reliably stop ExtensionCmdQueue::Thread::execute" and 057f504e6518d1cefd141713c98a15cf9160e676 "Use the sander std::condition_variable semantics in ExtensionCmdQueue::Thread".) Change-Id: Iaad47fb77feed529dadf230088e1cb8ffccc80c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133248 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-04-21Use the sander std::condition_variable semantics in ExtensionCmdQueue::ThreadStephan Bergmann
This avoids the need for the tricky osl::Condition::reset call. Change-Id: Id441fe6be42409fa43624bc0c1cbc8a62462d3e9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133240 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-04-21Reliably stop ExtensionCmdQueue::Thread::executeStephan Bergmann
...even if nSize == 0 Change-Id: I624a5958d0826aad70277af6291f62d31ced6798 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133236 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-04-20Fix regression in the iOS app (and possibly the Android and GTK apps)Tor Lillqvist
The problem was caused by my remote font downloading changes. We need to be more careful in lo_initialize() and libreofficekit_hook_2() to distinguish whether the code is called from "normal" Online (with "pre-initialisation" through lok_preinit_2()) or otherwise, for instance the iOS app, where not pre-initialisation is done. Sadly, this fix makes state handling in init.cxx even more complex with one more static Boolean flag. Change-Id: I2a8fa96740eb79725aa162cf7adc86d49a8ba603 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133175 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133196 Tested-by: Jenkins
2022-04-19Fix heap-use-after-freeStephan Bergmann
...when dp_gui::ExtensionRemovedListener::disposing (desktop/source/deployment/gui/dp_gui_extlistbox.cxx) calls > m_pParent->removeEntry( xPackage ); on an already destroyed m_pParent in e.g. the following scenario: In an installation with some bundled extensions (e.g., --enable-ext-ct2n), "Tools - Extension Manager...", deselect "Display Extensions - Bundled with LibreOffice", "Close", "File - Exit LibreOffice". It appears the issue was present ever since at least 051f7b163fa4bf1917fb3db98fed2a6a932a827e "jl152#i77196# Use ExtensionManager instead of PackageManager" Change-Id: I446cba382103828b97a2b1db9fa8afc207b73bc7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133180 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-04-19new loplugin:stringviewvar looks for OUString vars that can beNoel Grandin
... that can be string_view Change-Id: I0ddf66725e08b58e866a764f57200dd188b9f639 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133066 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-17loplugin:stringviewparam convert methods using copy()Noel Grandin
which converts to std::string_view::substr() Change-Id: I3f42213b41a97e77ddcc79d84d512f49d68ca559 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132729 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-15lok: report state for sparkline UNO commandsTomaž Vajngerl
Change-Id: Ic1e8464ec97ef91f631944dbaa3de0e5bff26c89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133006 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-04-14lok: send status update for .uno:SplitCellSzymon Kłos
Change-Id: Ic972d3ff3334f4c3a507868a95ac955c9ffbc614 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132585 Reviewed-by: Mert Tumer <mert.tumer@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132871 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2022-04-13Clean up O[U]StringBuffer ctors taking a length parameterStephan Bergmann
For !LIBO_INTERNAL_ONLY, go back to the state before d91d98a53612a972de368186415aa48698e074d9 "fix gcc-4.0.1 and/or 32bit build for string literals" of having just a sal_Int32 overload. (For !LIBO_INTERNAL_ONLY, the current state was confusing, as the existence of further overloads depended on __cplusplus >= 201103L.) And for LIBO_INTERNAL_ONLY: * Have overloads for all integral types, with an assert checking that they do not use out-of-bounds length arguments. (The std::make_unsigned_t dance in the assert is needed to avoid signed/unsigned mismatch warnings as seen at least with MSVC.) This removes the need for explicitly casting arguments that are larger than (unsigned) int. (And I cleaned up two such places that I had become aware of with the abandoned previous attempt <https://gerrit.libreoffice.org/c/core/+/132825> "Let O[U]StringBuffer ctors take sal_Int32 length parameters"; there may be more places to clean up, though.) * Have deleted overloads for all integral types that are not actually integer types. (This excludes signed char and unsigned char, as at least > OUStringBuffer aBuf( rToken.GetByte()); in ScTokenConversion::ConvertToTokenSequence in sc/source/ui/unoobj/tokenuno.cxx does a legitimate call with an argument of type sal_Int8 aka signed char.) Change-Id: I2df77429f25b74f19cc3de5064e6fd982e87b05e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132951 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-04-13Follow-up fix to Collabora Online "addfont" handling: avoid assertion failureTor Lillqvist
Change-Id: Ib75954a39d515088dbd432d0aa0ca5893194ecc6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132970 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2022-04-13Handle "addfont" from Collabora OnlineTor Lillqvist
We use the AddTempDevFont() API to add a new font. Sadly there is no corresponding way to remove such a temporarily added font. Change-Id: I6fe61919daa5af29e964cec1caf7293aefa8ea4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132948 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2022-04-13loplugin:stringviewparam whitelist some more functionsNoel Grandin
for which we have o3tl:: equivalents Change-Id: I4670fd8b703ac47214be213f41e88d1c6ede7032 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132913 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-13Update remaining DevGuide wiki links.Ilmari Lauhakangas
My Kate editor decided to do some whitespace cleanup, but maybe it's fine as the main changes are not targeting functional bits anyway. Change-Id: I5292e77e43055f94a6256a7f72d49fd59287d194 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132928 Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2022-04-12loplugin:stringview more o3tl conversionNoel Grandin
look for call sequences that can use string_view and the new o3tl functions in o3tl/string_view.hxx Also add a few more wrappers to said #include file Change-Id: I05d8752cc67a7b55b0b57e8eed803bd06bfcd9ea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132840 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-11loplugin:stringview add check for getToken().toInt32Noel Grandin
where we can convert that to o3tl::toInt32(o3tl::getToken( and avoid the heap allocation of a temporary string Change-Id: Ib11c19c6e6cdc0de3e551affd3578d181e292de4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132810 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-10loplugin:stringview check for getToken and trimNoel Grandin
since we now have o3tl versions of those that work on string_view. Also improve those o3tl functions to support both string_view and u16string_view Change-Id: Iacab2996becec62aa78a5597c52d983bb784749a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132755 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-08loplugin:stringviewparam convert methods using trimNoel Grandin
for which we add a new o3tl::trim method Change-Id: I9d37b6264eea106aa2f3502bd24b8cccf7850938 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132658 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>