Commit graph

498031 commits

Author SHA1 Message Date
Stephan Bergmann
b84ef4d67e Adapt comphelper::ThreadPool to Emscripten's threading needs
...by keeping the worker threads around by default instead of joining and later
re-spawning them; see 5b1df7709d "Document the
Emscripten threads issue".  But lets be cautious and change the bJoin default
only for Emscripten.

Also, cap the thread pool size to MAX_CONCURRENCY=4 and increase to
-sPTHREAD_POOL_SIZE=6.  In an experimental setup where the Emscripten build
starts up with the start center rather than a Writer document, that is just
enough to cover the thread-spawning needs when executing the start center
window's paint task:  Four threads for the comphelper::ThreadPool (used from
within drawinglayer::convertToBitmapEx -> ... ->
BitmapBasicMorphologyFilter::filter), and one each for
configmgr::Components::WriteThread (see e8358d0a0f
"Keep around a single configmgr::Components::WriteThread instance") and
salhelper::TimerManager.

Change-Id: I5b1d0e9dc09f05fb3b679c8dc1c38ee45c61c0f8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171004
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-07-25 13:27:53 +02:00
Noel Grandin
4b6390290f cid#1557678 Check of thread-shared field evades lock acquisition
and

cid#1556287 Check of thread-shared field evades lock acquisition

(1) std::mutex can be initialised at load time, since it is a
single-word object, i.e. no need to use a static function local.
(2) std::mutex is really fast, so no need to use tricky double-checked
locking

Change-Id: Ieb2239908204baaaccfe9d1e0e2c8ed369d108fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170833
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-07-25 13:23:52 +02:00
Regina Henschel
4aa2d5ede1 Related: tdf#162093 TableRef item specifier may occur standalone
also in lexical canner.

Change-Id: Ic265bbd8a0d9baa81039b8d1748c63ad6686bfc2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170989
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2024-07-25 12:57:42 +02:00
Stephan Bergmann
ebada44e9b Read of uninitialized bool
after 426c641976 "tdf#159040: add sign with
default certificate to save dialog", causing

> /sfx2/source/doc/guisaveas.cxx:307:54: runtime error: load of value 190, which is not a valid value for type 'bool'
>     #0 0x7f1ab45ca7d6 in ModelData_Impl::IsSignWithDefaultSignature() const /sfx2/source/doc/guisaveas.cxx:307:54
>     #1 0x7f1ab45957de in SfxStoringHelper::FinishGUIStoreModel(__gnu_debug::_Safe_iterator<std::__detail::_Node_const_iterator<std::pair<comphelper::OUStringAndHashCode const, com::sun::uno::Any>, false, true>, std::__debug::unordered_map<comphelper::OUStringAndHashCode, com::sun::uno::Any, comphelper::OUStringAndHashCodeHash, comphelper::OUStringAndHashCodeEqual, std::allocator<std::pair<comphelper::OUStringAndHashCode const, com::sun::uno::Any> > >, std::forward_iterator_tag>&, ModelData_Impl&, bool, short, com::sun::uno::Sequence<com::sun:🫘:PropertyValue>&, bool, bool, bool, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::uno::Sequence<com::sun:🫘:PropertyValue>&, rtl::OUString) /sfx2/source/doc/guisaveas.cxx:1896:20
>     #2 0x7f1ab45b49b0 in SfxStoringHelper::GUIStoreModel(com::sun::uno::Reference<com::sun::frame::XModel> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::uno::Sequence<com::sun:🫘:PropertyValue>&, bool, SignatureState, bool) /sfx2/source/doc/guisaveas.cxx:1626:12
>     #3 0x7f1ab46b6ac3 in SfxObjectShell::ExecFile_Impl(SfxRequest&) /sfx2/source/doc/objserv.cxx:1096:26
>     #4 0x7f1ab46a2ea4 in SfxStubSfxObjectShellExecFile_Impl(SfxShell*, SfxRequest&) /workdir/SdiTarget/sfx2/sdi/sfxslots.hxx:221:1
>     #5 0x7f1ab343ae1e in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) /sfx2/source/control/dispatch.cxx:254:9
>     #6 0x7f1ab3450745 in SfxDispatcher::Execute_(SfxShell&, SfxSlot const&, SfxRequest&, SfxCallMode) /sfx2/source/control/dispatch.cxx:753:9
>     #7 0x7f1ab34515ab in SfxDispatcher::Execute(unsigned short, SfxCallMode, SfxItemSet const*, SfxItemSet const*, unsigned short) /sfx2/source/control/dispatch.cxx:812:9
>     #8 0x7f1ab3861c1b in SfxDispatchController_Impl::dispatch(com::sun::util::URL const&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&, com::sun::uno::Reference<com::sun::frame::XDispatchResultListener> const&) /sfx2/source/control/unoctitm.cxx:675:46
>     #9 0x7f1ab3864f41 in SfxOfficeDispatch::dispatchWithNotification(com::sun::util::URL const&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&, com::sun::uno::Reference<com::sun::frame::XDispatchResultListener> const&) /sfx2/source/control/unoctitm.cxx:270:16
>     #10 0x7f1a86be9616 in framework::DispatchHelper::executeDispatch(com::sun::uno::Reference<com::sun::frame::XDispatch> const&, com::sun::util::URL const&, bool, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) /framework/source/services/dispatchhelper.cxx:164:30
>     #11 0x7f1a86be84eb in framework::DispatchHelper::executeDispatch(com::sun::uno::Reference<com::sun::frame::XDispatchProvider> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) /framework/source/services/dispatchhelper.cxx:121:16
>     #12 0x7f1a86be9ec4 in non-virtual thunk to framework::DispatchHelper::executeDispatch(com::sun::uno::Reference<com::sun::frame::XDispatchProvider> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) /framework/source/services/dispatchhelper.cxx
>     #13 0x7f1aaea0e879 in unotest::MacrosTest::dispatchCommand(com::sun::uno::Reference<com::sun::lang::XComponent> const&, rtl::OUString const&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) /unotest/source/cpp/macros_test.cxx:94:33
>     #14 0x7f1ad66c521e in ScPDFExportTest::exportToPDFWithUnoCommands(rtl::OUString const&) /sc/qa/extras/scpdfexport.cxx:196:5
>     #15 0x7f1ad66d1e94 in ScPDFExportTest::testUnoCommands_Tdf120161() /sc/qa/extras/scpdfexport.cxx:376:9

