Commit Graph
507565 Commits
Author SHA1 Message Date
Noel Grandin 05aabfc2db tsan: suppress a gstreamer data race
Change-Id: I4fe30cd7869c9bf7639a394ba5828e3559017992
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187250
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 22:02:25 +02:00
Noel Grandin 8b7a1343d9 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: Ib64913c7998e036dc7ccd012363232e6153981bd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187249
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 22:02:12 +02:00
Noel Grandin e58c4d646e tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: I6792f29b1a02a38067265001ddfaebe95b9e52eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187248
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 22:02:04 +02:00
Noel Grandin 79dc7ac75b tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: Iaab577e27946eade4d460db80661f4e0efdfb82d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187247
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 22:01:55 +02:00
Noel Grandin 98637767d5 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: Id2a8e5965f61bae7a157beed2096307b5beb6ed7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187246
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 22:01:47 +02:00
Xisco Fauli 46d43e80e1 codemaker: remove dead test code
Change-Id: I73e81dac5ccce7ee2c1fd204c3769781f6c2f287
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187251
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-07-01 21:20:41 +02:00
Gabor Kelemen 8d736f84a0 Remove IWYU exceptions about comphelper/scopeguard.hxx
Noticed that newer versions of IWYU no longer give a false warning
about this, so just drop them

Change-Id: Ic45a8fab10965dc5d0a5432fc36e48db187834c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187143
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2025-07-01 20:54:16 +02:00
Ilmari Lauhakangas ddf77c92a5 tdf#163747 ODK docs: CSS hack to add "unpublished" decoration
Add an HTML_EXTRA_STYLESHEET setting to the Doxyfile of idl
and remove HTML_TIMESTAMP = NO while at it (it is disabled by default
since Doxygen 1.8.9).

The hacky CSS rule is extra long due to the need to exclude
*.idl File Reference pages from it.

Change-Id: I848f6c216b68875fd032044f04ca72f5a5e2ed1e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186595
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2025-07-01 20:21:44 +02:00
Michael Weghorn cc4dbbf714 tdf#130857 qt: Extract helpers to convert Qt drag/drop to LO events
Extract some logic from QtFrame to helper functions,
in order to reuse that for QtInstanceWidget in an upcoming
commit.

Logic to multiply the scale factor/device pixel ratio
remains in QtFrame as it is specific to that one.

Change-Id: I6a155b404d9af31a244a5bcc8b5f78ee3b90d55d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187245
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-01 20:05:54 +02:00
Michael Weghorn 9c9e53d3ba qt: Drop unnecessary QPoint -> Point conversions
Change-Id: I3e4219b9642307cacd23f1f67e8c2aaa43a3afb6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187244
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-01 20:05:43 +02:00
Michael Weghorn 2583f86055 tdf#130857 qt: No longer pass QtFrame to QtDropTarget ctor
Instead, move the logic specific to QtFrame to
QtInstance::ImplCreateDropTarget.

This prepares for reusing QtDropTarget for
QtInstanceWidget::get_drop_target.

Change-Id: If0f24b03222799d9946e3f780388a6e9ebd5a024
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187243
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-01 20:05:37 +02:00
Noel Grandin 832ab45399 tsan: workaround a data-race
this is not a great solution. It makes tsan happy (for now), but fundamentally,
the drawinglayer code should not be relying on the vcl code being threadsafe.

