summaryrefslogtreecommitdiff
path: root/desktop
AgeCommit message (Collapse)AuthorFilesLines
2024-01-03Drop now unused SvtSlideSorterBarOptions classGabor Kelemen1-2/+0
Change-Id: I9db309b15e490c9bd03e767c192ba364a4ffe214 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161452 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-01-03tdf117100: do not attempt to re-install extensions on restartJustin Luth3-0/+13
A common way to install extensions is to simply double-click on them in the OS's file browser. But in this case the reload still contains the extension in the cmdline and thus it "opens" the extension again and asks to re-install. So just eliminate OXTs from the commandline if OfficeRestartInProgress. If multiple OXTs are provided on the commandline, two things happen: -LO crashes (with an assert) -both extensions are successfully installed before restart is requested. In both cases removing ALL extensions during restart is appropriate. Prior to this patch, OfficeRestartInProgress was not actually used AFAICS. Mike Kaganski laid out lots of good criteria for this patch 1. After restart, user can still manually install an extension: YES 2. A restart after a restart should still inhibit extensions: YES 3. Must no interfere is user choses to "restart later": YES 4. It works with a clean profile (rm -r instdir/user): YES This implementation is closest to his suggested > Variant 4. Cleanup all fileopen/print arguments from the guards > that manage restarts (e.g., soffice.exe on Windows), so that > when restarting, they would not repeat using those arguments again. > Problem: first launch of soffice.bin that initializes user profile: > restart after this should repeat all the command line arguments. Change-Id: I2460cb31be0c6f3e10cbb5b200cf67839cbd822a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161549 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-02lok: import Work path from LOK_WORKDIRSzymon Kłos1-0/+8
Change-Id: If0c9727f53c1c4dfb78d1ccbd6b3ff602268bbf7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160156 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161059 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2024-01-01Replace "size() != 0 with !empty()" (desktop)Julien Nabet1-1/+1
Change-Id: I164e29ed02fc4abf7a5b03ca0c391fb46b60e4f4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161483 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-12-30SvtAccessibilityOptions no longer loads settingsGabor Kelemen1-2/+0
Change-Id: Ia7404122029b6b7c6fe7ff879bb1143b3419fc32 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161239 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-12-30cid#1546349 COPY_INSTEAD_OF_MOVECaolán McNamara1-2/+1
and cid#1546236 COPY_INSTEAD_OF_MOVE cid#1546126 COPY_INSTEAD_OF_MOVE cid#1546042 COPY_INSTEAD_OF_MOVE Change-Id: I24b60d855f564ba8551501fc1dc614b24d5505c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161440 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-28In readonly mode, we restrict many events like click.Gökay Şatır2-1/+22
In readonly mode, Online users need to be able to click on a hyperlink and get the related info. For this purpose, this PR adds a new function template that sends the hyperlink info if there is any at the clicked position. I will send the implementation with the next commit. Signed-off-by: Gökay Şatır <gokaysatir@collabora.com> Change-Id: I886ea22a7097aac73ade0da78a88ddfc95ad819c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160022 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161372 Tested-by: Jenkins
2023-12-27tdf#158803 Remove unused imports from desktopBogdan B2-4/+0
Used pyflakes to find unused imports from desktop module. Then, removed those unused imports. Change-Id: Iccc0661ed586a717f4e5c69c238cbf70d6de0b79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158820 Tested-by: Hossein <hossein@libreoffice.org> Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
2023-12-21Remove DeleteItemOnIdlexArmin Le Grand (allotropia)1-10/+7
There are some CrashReports in 7.6 which have DeleteItemOnIdle on the stack, but there is nothing reproducable. So I took a look... I first thought it's a MCGR regression, due to classes on the stack. But the Item involved is just random, can happen with any Item. Then I thought it may have to do with ITEM refactorings, but it happens with DeleteItemOnIdle involved, so also not the case. I already saw DeleteItemOnIdle when doing these and qualified as 'hack' in the way. already It is only on Windows and DeleteItemOnIdle is involved. This again (took a deeper look now) is an old hack to keep an SfxPoolItem 'alive' for some 'time'. For that, it triggers an async reschedule which then deletes the Item when being called. If the Item will be used after that is pure coincidence - seems to work in most cases. It seems as if for Windows the timing slightly changed for some scenarios, so a reschedule is too early. This can happen with this hack anytime. DeleteItemOnIdle is used in scenarios where SfxPoolItem* is e.g. returned, but is *not* anchored, so e.g. not member of an SfxItemSet. Or in short: Lifetime is not safe. DeleteItemOnIdle exists since 1st import, but was changed to AsyncEvent ca. 4 months ago (see 57145acf9ec47c23e307b7a5c0029d21d937cc35), so that may have caused it. It is possible that these errors happen on Windows since then. Before something more complicated was used to delete it late, but surely also not really safe. Due to ITEM refactor I have the knowledge/tooling to solve this. It will not be a 1-5 lines fix, but it is a hack and in the way for further ITEM refactor anyways. What we have nowadays is a SfxPoolItemHolder -> it's like an SfxItemSet for a single Item. It safely holds/ controls the lifetime of an SfxPoolItem. It is already used in quite some places. It helps to solve many hacks, also the ones putting Items directly to the Pool - due to there never was an alternative for that. In principle the ItemPool/ItemSet/Item paradigm was never complete without SfxPoolItemHolder. Thus I started to fix that (and remove that hack for good, sooo many changes over the years, sigh), but as said is not straightforward. Will have to change retvals of involved stuff to SfxPoolItemHolder - it's just two pointers and designed to be copied (one is a Pool, needed to cleanup when destructing). CopyConstruct/destroy just counts the RefCnt up/down, so cheap. 1st version compiling, let's check on gerrit... Corrected one error in QueryState for securitypage, also added some security features/asserts. Change-Id: Ida49fd35ca88ead84b11d93e18b978cb9e395090 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161083 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2023-12-20Revert "updater: check every 12 hours for updates for now"Stephan Bergmann1-1/+1
This reverts commit bb5622adc5db348efcc9a6f41d19de9f00a367dd, going back to a less aggressive 7 day period for now. Change-Id: I439a49f3ca6761ef17ca2b92d395b0de5c400197 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161050 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-19Improve --enable-online-update-mar Windows MOZ_MAINTENANCE_SERVICE featureStephan Bergmann1-9/+17
To get the MOZ_MAINTENANCE_SERVICE mode going at all, update.status needs to contain a "pending-service" token. For Mozilla, code in its toolkit/mozapps/update/UpdateService.sys.mjs takes care of writing that. For us, lets always write that in update_checker() (even on Linux, where it's apparently harmless). Then, the MOZ_MAINTENANCE_SERVICE code is rather picky with its various sanity checks: Among other things, it expects argv[0] to be a full path to the updater executable, and it expects the update.mar (and its status and log files) to be in a directory hierarchy named updates/0/ rather than patch/. So get all that fixed in desktop/source/app/updater.cxx. And patch in external/onlineupdate/lo.patch where it expects to find the updater executable (just updater.exe vs. our program/updater.exe). And we shouldn't interfere with the upstream Mozilla maintenance service, so also rename that in external/onlineupdate/lo.patch. And `update_service install` wants to read version resources from the update_service.exe, so provide that (via gb_Executable_add_default_nativeres). Also, `update_service install` wants to read a MozillaMaintenanceDescription value from an updater.ini, so provide one (with contents of that value inspired by Mozilla's browser/locales/en-US/updater/updater.ini). As we now have an updater.ini anyway (and which apparently works fine with Unix line ends on both Linux and Windows), also use it on Linux and drop the onlineupdate/source/update/updater/progressui_gtk.cpp again from external/onlineupdate/lo.patch. And update external/onlineupdate/README.md how to manually execute that test against an updater.ini. Change-Id: I0e3e5e5311be61e1224cda700af2e5d751113a99 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160996 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-19cid#1557601 COPY_INSTEAD_OF_MOVECaolán McNamara1-2/+2
and cid#1546498 COPY_INSTEAD_OF_MOVE cid#1546384 COPY_INSTEAD_OF_MOVE cid#1546376 COPY_INSTEAD_OF_MOVE cid#1546374 COPY_INSTEAD_OF_MOVE cid#1546373 COPY_INSTEAD_OF_MOVE cid#1546368 COPY_INSTEAD_OF_MOVE cid#1546365 COPY_INSTEAD_OF_MOVE cid#1546356 COPY_INSTEAD_OF_MOVE cid#1546340 COPY_INSTEAD_OF_MOVE cid#1546266 COPY_INSTEAD_OF_MOVE cid#1546236 COPY_INSTEAD_OF_MOVE cid#1546188 COPY_INSTEAD_OF_MOVE cid#1546178 COPY_INSTEAD_OF_MOVE cid#1546166 COPY_INSTEAD_OF_MOVE cid#1546156 COPY_INSTEAD_OF_MOVE cid#1546144 COPY_INSTEAD_OF_MOVE cid#1546143 COPY_INSTEAD_OF_MOVE cid#1546100 COPY_INSTEAD_OF_MOVE cid#1546078 COPY_INSTEAD_OF_MOVE cid#1546041 COPY_INSTEAD_OF_MOVE cid#1546036 COPY_INSTEAD_OF_MOVE cid#1546033 COPY_INSTEAD_OF_MOVE Change-Id: Ib3586d93198992e206baf5c2de5a663d5574aa3c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160979 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-15Avoid "Desktop disposed before terminating it" assertStephan Bergmann1-16/+19
...from Desktop::disposing() at framework/source/services/desktop.cxx:1041, on Windows, when the HAVE_FEATURE_UPDATE_MAR update() call returns true (and soffice.bin is about to exit now), but the css.frame.Desktop service happens to already have been created somewhere else (and will thus be disposed as part of disposing the service manager) but doesn't receive a terminate() call in Desktop::Main(). So reorder the code in Desktop::Main(), moving the HAVE_FEATURE_UPDATE_MAR code after the > xDesktop = css::frame::Desktop::create( xContext ); so that we have something to call > xDesktop->terminate(); on in this scenario. Change-Id: Iee5b6eeece33d5a27cadb94a7da0d26aa1492e91 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160831 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-15-Werror,-Wunused-resultStephan Bergmann1-1/+1
...caused by typo in previous 58bfd8f982950566018f77ce8895963d914058f8 "Fix backward vs. forward slashes on Windows" Change-Id: Ibd1967688c6ab4c962818595d435c7f821ad3d64 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160820 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-15Fix backward vs. forward slashes on WindowsStephan Bergmann1-2/+10
Change-Id: I24771a526848901ccedb15aa5dd7b373fe854977 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160765 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-13Fix number of actual argumentsStephan Bergmann1-3/+5
Change-Id: I04bb3462948aeab24d46ee7ee910fdae8da2aa65 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160674 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-10cid#1545975 COPY_INSTEAD_OF_MOVECaolán McNamara1-2/+2
and cid#1545955 COPY_INSTEAD_OF_MOVE cid#1545954 COPY_INSTEAD_OF_MOVE cid#1545952 COPY_INSTEAD_OF_MOVE cid#1545948 COPY_INSTEAD_OF_MOVE cid#1545943 COPY_INSTEAD_OF_MOVE cid#1545935 COPY_INSTEAD_OF_MOVE cid#1545930 COPY_INSTEAD_OF_MOVE cid#1545928 COPY_INSTEAD_OF_MOVE cid#1545925 COPY_INSTEAD_OF_MOVE cid#1545922 COPY_INSTEAD_OF_MOVE Change-Id: I28d830504337f417829c675b1eb9c763b83b30c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160522 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-09cid#1556778 COPY_INSTEAD_OF_MOVECaolán McNamara1-3/+2
and cid#1546474 COPY_INSTEAD_OF_MOVE cid#1546473 COPY_INSTEAD_OF_MOVE cid#1546469 COPY_INSTEAD_OF_MOVE cid#1546467 COPY_INSTEAD_OF_MOVE cid#1546458 COPY_INSTEAD_OF_MOVE cid#1546448 COPY_INSTEAD_OF_MOVE cid#1546446 COPY_INSTEAD_OF_MOVE cid#1546441 COPY_INSTEAD_OF_MOVE cid#1546424 COPY_INSTEAD_OF_MOVE cid#1546377 COPY_INSTEAD_OF_MOVE cid#1546374 COPY_INSTEAD_OF_MOVE cid#1546352 COPY_INSTEAD_OF_MOVE cid#1546334 COPY_INSTEAD_OF_MOVE cid#1546328 COPY_INSTEAD_OF_MOVE cid#1546310 COPY_INSTEAD_OF_MOVE cid#1546303 COPY_INSTEAD_OF_MOVE Change-Id: I8a43fdd574857ba1d3ec416f23c8269a9a08e12f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160515 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-09Fix Linux --enable-online-update-mar buildStephan Bergmann1-1/+3
...after 13595f6220095d120e13ccb6fbfac1de4c803fe7 "Fix --enable-online-update-mar on Windows" Change-Id: I8e13a3f4234f3b5fb64d606eb3c2c16611dacd33 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160491 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-08Fix --enable-online-update-mar on WindowsStephan Bergmann1-1/+2
The code had apparently rotten a bit, * a wchar_t vs. char16_t confusion in desktop/source/app/updater.cxx * code broken by 926e4e469d0285ee72f8da80f00370b4b3120417 "Rename online updater functions and strcmp relpath" in onlineupdate/source/update/updater/updater.cxx * -DUNICODE missing in some places (so that plain Windows functions resolve to the ...W variant), which had been set centrally in the past IIRC * silencing some warnings like "C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data" (where silencing is the right thing to do for effectively extern code); no sure why those apparently didn't hit in the past, maybe it is all warnings that compilers only started to emit in recent years, or only for recent -std:c++... modes * silencing some "Conversion from string literal loses const qualifier" errors with -Zc:strictStrings-; these hit at least with recent VS 2022 Preview and --with-latest-c++, where -Zc:strictStrings is apparently now on by default Change-Id: I7fe46f5aa2b42fc9c03f24f7f0236512b4d3b936 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160451 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-07simplify and modernise ScopedBitmapAccessNoel Grandin2-3/+2
(*) Make all of it use a "Scoped" paradigm (*) pass by value, no need to allocate on heap (*) make all of the construction go via the *Access constructors, instead of it being some via the constructors and some via the Acquire*Access methods. (*) take the Bitmap& by const& in the constructor, so we can avoid doing const_cast in random places. Change-Id: Ie03a9145c0965980ee8df9a89b8714a425e18f74 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160293 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-06make AlphaMask separate from BitmapNoel Grandin1-1/+1
Having it subclass Bitmap encourages confusion in passing it around, and I need the extra type-safety for my work on merged-alpha Change-Id: I35819f9b8ee609cbdaf865563c78531e397b529b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160235 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-05Fix apparent copy/paste typoStephan Bergmann1-1/+1
...present ever since the code got introduced in 569269078576fa832143ec4f0bf03283ff358f48 "improve the update checker" Change-Id: I38d0efee3cb3f6954dd30690ba9afddf0b66c959 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160348 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-05Make --enable-online-update=mar at least compile again, on LinuxStephan Bergmann2-10/+11
Seen it build (but no idea yet whether it actually would work) with autogen.input including > --enable-online-update=mar > --with-update-config=/home/sberg/lo/update.ini and ~/lo/update.ini containing > [Updater] > ServerURL=TODO > base-url=TODO > certificate-der=/home/sberg/lo/certificate.der > certificate-name=TODO > certificate-path=TODO > channel=TODO > upload-url=TODO and ~/lo/certificate.der containing > TODO Change-Id: Ib40417c09c6454fe9cf678c029a06716415e5cb0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160339 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-11-30Use "set logging enabled on/off" instead of deprecated "set logging on/off"Julien Nabet1-2/+2
With GNU gdb (Debian 13.2-1) 13.2, I noticed this trace on console when using --backtrace Warning: 'set logging on', an alias for the command 'set logging enabled', is deprecated. Use 'set logging enabled on'. Change-Id: Ic03911ea94aff57dee8f594744147302ef01a1ed Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160143 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-11-29Extended loplugin:ostr: desktopStephan Bergmann1-2/+2
Change-Id: I4d61b086c2152fec137fd979677729647bb6fd16 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160123 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-11-20Extended loplugin:ostr: desktopStephan Bergmann10-117/+117
Change-Id: I0c86c1207f906e19c770b71ae1c5daec1c912845 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159717 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-11-18c++20: use std::erase(_if) instead of std::remove(_if)+erase (part 3)Julien Nabet4-17/+12
Change-Id: I1ea95e0bfeaed88b9484403e6796574f1d06f133 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159612 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-11-17cool#6893 pre-init dictionary listNoel Grandin1-0/+2
so the forked processes don't need to Change-Id: Id37688ac88c14679e216cca744563ee75c7c4736 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159561 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-11-14loplugin:unusedfieldsNoel Grandin1-1/+0
Change-Id: I5869e9974c37b1b525d316367f1dc5051d8aa197 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159404 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-11-13Re-introduce build config to version info reported by LOKMike Kaganski1-2/+6
... as an opt-in --with-buildconfig-recorded configure option. This allows to have the data in the admin console, as implemented in commit cbfac11330882c7d0a817b6c37a08b2ace2b66f4 (Send build config (configure options) in LOKit version info JSON, 2022-11-07), when reprobuilds are not required. The default is no build config, which is compatible with reprobuilds. This reverts commit 389def871853c885289627452f40b3ae0a8dabc8. Change-Id: I7f0be489a1c82268d0ca38cb761843c9d432a14b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159344 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-11-11Move user agent initialization to InitCurl_easyMike Kaganski2-2/+2
Places that didn't initialize it previously, would benefit automatically Change-Id: I2f1ff25fc58d9378462072bc92d7b37be2370fc8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159299 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-11-09officecfg,desktop: add Office::Security::Net::AllowInsecureUNORemoteProtocolMichael Stahl3-1/+14
This disables the "com.sun.star.office.Acceptor" UNO service that handles the soffice "--accept" argument; now it can be disabled and locked in configuration by system administrator. Change-Id: I6747a128c3afa6a0cb351766365c8affc0b2614e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159151 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-11-09officecfg,*: add Office::Security::Net::AllowInsecureProtocolsMichael Stahl1-0/+4
By default, unencrypted network connections are allowed. But now it can be disabled, for everything that uses libcurl. Change-Id: I8e103f5a968ace2a19fdb9d6934c9a51b2aeabe4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159011 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-11-09Move "Acceptor already exists" warning to where it belongsStephan Bergmann1-2/+5
036ed05fe35044e49a91e12b6a8e5f36a5b9c4c2 "MWS_SRX644: migrate branch mws_srx644 -> HEAD" had added this with misleading indentation, so it (apparently accidentally) did not pertain to the "aAcceptString was found in the map of already existing acceptors" case. Then 4acffc240b4845beedfe66eaa571b814d65e2e57 "catch by const reference" fixed the indentation, but left the warning at the apparently wrong place. Change-Id: Ie73368bc1294e9b716e3fca75e12363cb6240fdd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159157 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-11-08loplugin:unnecessarygetstr (clang-cl)Stephan Bergmann1-1/+1
Change-Id: Ic0ec1614d48382bb5735a67bf9588657b9ebd521 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159106 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-11-07curl: mitigate migration to OpenSSL on LinuxMichael Stahl2-0/+8
The problem is that curl 8.3.0 removed the NSS backend, so we now have no other choice than to use the bundled OpenSSL on Linux. Currently any curl https connection fails with: CurlSession.cxx:963: curl_easy_perform failed: (60) SSL certificate problem: unable to get local issuer certificate Apparently this requires manually telling curl which CA certificates to trust; there is a configure flag --with-ca-bundle but that is useless as it tries to load the file relative to whatever is the current working directory, and also did i mention that there are at least 3 different locations where a Linux system may store its system trusted CA certificates because ALL ABOUT CHOICE. So add a new header with an init function to try out various file locations listed in this nice blog article and call it from way too many places that independently use curl. https://www.happyassassin.net/posts/2015/01/12/a-note-about-ssltls-trusted-certificate-stores-and-platforms/ TODO: perhaps bundle a cacert.pem as a fallback in case the system chose to innovate by putting its certificates in yet another unexpected place (regression from commit c2930ebff82c4f7ffe8377ab82627131f8544226) Change-Id: Ibf1cc0069bc2ae011ecead9a4c2b455e94b01241 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158915 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-11-05reprobuild: don't include build machine setup in binariesThorsten Behrens1-3/+1
The configure line can leak data from the building machine (path names, level of parallelism etc), which leads to non-reproducible build results. Change-Id: I042afc3d7bad19e8e274147be2a9eb0abcf5436e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158871 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-11-04External data must be checked when parsedMike Kaganski1-10/+14
Change-Id: I8bc5afb29fe22a4b06462a7c61b689c88c41003f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158938 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-11-04LOK: Simplify a bit, and use more compile-time knowledgeMike Kaganski1-583/+548
Bring some C++20 goodness to LOK code: avoid lots of small memory allocations when constructing OUString from ASCII char arrays; use string lengths known at compile and run time; use safer and cleaner syntax. Change-Id: Ia59ed3c8d8ce521880bb8d70b69a64b2d3e73c14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158927 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-11-03tdf#114441 Convert sal_uLong to better data typesAnkit_Jaipuriar1-2/+2
The function getLength() returns a value as sal_Int32, which is then assigned to the variable nLinks. Change-Id: I44d626e2a26e3d9eb15b0884500f0dfddff12e9a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157755 Tested-by: Hossein <hossein@libreoffice.org> Reviewed-by: Hossein <hossein@libreoffice.org>
2023-10-31lok a11y: calc: make possible to enable accessibility for spreadsheetsMarco Cecchetti1-1/+1
Change-Id: I462b2d386b58a895bd4c45d4bd61a049404d3848 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158512 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com> (cherry picked from commit e5481fdaf33a3921ef0624e8a62e28e2f68086da) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158691 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-27lok: a11y: impress: help screen reader to report shape selectionMarco Cecchetti1-0/+2
Refactored LOKDocumentFocusListener::notifyEvent. Implemented 2 new callbacks: - LOK_CALLBACK_A11Y_EDITING_IN_SELECTION_STATE: it says the client if editing in a shape or cell is active or it isn't. - LOK_CALLBACK_A11Y_SELECTION_CHANGED: it says if a shape has been selected/unselected, the name of the shape and text content are sent too for being reported by a screen reader. (cherry picked from commit 76899152ec3d1924cc72d2b869e197a1e34a0a1a) Conflicts: sfx2/source/view/viewsh.cxx Change-Id: I644bcc7daeb8772805688a9bccdabd0631ce0a22 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158562 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-10-23Extended loplugin:ostr: Rewrite some O[U]StringLiteral -> O[U]StringStephan Bergmann6-11/+11
...in include files. This is a mix of automatic rewriting in include files and manual fixups (mostly addressing loplugin:redundantfcast) in source files that include those. Change-Id: I1f3cc1e67b9cabd2e9d61a4d9e9a01e587ea35cc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158337 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-22lok: remove old hack for LanguageTool localesSzymon Kłos1-140/+2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146779 Reviewed-by: Henry Castro <hcastro@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153962 Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154162 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> (cherry picked from commit 9a5329a266bd74abc4794f1fcbae3db07582dbde) Change-Id: I44cc4a5b1a0d92e2b0857cdc1d68c931ab95c0d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158332 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-22lok: LanguageTool provides list of languagesSzymon Kłos1-14/+49
- it sends supported list to the LOK client - disables Spell Checker for locales supported by LanguageTool - duden protocol supports only german - initialize language tool config before usage to fetch correct list of supported languages Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146665 Reviewed-by: Henry Castro <hcastro@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153960 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154161 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> (cherry picked from commit 21d0489a5efa970e975ce1a70dfda2fd9e2c186d) Change-Id: Id0f909fbd2cca47e93ed8632217a45b5087c1ecf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158331 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-22lok: a11y: impress: screen reader support for text shape editingMarco Cecchetti1-1/+1
Now accessibility support can be enabled in Impress. Fixed an issue that prevented to receive accessibility event when a shape text content was edited. Some rectangles overlapping check is performed for excluding not visible shapes from the a11y tree Anyway client and core visible area can differ some shape was wrongly pruned from the a11y tree. The problem has been fixed by not performing the overlapping test in the LOK case: we already do the same for shape area invalidation. In order to avoid the screen reader to report no more focused paragraph we send an empty paragraph to clear the editable area when shape selection state changes. When shape ediding becomes active the text content of the shape is sent to the client. Change-Id: Ia9ee08d060162891725d26efd2aa36e47b38ed50 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157525 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158329 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-19Extended loplugin:ostr: Automatic rewrite O[U]StringLiteral: desktopStephan Bergmann13-26/+26
Change-Id: I896fb07e753bfd7be5df892b1608954ad6a9cece Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158188 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-18LOK: send state of protected cellsPranam Lashkari1-1/+2
Change-Id: I432a3af50b6089faa80a28804d95d816af6cd278 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154936 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-by: Pranam Lashkari <lpranam@collabora.com> (cherry picked from commit 5f13751cefd725cb2a38e66c9484046e6141c6c2) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158150 Tested-by: Jenkins
2023-10-16jsdialog: enable Hyperlink DialogSzymon Kłos1-68/+0
- removed old "tunneled window" test for hyperlink dialog which cannot work when using jsdialogs Change-Id: I62b6c568149d4ea4656b23c47f4c79efe61abfb0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156668 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Attila Szűcs <attila.szucs@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157022 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>