during CppunitTest_sc_pdf_export
(<https://ci.libreoffice.org/job/lo_ubsan/3255/>)

Change-Id: If9e1b4b75a430506b999ecff916191ab1d3d58d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171000
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-07-25 12:30:38 +02:00
Julien Nabet
e219fc0ede tdf#162174: fix crash when opening Bullets and Numbering dialog a second time
It seems we must first retrieve the array of values from:
- officecfg::Office::Common::BulletsNumbering::DefaultBullets
- officecfg::Office::Common::BulletsNumbering::DefaultBulletsFonts
before retrieving the value by index.

Change-Id: I9cdf124f73c52f3027ae8e97a73e01e0efb73603
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171003
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-25 12:14:06 +02:00
Tibor Nagy
042c62954b tdf#85677: Add support for Windows touch gestures (panning,zooming)
Change-Id: Ib0243889621663ddb9b6789ede7643d54f06041e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170988
Tested-by: Jenkins
Reviewed-by: Nagy Tibor <tibor.nagy.extern@allotropia.de>
2024-07-25 12:00:17 +02:00
Andrea Gelmini
566fbd5cc3 Fix typo
Change-Id: I465502f90e0ce458f6746efa6e558896f6bea5ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170999
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
2024-07-25 11:15:49 +02:00
Ilmari Lauhakangas
6817badaf2 Update git submodules
* Update helpcontent2 from branch 'master'
  to e35fb29cb092771840ff876bbb4350e7570e1627
  - Related tdf#69192 better placeholder string for command line example
    
    Change-Id: I0a151668cd213906f6a7e523eacac48da8e50b20
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/171001
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
    Tested-by: Jenkins
2024-07-25 11:02:54 +02:00
Julien Nabet
7dc921e225 Related tdf#162136: typo GapWidthSequence instead of GapwidthSequence
Fixes the crash with bt:
8  0x00007fd839b91fef in cppu::OPropertySetHelper::getFastPropertyValue(int) (this=0x5578a9fb8b08, nHandle=-1) at /home/julien/lo/libreoffice/cppuhelper/source/propshlp.cxx:553
9  0x00007fd839b8e1c9 in cppu::OPropertySetHelper::getPropertyValue(rtl::OUString const&) (this=0x5578a9fb8b08, rPropertyName="GapwidthSequence")
   at /home/julien/lo/libreoffice/cppuhelper/source/propshlp.cxx:277
10 0x00007fd7ef4e19e5 in chart::wrapper::SeriesOptionsItemConverter::ApplySpecialItem(unsigned short, SfxItemSet const&)
   (this=0x5578a3989070, nWhichId=77, rItemSet=SfxItemSet of pool 0x5578a9fde810 with parent 0x0 and Which ranges: [(1, 13), (17, 17), (29, 38), (39, 39), (71, 71), (74, 74), (75, 75), (76, 78), (82, 89), (1000, 1012), (1014, 1034), (1177, 1232), (4021, 4076), (10085, 10086), (10932, 10932), (11090, 11090)] = {...})
   at /home/julien/lo/libreoffice/chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx:212
11 0x00007fd7ef4d3939 in chart::wrapper::ItemConverter::ApplyItemSet(SfxItemSet const&)
   (this=0x5578a3989070, rItemSet=SfxItemSet of pool 0x5578a9fde810 with parent 0x0 and Which ranges: [(1, 13), (17, 17), (29, 38), (39, 39), (71, 71), (74, 74), (75, 75), (76, 78), (82, 89), (1000, 1012), (1014, 1034), (1177, 1232), (4021, 4076), (10085, 10086), (10932, 10932), (11090, 11090)] = {...}) at /home/julien/lo/libreoffice/chart2/source/controller/itemsetwrapper/ItemConverter.cxx:186
12 0x00007fd7ef4ba805 in chart::wrapper::DataPointItemConverter::ApplyItemSet(SfxItemSet const&)
   (this=0x5578a3767050, rItemSet=SfxItemSet of pool 0x5578a9fde810 with parent 0x0 and Which ranges: [(1, 13), (17, 17), (29, 38), (39, 39), (71, 71), (74, 74), (75, 75), (76, 78), (82, 89), (1000, 1012), (1014, 1034), (1177, 1232), (4021, 4076), (10085, 10086), (10932, 10932), (11090, 11090)] = {...}) at /home/julien/lo/libreoffice/chart2/source/controller/itemsetwrapper/DataPointItemConverter.cxx:291
13 0x00007fd7ef532167 in chart::ChartController::executeDlg_ObjectProperties_withUndoGuard(std::shared_ptr<chart::UndoGuard>, rtl::OUString const&, bool)::$_0::operator()(int) const
   (this=0x5578a3916fb0, nResult=1) at /home/julien/lo/libreoffice/chart2/source/controller/main/ChartController_Properties.cxx:801

but not the following one:
8  0x00007f06e6d91fef in cppu::OPropertySetHelper::getFastPropertyValue(int) (this=0x561ec293bb88, nHandle=-1) at /home/julien/lo/libreoffice/cppuhelper/source/propshlp.cxx:553
9  0x00007f06e6d8e1c9 in cppu::OPropertySetHelper::getPropertyValue(rtl::OUString const&) (this=0x561ec293bb88, rPropertyName="OverlapSequence")
   at /home/julien/lo/libreoffice/cppuhelper/source/propshlp.cxx:277
10 0x00007f06a4ce19e5 in chart::wrapper::SeriesOptionsItemConverter::ApplySpecialItem(unsigned short, SfxItemSet const&)
   (this=0x561ebb729a90, nWhichId=76, rItemSet=SfxItemSet of pool 0x561ec2921fb0 with parent 0x0 and Which ranges: [(1, 13), (17, 17), (29, 38), (39, 39), (71, 71), (74, 74), (75, 75), (76, 78), (82, 89), (1000, 1012), (1014, 1034), (1177, 1232), (4021, 4076), (10085, 10086), (10932, 10932), (11090, 11090)] = {...})
   at /home/julien/lo/libreoffice/chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx:212
11 0x00007f06a4cd3939 in chart::wrapper::ItemConverter::ApplyItemSet(SfxItemSet const&)
   (this=0x561ebb729a90, rItemSet=SfxItemSet of pool 0x561ec2921fb0 with parent 0x0 and Which ranges: [(1, 13), (17, 17), (29, 38), (39, 39), (71, 71), (74, 74), (75, 75), (76, 78), (82, 89), (1000, 1012), (1014, 1034), (1177, 1232), (4021, 4076), (10085, 10086), (10932, 10932), (11090, 11090)] = {...}) at /home/julien/lo/libreoffice/chart2/source/controller/itemsetwrapper/ItemConverter.cxx:186
12 0x00007f06a4cba805 in chart::wrapper::DataPointItemConverter::ApplyItemSet(SfxItemSet const&)
   (this=0x561ebc2cdd90, rItemSet=SfxItemSet of pool 0x561ec2921fb0 with parent 0x0 and Which ranges: [(1, 13), (17, 17), (29, 38), (39, 39), (71, 71), (74, 74), (75, 75), (76, 78), (82, 89), (1000, 1012), (1014, 1034), (1177, 1232), (4021, 4076), (10085, 10086), (10932, 10932), (11090, 11090)] = {...}) at /home/julien/lo/libreoffice/chart2/source/controller/itemsetwrapper/DataPointItemConverter.cxx:291
13 0x00007f06a4d32167 in chart::ChartController::executeDlg_ObjectProperties_withUndoGuard(std::shared_ptr<chart::UndoGuard>, rtl::OUString const&, bool)::$_0::operator()(int) const
   (this=0x561ec2939c20, nResult=1) at /home/julien/lo/libreoffice/chart2/source/controller/main/ChartController_Properties.cxx:801

Change-Id: I53d8f9130a0a6cc17214c881398a6679a92606cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170902
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
2024-07-25 10:48:46 +02:00
Moritz Duge
f2f1782d23 tdf#161909: Fix resize for cert listings (GtkBox instead of GtkGrid)
- "Certificate Path" dialog (select Mozilla profile for NSS)
  - resizing broken since commit db9e1ef04d
  - also increased default width to account for long filesystem paths
- "Digital Signatures" dialog
- "Select Certificate" dialog
  - resizable=True is the default (Glade removes explicit defaults)
  - Make long translations wrap instead of being cut.

Glade set expand=False and fill=True as defaults inside GtkBox.

Change-Id: I2d7719e83e5162d06d30e25b3e307fa23e0d605e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170694
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-25 10:23:17 +02:00
Moritz Duge
36a5899896 tdf#161909: Fix resizing and behavior for "View Certificate" dialog.
- Set appropriate larger default size.
- Disable editing of details area.
- Add comments to distinguish GPG and X.509 code.

Change-Id: Idcca012c1eef96c6daa78498e85da6f70c97a90f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170004
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-25 10:21:39 +02:00
Pierre F
27e5a74960 Update git submodules
* Update helpcontent2 from branch 'master'
  to 421ecbe5b8f35dc9a50ac6a329662231914132d4
  - clarify + link. tdf#155459
    
    Change-Id: I422016b32edf3d2bf898eb5ef4b1651eb7ee7c0c
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/170360
    Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
    Tested-by: Jenkins
2024-07-25 10:18:18 +02:00
Stephan Bergmann
e8358d0a0f Keep around a single configmgr::Components::WriteThread instance
...instead of joining and later re-spawning one.  This helps with the current
Emscripten setup (see 5b1df7709d "Document the
Emscripten threads issue"), and probably doesn't matter much either way on other
platforms (so just get it in unconditionally).  (Renaming the delay_ member
variable to delayOrTerminate_, to make its overall role more clear.)

(I ran into this when trying to turn the Emscripten build from starting up with
a Writer document to starting up with the start center, and then manually
opening a new Writer document.  The resulting different usage scheme happened to
exhaust our current -sPTHREAD_POOL_SIZE=4 pool quickly, so this is one of
multiple commits to address that.)

Change-Id: I1bd28604b4640d2afad982bfd82b1acee8200e26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170993
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-07-25 09:51:52 +02:00
Pierre F
4a608aa02d Update git submodules
* Update helpcontent2 from branch 'master'
  to 287be903d8fad56a92ee79f88ab4a6b863614459
  - Note on  Cannot toggle edit mode on New (unsaved) Documents. tdf#128836
    
    Change-Id: Ic2d416ec2f9add41958485bfb7b2db375eae432a
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/170882
    Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
    Tested-by: Jenkins
2024-07-25 09:35:08 +02:00
Đoàn Trần Công Danh
b6edb370a1 gtk4: fix -Wmaybe-uninitialized
Despite that we bailed out when both old and new value set,
gcc-13 cannot see that.

Change-Id: Ie727a14bb29a4b1cc304d2ce077c62f72cece19f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170973
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-25 07:52:13 +02:00
Javiya Vivekkumar Dineshbhai
35efb60e20 slideshow: Enable venetian transition for impress
Signed-off-by: Javiya Vivekkumar Dineshbhai <vivek.javiya@collabora.com>
Change-Id: I068864c5b383ca142fd0da8c274c485c3d7399d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170261
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
(cherry picked from commit 379de66f0758cdc1a03811ef497e6fd456a16c4a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170876
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Tested-by: Jenkins
2024-07-25 07:29:30 +02:00
Jim Raykowski
c60dd66d89 tdf#162018 Unexpected loss in focus in the "Manage Changes" window
when adding a change in the document (Track changes mode), round 4

Addresses "situation 4" when a new change makes a change to an entire
previous change or to multiple previously tracked changes.

Change-Id: I02175db6c7bc1258f8e7c05835b05ff79b7d7b83
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170984
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
Tested-by: Jenkins
2024-07-25 01:54:41 +02:00
Jim Raykowski
cac1b706ec related tdf#161717 Use a better approach to determine RedlinData
::pData type

Casting a void* RedlineData::pDate to either a SwRedlineDataParent*
or SwRedlineDataChild* works because of the order and variable types
declared in the SwRedlineDataChild and SwRedlineDataParent classes
match until an OUString is declared in SwRedlineDataParent. That
explains why the non-patched code behaves as expected even though
testing if the entry has children to determine which cast to do is
flawed. Better is to test the iterator depth which is what this patch
does.

Change-Id: I24ca0990a4edbd50a7e3dc5d0be4c5312c240921
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170860
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2024-07-25 01:47:07 +02:00
Eike Rathke
f1f5e9c8d7 Resolves: tdf#162087 TableRef item specifier may occur standalone
This is what
https://learn.microsoft.com/en-us/openspecs/office_standards/ms-xlsx/3d025add-118d-4413-9856-ab65712ec1b0
specifies as  keyword  in

 intra-table-reference = spaced-lbracket inner-reference spaced-rbracket / keyword / ("[" [simple-column-name] "]")

with

 keyword = "[#All]" / "[#Data]" / "[#Headers]" / "[#Totals]" / "[#This Row]"

Change-Id: I52b200aad41d53a49e662d6238576f6f4f0deb37
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170986
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2024-07-25 01:34:32 +02:00
Juergen Funk
e8a271dd53 tdf#160163 reset placeholder in Text field when empty
for all the Text field made a global define
  of the NonBreakSpaces mask

Change-Id: I7107f941ee9008415325aefe5487555d91dbf1ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170596
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-25 00:49:55 +02:00
Andrea Gelmini
ee9da9e3e3 Fix typo
Change-Id: Iec45b32fce6381564f21c79d999a8db9a7757518
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170981
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:36:26 +02:00
Andrea Gelmini
77548ff919 Fix typo
Change-Id: Id89680653dec2edcb0529550d54a50036b736cc9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170982
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:36:07 +02:00
Andrea Gelmini
59c781f29b Fix typo
Change-Id: I582bf693085251725b314b6caab9247650b25c6f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170980
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:35:50 +02:00
Andrea Gelmini
7a369532d4 Fix typo
Change-Id: I78bf0f3c03c190fcb577e5342041330aee15a6d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170983
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:35:29 +02:00
Stephan Bergmann
8cdf186fac Remove bExitWasCalled-handling from confgimgr::Components dtor
That code had been added with 9fa4eff9be
"profilesafe: Enhancements to BackupFileHelper", but it looks dubious:

For one, I cannot find proof for the claim that MSVC would run destructors of
static objects upon _exit.  Building a simple C++ test program

> #include <iostream>
> #include <stdlib.h>
> struct S { ~S() { std::cerr << "hello\n"; } };
> S s;
> void f() { _exit(1); }
> int main() { f(); }

with contemporary MSVC 17.10 and executing it shows no "hello" stderr output
(see
<https://gcc.godbolt.org/#g:!((g:!((g:!((h:codeEditor,i:(filename:'1',fontScale:14,fontUsePx:'0',j:1,lang:c%2B%2B,selection:(endColumn:13,endLineNumber:5,positionColumn:13,positionLineNumber:5,selectionStartColumn:13,selectionStartLineNumber:5,startColumn:13,startLineNumber:5),source:'%23include+%3Ciostream%3E%0A%23include+%3Cstdlib.h%3E%0Astruct+S+%7B+~S()+%7B+std::cerr+%3C%3C+%22hello%5Cn%22%3B+%7D+%7D%3B%0AS+s%3B%0Avoid+f()+%7B+_exit(1)%3B+%7D%0Aint+main()+%7B+f()%3B+%7D%0A'),l:'5',n:'1',o:'C%2B%2B+source+%231',t:'0')),k:32.19670284753087,l:'4',m:100,n:'0',o:'',s:0,t:'0'),(g:!((h:compiler,i:(compiler:vcpp_v19_40_VS17_10_x64,filters:(b:'0',binary:'1',binaryObject:'1',commentOnly:'0',debugCalls:'1',demangle:'0',directives:'0',execute:'0',intel:'0',libraryCode:'0',trim:'1',verboseDemangling:'0'),flagsViewOpen:'1',fontScale:14,fontUsePx:'0',j:1,lang:c%2B%2B,libs:!(),options:'',overrides:!(),selection:(endColumn:1,endLineNumber:1,positionColumn:1,positionLineNumber:1,selectionStartColumn:1,selectionStartLineNumber:1,startColumn:1,startLineNumber:1),source:1),l:'5',n:'0',o:'+x64+msvc+v19.40+VS17.10+(Editor+%231)',t:'0'),(h:output,i:(compilerName:'x86-64+clang+18.1.0',editorid:1,fontScale:14,fontUsePx:'0',j:1,wrap:'1'),l:'5',n:'0',o:'Output+of+x64+msvc+v19.40+VS17.10+(Compiler+%231)',t:'0')),k:67.80329715246913,l:'4',m:100.00000000000001,n:'0',o:'',s:1,t:'0')),l:'2',n:'0',o:'',t:'0')),version:4>).

If there indeed were issues with MSVC and non-standard _exit, a solution might
be to use standard _Exit instead (in FatalError in desktop/source/app/app.cxx).

And for another, when bExitWasCalled was true in
configmgr::Components::~Components, it would still have called
writeThread_->join() (i.e., it would potentially still have called
writeModFile from within configmgr::Components::WriteThread::execute()), but (a)
only after waiting out its full

> delay_.wait(std::chrono::seconds(1));

(because it missed to call configmgr::Components::WriteThread::flush, which
calls delay_.set()), and (b) potentially running into a deadlock because it
called writeThread_->join() with *lock_ locked, which
configmgr::Components::WriteThread::execute wants to lock too.

(I came across this because it got into my way when trying to adapt the
lifecycle of configmgr::Components::WriteThread to the needs of the Emscripten
build.)

Change-Id: Icb4ebf00d1d316b80c29f7bd91b86614ef4ac430
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170940
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-07-24 22:15:30 +02:00
Stephan Bergmann
5b1df7709d Document the Emscripten threads issue
Change-Id: Ia26b48d46283a9528a665eb5028bd5b9bd0dd953
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170972
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-07-24 22:15:08 +02:00
Caolán McNamara
7f135227a9 cid#1556131 COPY_INSTEAD_OF_MOVE
and

cid#1556135 COPY_INSTEAD_OF_MOVE
cid#1556146 COPY_INSTEAD_OF_MOVE
cid#1556164 COPY_INSTEAD_OF_MOVE
cid#1556171 COPY_INSTEAD_OF_MOVE
cid#1556177 COPY_INSTEAD_OF_MOVE
cid#1556181 COPY_INSTEAD_OF_MOVE
cid#1556182 COPY_INSTEAD_OF_MOVE
cid#1556183 COPY_INSTEAD_OF_MOVE
cid#1556192 COPY_INSTEAD_OF_MOVE
cid#1556201 COPY_INSTEAD_OF_MOVE
cid#1556208 COPY_INSTEAD_OF_MOVE
cid#1556215 COPY_INSTEAD_OF_MOVE
cid#1556224 COPY_INSTEAD_OF_MOVE
cid#1556227 COPY_INSTEAD_OF_MOVE
cid#1556228 COPY_INSTEAD_OF_MOVE
cid#1556238 COPY_INSTEAD_OF_MOVE
cid#1556246 COPY_INSTEAD_OF_MOVE
cid#1556247 COPY_INSTEAD_OF_MOVE
cid#1556288 COPY_INSTEAD_OF_MOVE
cid#1556293 COPY_INSTEAD_OF_MOVE
cid#1556305 COPY_INSTEAD_OF_MOVE
cid#1556310 COPY_INSTEAD_OF_MOVE
cid#1556317 COPY_INSTEAD_OF_MOVE
cid#1556321 COPY_INSTEAD_OF_MOVE
cid#1556322 COPY_INSTEAD_OF_MOVE
cid#1556331 COPY_INSTEAD_OF_MOVE
cid#1556339 COPY_INSTEAD_OF_MOVE
cid#1556342 COPY_INSTEAD_OF_MOVE
cid#1556351 COPY_INSTEAD_OF_MOVE
cid#1556358 COPY_INSTEAD_OF_MOVE
cid#1556370 COPY_INSTEAD_OF_MOVE
cid#1556379 COPY_INSTEAD_OF_MOVE
cid#1556390 COPY_INSTEAD_OF_MOVE
cid#1556423 COPY_INSTEAD_OF_MOVE
cid#1556532 COPY_INSTEAD_OF_MOVE
cid#1556561 COPY_INSTEAD_OF_MOVE
cid#1556662 COPY_INSTEAD_OF_MOVE
cid#1556704 COPY_INSTEAD_OF_MOVE
cid#1556730 COPY_INSTEAD_OF_MOVE
cid#1556988 COPY_INSTEAD_OF_MOVE
cid#1557071 COPY_INSTEAD_OF_MOVE
cid#1557081 COPY_INSTEAD_OF_MOVE
cid#1557177 COPY_INSTEAD_OF_MOVE

Change-Id: I2c723f0fe9a4eefa62a68f47049ed690d06eb0ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170932
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-24 22:12:32 +02:00
Xisco Fauli
e22dfeef0c related tdf#161865: fix another ODR violation
Change-Id: I082ad91c0c060e7231d0af15868960cb2399b088
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170971
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-07-24 21:39:56 +02:00
Patrick Luby
4bbdb2f071 tdf#162171 alpha mask pixels are now alpha instead of transparency
Starting with commit 81994cb2b8,
alpha masks now store alpha instead of transparency values.

Change-Id: I74d7a536e0ae1aea3b462d660ae3e4b815cf89c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170968
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
2024-07-24 20:58:16 +02:00
Xisco Fauli
6ddd8287d2 libxml2: upgrade to 2.13.3
it fixes CVE-2024-40896

Downloaded from https://download.gnome.org/sources/libxml2/2.13/libxml2-2.13.3.tar.xz

Change-Id: Icba636106cc9d1f096f5479bd80d5e30712c2e6a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170975
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2024-07-24 20:32:17 +02:00
Justin Luth
926372b8de tdf#157952 sw content controls, drop-down: remove when obsolete
One place that was missed was when moving from one content control
to another (for example, using the tab key).

Change-Id: I62a3af2a5a7036aaac605d592c244a58f5b65a12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170967
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2024-07-24 20:01:18 +02:00
Michael Weghorn
84929c43df tdf#155447 qt a11y: Map TEXT_FRAME role to QAccessible::Pane
This makes the "sentence" drawing area from the spelling
dialog (cui/uiconfig/ui/spellingdialog.ui) show up with
role panel instead of "unknown" in Accerciser when using
the qt6 VCL plugin.

This is the same as with gtk3, where the `TEXT_FRAME` role
is mapped to `ATK_ROLE_PANEL`.

Change-Id: I41133c51c64749ccd808cb675fe647a0daefac33
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170944
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 18:20:52 +02:00
Xisco Fauli
0435460d22 nss: upgrade to 3.102
Downloaded from https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_102_RTM/src/nss-3.102-with-nspr-4.35.tar.gz

Change-Id: I0a045b91deb4540771aade2c7965dafaa269f762
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170943
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-07-24 17:54:12 +02:00
Armin Le Grand (Collabora)
1b74b95bba CairoSDPR: Improve animated tiled fills
Up to now these needed to be decomposed to be
rendered and did not support animation. I already
added animation, but that was a compromize.
Done that now in the correct way, so that animation
is possible and can be directly rendered using
a FillGraphicPrimitive2D if wanted, including one
extra layer of alpha, too.
This will also enhance other primitive processors,
but of course most those that do handle that now
directly, so CairoPixelProcessor2D does that.
Note that it does not need to support animation
in any way (that is part of the primitive stack),
but just direct tiled rendering.

Change-Id: I8860098dfb3f2369e361579cf1deea7c67b662b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170937
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-07-24 17:00:56 +02:00
Noel Grandin
ab704c00fd tdf#161865 Base Table Design View not editable
we had an ODR violation with a constant named PROPERTY_DATASOURCE which
is also defined inside dbaccess

regression from
commit bacb92275c
"add dbu to --enable-mergelibs=more"

Change-Id: I315ba82e0bccc49e01bd6a438b7e671b971410dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170939
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-07-24 16:43:42 +02:00
Caolán McNamara
3e99775689 ofz#70572 build failure
Change-Id: Ib313e1c6ace119e1480587e2bd519a5841e51a4b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170941
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-24 16:06:42 +02:00
Jonathan Clark
15d92cd882 tdf#157390 Fix overlapping CJK characters in PDF export
This change fixes a vertical text glyph metrics regression that was
introduced while migrating PDF export to use metrics from HarfBuzz. The
root cause was incorrectly caching CJK glyph heights in place of widths
for vertical text.

Change-Id: I8426fc902658d1c045b42e760028f26b09eeef93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170935
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2024-07-24 15:05:59 +02:00
Michael Weghorn
f3d7d24b99 tdf#161501 icon choice ctrl: Actually set text colors for non-selection
commit 24103bdf3f
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Jul 18 08:58:10 2024 +0200

        tdf#161501 icon choice ctrl: Use tab text colors

        Instead of using the generic window or highlight
        text color, use the specific text colors for tabs
        when painting entries of the vertical tab control,
        similar to how it's done for the non-vertical
        tab control (see `TabControl::ImplDrawItem`).

        (...)

had added code to set the font color for the different
states of a vertical tab control item, but as this
was in the `if (bSelected)` block, only the one
for selection was actually used, so the other cases
were consequently removed in

    commit a4befb29f3
    Author: Caolán McNamara <caolan.mcnamara@collabora.com>
    Date:   Sat Jul 20 19:20:13 2024 +0100

        cid#1610738 Logically dead code

again.

Thanks to Chris Sherlock for pointing this out!

Reintroduce setting colors, but drop the `bSelected`
condition altogether. Drop explicitly setting a fill
color, which the implementation for the non-vertical
tab control in `TabControl::ImplDrawItem` also doesn't
do and which would e.g. result in an odd grey background
for non-selected entries when used unconditionally with
the gen VCL plugin.

I see no visual difference with or without this commit
in place on Windows or for the gen VCL plugin or the kf5 VCL
plugin with the Breeze style on Linux, but other theming/styles
could depend on according colors being set.

Change-Id: Iccf7170f2de04cead23607977ac8cf7acbc471f3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170926
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 14:45:01 +02:00
Michael Weghorn
87671a7250 tdf#161501 icon choice ctrl: Stop hover-highlight when mouse leaves
When the mouse leaves the vertical tab bar,
unset the entry to highlight as mouse-hovered,
as the previously one no longer is when the
mouse is outside the area of the tab bar.

This fixes the issue of the previously
mouse-hovered entry still being painted
with mouse-hover feedback when slowly moving the
mouse to the right away from an entry in the
"Insert" -> "Page Style" dialog with gen or kf5
at least, as shown in attachment 195467
of tdf#161501.

Change-Id: I646cab54f5031ed6a8aa88d4a162bb3a2456eec4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170923
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 14:44:54 +02:00
Michael Weghorn
b3626b0142 tdf#161501 icon choice ctrl: Drop WB_HIGHLIGHTFRAME
It is always set, so no need to have an
icon choice control specific window bit to
specify whether or not to highlight the
currently mouse-hovered entry. Just always
do it.

Change-Id: Ib259b6b1576e1968221c4f98661a3a93e600c93b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170922
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 14:44:46 +02:00
Xisco Fauli
282da64a8f curl: upgrade to 8.9.0
Downloaded from https://curl.se/download/curl-8.9.0.tar.xz

Change-Id: Id8198dcc73e1679e8f672459b19d84606ae3e762
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170934
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2024-07-24 14:32:24 +02:00
Justin Luth
3974c4748b tdf#138093 tdf#131722 docx import: sdt lost first date character #2
While GetIsDummyParaAddedForTableInSection() is true
for the entire section, it should only be used
against GetIsFirstParagraphInSection()
where the dummy para exists.

make CppunitTest_sw_ooxmlexport19 CPPUNIT_TEST_NAME=testTdf138093B

Change-Id: I457c0aa25eb7bd086c5c15bd889d9cd89c51db95
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170921
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2024-07-24 13:52:00 +02:00
Justin Luth
62974cf6a8 tdf#158661 docx import plaintext sdt: remove unnecessary goRight
This fixes a 24.2 regression
from commit 5082d50d24
   writerfilter: use content controls for text in block SDTs

which was made even worse
with 24.2 commit 7c4dba1def.

Initially, the starting mark was made as soon as SdtContent was seen.
After that, you could get a w:tbl, or a w:tc which could trigger
the start of a table, and potentially add a dummy paragraph
which needed to be jumped over (at least for the first SDT,
but not for subsequent SDTs).

In the second patch, the starting mark was made just before
the text was appended, so all of the cell/table creation
has already been completed, so there is no more need to
jump over any dummy paragraphs, even for the first table.

Affected unit tests were
- table-start-2-sdt.docx
- sdt-company-multipara.docx
- paragraph-sdt.docx

make CppunitTest_sw_ooxmlfieldexport CPPUNIT_TEST_NAME=testParagraphSdt
make CppunitTest_sw_ooxmlfieldexport \
    CPPUNIT_TEST_NAME=testTdf158661_blockSDT

Change-Id: I4a8359cec27f88f6a2fc0464aa240b523a279e42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170920
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2024-07-24 13:50:55 +02:00
Christian Lohmaier
167897b776 Update git submodules
* Update translations from branch 'master'
  to d3e4d5213d29f57c45e2199822f2a68df9a884f6
  - update translations for 24.8.0 rc2
    
    and force-fix errors using pocheck
    
    Change-Id: If72ef1ab34b88547d6caa85763242e8f2a231015
2024-07-24 13:23:30 +02:00
Tuukka Orava
f0a79b4dc1 tdf#147021 Use std::size instead of SAL_N_ELEMENTS in editeng
Change-Id: I6cf0557b1e44dff08fa1efa4aefa14dec276458e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167134
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
2024-07-24 10:32:08 +02:00
Michael Weghorn
52f2edaa59 qt: Move resolution calc to static helper method
Instead of duplicating the same code in both,
`QtGraphics::GetResolution` and
`QtSvpGraphics::GetResolution`, create a static
helper method `QtGraphicsBase::ImplGetResolution`
in their base class and call that.

While at it, also move `QtGraphics::GetResolution`
to the source file where all of the other
`QtGraphics` methods are implemented.

Change-Id: I721459e8b65756f214fee77ac4d3cb8e500f0b57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170930
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 10:10:34 +02:00
Michael Weghorn
7de061883d tdf#130857 qt weld a11y: Implement getting/setting a11y name/desc
Change-Id: I24149951d9d56d24ceac334c25357084a27708d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170905
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 08:27:12 +02:00
Sarper Akdemir
426c641976 tdf#159040: add sign with default certificate to save dialog
Include X.509 certificates under Tools->Options->UserData
among the keys for signing.

Add a new checkbox to Save file dialog, to sign with that
selected key easily.

The checkbox is disabled if there's no matching key found.

Change-Id: I9fc16790c479819cd1f35bcad040d0ebc7c4bdef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170619
Tested-by: Jenkins
Reviewed-by: Sarper Akdemir <sarper.akdemir@allotropia.de>
2024-07-24 07:08:46 +02:00
Michael Weghorn
6ca02ef177 icon choice ctrl: Drop unnecessary cast
Change-Id: Ic9de7dae6f9341889fc4dec9ecf798aae63dd4b7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170899
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:52:28 +02:00
Michael Weghorn
aebf3d3820 tdf#161501 icon choice ctrl: Don't modify bound rect to center content
Don't modify the bound rect of tab items used used e.g.
for drawing the focus/selection/mouse-hover rectangles/indicators
in order to center the content horizontally and vertically.

Making the bound rect smaller in vertical direction
in `SvxIconChoiceCtrl_Impl::Center` resulted in margins
between entries for the non-native drawing path (e.g. the
gen VCL plugin on Linux) for the text-only case
(e.g. "Format" -> "Page Style" dialog in Writer).

Making sure that the content is centered should rather
happen in the drawing routine.

Horizontally centering already happens for the icon-case
anyway, as the `PAINTFLAG_VER_CENTERED` gets passed as flag
to the `PaintItem` call for the `WB_ICON` case in
`SvxIconChoiceCtrl_Impl::PaintEntry` anyway.

And for text-only mode, which was apparently the only one
for which centering vertically in `SvxIconChoiceCtrl_Impl::Center`
had an effect, vertically drawing text was implemented in the drawing
code path in

    commit 180f0c1ec8
    Author: Rafael Lima <rafael.palma.lima@gmail.com>
    Date:   Tue Jul 16 20:52:28 2024 +0200

        tdf#161501 Improve visuals of selected entries in Vertical tabs

. This commit addresses the

>   For the gen VCL plugin, there's still a small gap between
>   text-only items (e.g. in the "Format" -> "Page Style" dialog
>   which has a different cause and will be addressed in a separate
>   commit.

aspect mentioned in earlier commit

    Change-Id: Iac34098ef8d0f90f1ac0844df63839a6a99b83a7
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 22 11:39:48 2024 +0200

        tdf#161501 icon choice ctrl: Drop extra space between items

Change-Id: I2077efc8ce1e97d52cf078d63bb4e4b528e389eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170895
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:45:34 +02:00