WARNING: ThreadSanitizer: data race (pid=252297)
  Write of size 8 at 0x724c000195e0 by thread T30:
    #0 ImpGraphic::resetLastUsed() const /home/noel/libo-tsan/vcl/source/gdi/impgraph.cxx:1799 (libvcllo.so+0x999ee6)
    #1 ImpGraphic::ensureAvailable() const /home/noel/libo-tsan/vcl/source/gdi/impgraph.cxx:1384 (libvcllo.so+0x999ee6)
    #2 ImpGraphic::getBitmapEx(GraphicConversionParameters const&) const /home/noel/libo-tsan/vcl/source/gdi/impgraph.cxx:652 (libvcllo.so+0x999ee6)
    #3 Graphic::GetBitmapEx(GraphicConversionParameters const&) const /home/noel/libo-tsan/vcl/source/gdi/graph.cxx:333 (libvcllo.so+0x98935d)
    #4 drawinglayer::processor3d::DefaultProcessor3D::impRenderBitmapTexturePrimitive3D(drawinglayer::primitive3d::BitmapTexturePrimitive3D const&) /home/noel/libo-tsan/drawinglayer/source/processor3d/defaultprocessor3d.cxx:236 (libdrawinglayerlo.so+0x14dc4e)
    #5 drawinglayer::processor3d::DefaultProcessor3D::processBasePrimitive3D(drawinglayer::primitive3d::BasePrimitive3D const&) /home/noel/libo-tsan/drawinglayer/source/processor3d/defaultprocessor3d.cxx:496 (libdrawinglayerlo.so+0x14f18d)
    #6 drawinglayer::processor3d::BaseProcessor3D::process(drawinglayer::primitive3d::Primitive3DContainer const&) /home/noel/libo-tsan/drawinglayer/source/processor3d/baseprocessor3d.cxx:57 (libdrawinglayerlo.so+0x14b9c2)
    #7 drawinglayer::processor3d::DefaultProcessor3D::processBasePrimitive3D(drawinglayer::primitive3d::BasePrimitive3D const&) /home/noel/libo-tsan/drawinglayer/source/processor3d/defaultprocessor3d.cxx:539 (libdrawinglayerlo.so+0x14f175)
    #8 drawinglayer::processor3d::BaseProcessor3D::process(drawinglayer::primitive3d::Primitive3DContainer const&) /home/noel/libo-tsan/drawinglayer/source/processor3d/baseprocessor3d.cxx:57 (libdrawinglayerlo.so+0x14b9c2)
    #9 drawinglayer::primitive2d::ScenePrimitive2D::create2DDecomposition(drawinglayer::geometry::ViewInformation2D const&) const::Executor::doWork() /home/noel/libo-tsan/drawinglayer/source/primitive2d/sceneprimitive2d.cxx:466 (libdrawinglayerlo.so+0xd3756)
    #10 comphelper::ThreadPool::ThreadWorker::execute() /home/noel/libo-tsan/comphelper/source/misc/threadpool.cxx:321 (libcomphelper.so+0x169524)
    #11 non-virtual thunk to salhelper::Thread::run() /home/noel/libo-tsan/salhelper/source/thread.cxx:39 (libuno_salhelpergcc3.so.3+0x5397)
    #12 threadFunc /home/noel/libo-tsan/include/osl/thread.hxx:189 (libuno_salhelpergcc3.so.3+0x567e)
    #13 osl_thread_start_Impl(void*) /home/noel/libo-tsan/sal/osl/unx/thread.cxx:237 (libuno_sal.so.3+0x6b419)
Change-Id: I04547be761db22443a4515af08b747483f5a7c20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187237
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 18:29:44 +02:00
Michael Weghorn 46a1616172 gtk: Drop nested GTK version check
This is already inside another

    #if GTK_CHECK_VERSION(4, 0, 0)
    // ...
    #endif

No need to check twice.

Change-Id: I2dad75164e3d9a1f437e0eff639244b64f38fa78
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187239
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-01 17:19:03 +02:00
Noel Grandin 0f625fb713 tsan: fix data race in BufferedDecompositionFlusher
WARNING: ThreadSanitizer: data race (pid=271122)
  Write of size 8 at 0x7244000becc0 by main thread (mutexes: write M0):
    #0 drawinglayer::primitive2d::BufferedDecompositionPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const /home/noel/libo-tsan/drawinglayer/source/primitive2d/BufferedDecompositionPrimitive2D.cxx:90 (libdrawinglayercorelo.so+0xb986)
    #1 drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/baseprocessor2d.cxx:43 (libdrawinglayerlo.so+0x1284cf)
    #2 drawinglayer::processor2d::CairoPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/cairopixelprocessor2d.cxx:4230 (libdrawinglayerlo.so+0x7a370)
    #3 drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/baseprocessor2d.cxx:67 (libdrawinglayerlo.so+0x1286f1)
    #4 drawinglayer::processor2d::CairoPixelProcessor2D::processMaskPrimitive2D(drawinglayer::primitive2d::MaskPrimitive2D const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/cairopixelprocessor2d.cxx:1919 (libdrawinglayerlo.so+0x6fbd9)
    #5 drawinglayer::processor2d::CairoPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/cairopixelprocessor2d.cxx:4103 (libdrawinglayerlo.so+0x7a33c)
    #6 drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/baseprocessor2d.cxx:67 (libdrawinglayerlo.so+0x1285f1)
    #7 drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/baseprocessor2d.cxx:54 (libdrawinglayerlo.so+0x1285f1)
    #8 drawinglayer::primitive2d::GroupPrimitive2D::getChildren(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&) const /home/noel/libo-tsan/include/drawinglayer/primitive2d/groupprimitive2d.hxx:76 (libdrawinglayercorelo.so+0x1c51b)
    #9 drawinglayer::primitive2d::GroupPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const /home/noel/libo-tsan/drawinglayer/source/primitive2d/groupprimitive2d.cxx:53 (libdrawinglayercorelo.so+0x1c51b)
    #10 drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) /home/noel/libo-tsan/drawinglayer/source/processor2d/baseprocessor2d.cxx:43 (libdrawinglayerlo.so+0x1284cf)

  Previous read of size 8 at 0x7244000becc0 by thread T299 (mutexes: write M1):
    #0 std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::time_since_epoch() const /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/chrono.h:950 (libdrawinglayercorelo.so+0xcd6f)
    #1 std::common_type<std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::type std::chrono::operator-<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) /usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/chrono.h:1143 (libdrawinglayercorelo.so+0xcd6f)
    #2 drawinglayer::primitive2d::BufferedDecompositionFlusher::run() /home/noel/libo-tsan/drawinglayer/source/primitive2d/BufferedDecompositionFlusher.cxx:133 (libdrawinglayercorelo.so+0xcd6f)
    #3 threadFunc /home/noel/libo-tsan/include/osl/thread.hxx:189 (libdrawinglayercorelo.so+0xe0ee)
    #4 osl_thread_start_Impl(void*) /home/noel/libo-tsan/sal/osl/unx/thread.cxx:237 (libuno_sal.so.3+0x6b419)

Change-Id: Ie7afe0501d0d562117fc4418a3fe24853397aefe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187238
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 16:28:58 +02:00
Noel Grandin 9d1e76f7da convert PathSettings to comphelper::WeakComponentImplHelper
and make the locking more principled, fixing a TSAN reported mutex ordering issue

Change-Id: If99d4cb3d1ec5a730f473ea3748c196fc6d65694
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187233
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 16:28:30 +02:00
Caolán McNamara 7ac9630d22 null GetSfxViewShell() deref
#0  0x00007d2c05299b40 in SwViewShell::SizeChgNotify (this=this@entry=0x3cd9f220) at sw/source/core/view/viewsh.cxx:1264
 #1  0x00007d2c04e7bfb8 in AdjustSizeChgNotify (pRoot=pRoot@entry=0x3c9a1af0) at sw/source/core/layout/pagechg.cxx:894
 #2  0x00007d2c04e7fa5d in SwRootFrame::CheckViewLayout (this=0x3c9a1af0, pViewOpt=pViewOpt@entry=0x0, pVisArea=pVisArea@entry=0x0)
     at sw/source/core/layout/pagechg.cxx:2490
 #3  0x00007d2c04e81819 in SwPageFrame::Paste (this=this@entry=0x3cf5c9b0, pParent=pParent@entry=0x3c9a1af0, pSibling=pSibling@entry=0x3cebf0d0)
     at sw/source/core/layout/pagechg.cxx:1010
 #4  0x00007d2c04e8498b in (anonymous namespace)::doInsertPage (pRoot=0x3c9a1af0, pRefSibling=0x7ffce60d5450, pFormat=<optimized out>, pDesc=<optimized out>, bFootnote=<optimized out>, pRefPage=0x7ffce60d5458)
     at sw/source/core/layout/pagechg.cxx:1396
 #5  0x00007d2c04e852a4 in SwFrame::InsertPage (this=this@entry=0x3cebe640, pPrevPage=0x3cebb780, bFootnote=bFootnote@entry=false)
     at sw/source/core/layout/pagechg.cxx:1475
 #6  0x00007d2c04eb3787 in SwFrame::GetNextSctLeaf (this=0x3cebe640, eMakePage=MAKEPAGE_INSERT) at sw/source/core/layout/sectfrm.cxx:1853
 #7  0x00007d2c04e35530 in SwFlowFrame::MoveFwd (this=this@entry=0x3cebe720, bMakePage=<optimized out>, bPageBreak=bPageBreak@entry=false, bMoveAlways=bMoveAlways@entry=false)
     at sw/source/core/layout/flowfrm.cxx:2148
 #8  0x00007d2c04e24732 in SwContentFrame::MakeAll (this=0x3cebe640) at sw/source/core/layout/calcmove.cxx:1930
 #9  0x00007d2c04e2184c in SwFrame::PrepareMake (this=0x3cebe640, pRenderContext=0x3c95db30) at sw/source/core/layout/calcmove.cxx:396
 #10 0x00007d2c04e3abe4 in CalcContent (pLay=pLay@entry=0x3ce01530, bNoColl=bNoColl@entry=false) at sw/source/core/layout/fly.cxx:1764
 #11 0x00007d2c04ee2079 in SwLayoutFrame::FormatWidthCols (this=this@entry=0x3ce01530, rAttrs=..., nBorder=nBorder@entry=0, nMinHeight=nMinHeight@entry=23)
     at sw/source/core/layout/wsfrm.cxx:4013

(gdb) print mpSfxViewShell
$3 = (SfxViewShell *) 0x0

Change-Id: I2e0f21a442791260e8b79e38965c8da7e41656cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187226
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-07-01 16:10:05 +02:00
Justin Luth 633ce6b170 tdf#148275: EXIT_FAILURE if any cmdline operation fails
While by no means comprehensive,
this patch fulfills the bug request
by returning error status 1 (instead of 0)
if REQUEST_CONVERSION (and some others) fail for various reasons.

instdir/program/soffice  --convert-to junk  non-existant-file.ods
echo "status is $?"

-EXIT_FAILURE b/c non-existant-file.ods not found
-EXIT_FAILURE b/c junk is not a valid filter
-EXIT_FAILURE if xStorable->storeToURL raises an exception

Change-Id: Ic1d25034fa152cdc4933ce3cca06def204f764a6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187075
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2025-07-01 15:59:39 +02:00
Noel Grandin 1994fb2b30 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: I423aaa2a1366b1d2dc5793cccafa3af58b8fe0ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187236
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 15:24:33 +02:00
Noel Grandin ed48829ae8 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: Id11ed17a87c0cf41b66f5b793c1f86e4cbc0dea5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187235
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 15:10:44 +02:00
Olivier Hallot e03ce07010 Update git submodules
* Update helpcontent2 from branch 'master'
  to a4b7bb5254afafc76760385cde2cabf793fed3fe
  - Review shortcut table for Writer
    
    Change-Id: I2381191e621200280490bd8d2ee74c000ba32df5
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/187218
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2025-07-01 14:57:38 +02:00
Mike Kaganski ba0dc60a2a LOK Extract API: normalize textBefore / textAfter in redline extraction
We return textBefore / textAfter context for each redline; but for
it to make sense, it needs to reflect the text in the state when the
redline was created.

This change makes sure that for each processed redline, the document
is set to the visual state present at the moment current for this
redline: all previous changes are shown as if accepted; all future
changes are not shown as if rejected.

Change-Id: Ie5b9a971c2c98642b49212fbcd57df46a8daaccc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187221
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-07-01 14:12:00 +02:00
Noel Grandin 521634b6dd update TSAN suppression file for new static SimpleReferenceObject flag
Change-Id: Ief0e5e6ef9aefed58582cbc1d96c83bec3351858
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187234
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 13:56:54 +02:00
Noel Grandin a83f71dfe3 PageObjectLayouter can be held by unique_ptr
Change-Id: I3323ca198d534d673772e7cdc10f04a12e6f9376
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187213
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 13:56:44 +02:00
Mike Kaganski f6d38519aa Simplify a bit
Initialize the variable on declaration; use clearer 'while' instead
of 'for'.

Change-Id: I461a3b0556e362006a47245dbc504b46807a23c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187231
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-01 13:28:08 +02:00
Xisco Fauli 34dce05c66 sw: factor out common code
Change-Id: If92f5254d27426ada0b30b97e6d417f60bab1a0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187232
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2025-07-01 13:04:37 +02:00
Noel Grandin fd84168e75 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: I9a8be2b4c44a90c56d0134872c0e529636c0b06b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187228
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 12:51:07 +02:00
Noel Grandin 5abd4e4df4 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: I9c14d1adef0d8df9dc83fd7b5f3d38d503f72e63
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187227
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 12:50:58 +02:00
Mike Kaganski 1875732965 Simplify SwXRedline
It doesn't need own m_pDoc (SwXText has one already); and its ctor
doesn't need an SwDoc& argument (it is deducible from rRedline).

Change-Id: I93e72ba824a697df2d3654336c3f5c44192083eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187230
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-07-01 12:16:39 +02:00
Xisco Fauli a8ab9597b4 sc: drop shared_test_impl
and move code together
also test import and export in one place

Change-Id: I0137b4f218b12ef94fe7046c863db35a7b216d41
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187224
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-07-01 11:49:46 +02:00
Noel Grandin 5571d80795 tdf#166842 do not use FillColor==COL_TRANSPARENT...
.. on OutputDevice if that OutputDevice does not support alpha

Change-Id: I44243118dd38aab0c3c453206da7606d5d067b83
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187220
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 10:39:29 +02:00
Noel Grandin 3ea95fb507 ILayerInvalidator can be held by unique_ptr
Change-Id: I132e4a6593c35e55001a80ebdea94a46bb53f184
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187212
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 10:36:57 +02:00
Noel Grandin 2bf4f8e581 SlotManager can be held by unique_ptr
Change-Id: I8aa9f5369cdb4cc66177962da19a597015b8fc46
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187211
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 10:36:48 +02:00
Kurt Nordback 5427624c78 tdf#165742 Step 4.4 follow-on: Fix a faulty assert
In the earlier changes I introduced an assert that didn't properly consider
a chart with multiple series. This is intended to fix that.

Change-Id: I60f097ffae2e7f29aadc5bfaabc739c120be5fcd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187216
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2025-07-01 09:41:11 +02:00
Gabor Kelemen e0afd45007 tdf#146619 Run IWYU on codemaker/
Change-Id: I2edd6e4cb4275d5ca79791f6b709c0e8b2b64f71
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187142
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2025-07-01 09:39:25 +02:00
Noel Grandin 80d293701b CurrentSlideManager can be held by unique_ptr
Change-Id: Icbcce672b1b398bdff0cbc5b8be9252e2e9ad901
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187210
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-01 09:37:27 +02:00
Noel Grandin 149c0ff96d remove some unnecessary indirection when storing WrappedShapeEventImpl
Change-Id: Icad7edfc8b7d3949f87b32811873d83daedc0ff6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187209
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 09:37:18 +02:00
Noel Grandin bf00c26bf1 AnimationSlideController can be held by unique_ptr
Change-Id: Idfdd2d3e97a3ef1b66691b27ab9eded56e2a9aae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187208
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 09:37:01 +02:00
Noel Grandin dfb5460e47 no need to hold ViewCache by shared_ptr
Change-Id: If147e32352c1c22334426c2bf91f5351bfbe2e8a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187207
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 09:36:52 +02:00
Noel Grandin ecd3ab9a20 FormShellManager can be held by unique_ptr
Change-Id: Ibfc8bfc1e0d08787d09e65dc75d25db98a61adeb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187206
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 09:36:44 +02:00
Gabor Kelemen 3ad35d16ec USE_ASSIGN_ACTOR is never defined
since 2009 commit ef43d23e18

Change-Id: Ie2594a11fb52be469edd337c7c575c96425adb49
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187106
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2025-07-01 09:36:42 +02:00
Noel Grandin dc5bb54dc3 no need to allocate SfxStyleSheetIterator on the heap here
Change-Id: Ib4ecfea3c92b071786541128ab56e0fd979842a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187205
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 09:36:34 +02:00
WeblateandAbduqadir Abliz 9a624ae668 android-viewer translated using Weblate
Uyghur currently translated at 22.4% (26 of 116 strings)

Change-Id: I97c5137955164f88930fb1a3d1cf4ee88fdf3fd3

Added translation for android-viewer using Weblate (Uyghur)

Change-Id: Ie5887d28c2bc6ce0d6694756f51fc8163ea49fa8
Co-authored-by: Abduqadir Abliz <Sahran@live.com>
Co-authored-by: Weblate <noreply@documentfoundation.org>
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/ug/
Translation: android-viewer/android-strings
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187157
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-07-01 09:01:04 +02:00
Heiko Tietze f7c20a1c78 Resolves tdf#167219 - Invert infobar colors on dark background
Change-Id: I592509bcdb74ef5ac88a1cab51c2ffc978a19ecd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187169
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Tested-by: Jenkins
2025-07-01 08:42:57 +02:00
Noel Grandin 28137ea6c0 no need to hold AccessibleFocusManager by shared_ptr
there is only one instance, and only one reference to it

Change-Id: I0b8c57b758d15a3c38d5014f999a21f43389b1c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187204
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-01 08:14:29 +02:00
Michael Weghorn 92d2f61c6c gtk: Use GtkSalFrame param instead of casting
Change-Id: If2ae1144ad438c2e4c4d484a62a54af9570c1655
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187217
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-01 06:54:19 +02:00
Michael Weghorn 697fadb8f4 tdf#167296 sd a11y: Use better accessible role for slides view
Don't use the DOCUMENT role for the slides view in Impress,
as this is not the actual document, but only contains
previews of the slides.
Use the PANEL role instead.

This also stops confusing the NVDA screen reader on Windows
which was running into an exception trying to generate a text
representation for the newly selected/focused slide when switching
them. It now instead announce the accessible name/slide title as
expected.

Error/Backtrace seen with NVDA git master as of commit
9e668b18fa397726382d3095656212de8d1b1d7e without this
commit in place:

    ERROR - eventHandler.executeEvent (13:46:32.234) - MainThread (10300):
    error executing event: gainFocus on <NVDAObjects.IAccessible.IAccessible object at 0x0AEBDFF0> with extra args of {}
    Traceback (most recent call last):
      File "eventHandler.py", line 348, in executeEvent
        if isGainFocus and not doPreGainFocus(obj, sleepMode=sleepMode):
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "eventHandler.py", line 382, in doPreGainFocus
        if not api.setFocusObject(obj):
               ^^^^^^^^^^^^^^^^^^^^^^^
      File "api.py", line 189, in setFocusObject
        setNavigatorObject(obj, isFocus=True)
      File "api.py", line 348, in setNavigatorObject
        review.setCurrentMode("document", False)
      File "review.py", line 140, in setCurrentMode
        pos = func(obj)
              ^^^^^^^^^
      File "review.py", line 59, in getDocumentPosition
        pos = obj.treeInterceptor.makeTextInfo(obj)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "documentBase.py", line 76, in makeTextInfo
        return self.TextInfo(self, position)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "compoundDocuments.py", line 287, in __init__
        self._start = self._end = self._startObj.makeTextInfo(position)
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "documentBase.py", line 76, in makeTextInfo
        return self.TextInfo(self, position)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "textInfos\offsets.py", line 505, in __init__
        self._startOffset = self._endOffset = self._getCaretOffset()
                                              ^^^^^^^^^^^^^^^^^^^^^^
      File "textInfos\offsets.py", line 267, in _getCaretOffset
        raise NotImplementedError
    NotImplementedError

Change-Id: Iacf1ecd624088d7c8fe693f71b4d5ed264584bb4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187188
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-06-30 19:34:44 +02:00
Michael Weghorn 0e46139d18 tdf#100876 sd a11y: Use pane title as a11y name
TitledDockingWindow::m_sTitle is used for
the title to display for that docking window. Also
set it as an accessible name, so it is also available
to assistive technologies.

This e.g. makes clear when the "Slides" pane gets reached (its close
button receives focus) in Impress when cycling through panes using
the F6 key.

Change-Id: I5e6221cdf5ee9365372c639db59b0156d278d4ec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187183
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-06-30 19:34:14 +02:00
Michael Weghorn 2efb920c96 sd: Switch SlideSorterViewShell::mpSlideSorter to unique_ptr
It's created and uniquely owned by the
SlideSorterViewShell, so there's no need to
use a std::shared_ptr.

Change-Id: I80472cc0c61a860c82b27bdf3b5b642aafcac4ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187182
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-06-30 19:34:08 +02:00
Michael Weghorn 8792c3f5be svtools a11y: Drop SvtRulerAccessible::getLocale
The base class implementation in OAccessible::getLocale
already implements the same logic.

Change-Id: Ia086b85551087b2f3d5d803f28bf3f481c94985b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187186
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-06-30 19:33:41 +02:00
Xisco Fauli 71e86f54fb sc: reintroduce test removed by mistake
in
commit 9431764377
Author: Xisco Fauli <xiscofauli@libreoffice.org>
Date:   Fri Jun 27 18:16:37 2025 +0200

    CppunitTest_sc_cond_format: group all conditional format tests

Change-Id: I3faeba8f38b0170ea991c55800813b9ba638a842
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187201
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-06-30 18:39:31 +02:00