actualizacion-master-2024-11-28 #2

Merged
iapz merged 374 commits from actualizacion-master-2024-11-28 into master 2024-11-28 11:49:12 -06:00
Member
No description provided.
iapz added 374 commits 2024-11-28 11:47:52 -06:00
it is more appropriate state variable for this particular command,
as in many cases its disabled and that can not be treated as false
as document still maybe editable

Change-Id: Ib19a0cc087518a18bf295abd08b93815606af1fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176736
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 04375f2a31cc6c233a015215f06682462b30425f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176748
Reviewed-by: Pranam Lashkari <lpranam@collabora.com>
Tested-by: Jenkins
The previous command was not working, because of the lack of absolute
path and also the wrong path to the test document. This should be fixed
now.

Change-Id: I2230041e17e4b6b33cfd44e5f15a5fce086a5f1c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176764
Tested-by: Jenkins
Reviewed-by: Hossein   <hossein@libreoffice.org>
See tdf#94879 for motivation.

Change-Id: I74c53028d9966ca4059c7a145b3fb0d914d8ae77
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176770
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Change-Id: If9487aff0d80f7ee9d368cd97bc2828a856cc392
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176766
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: I851d9d11c9d3f3c34353913a146ad168a98dc3d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176771
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: Ia0314a985ae2183727587ad254faec12ee49b66c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176769
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I9ad592670399f25eeaea375bf71e6d30ee20118f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176763
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
it is only used for one thing, so rename it, and
use a default implementation to avoid having empty
implementations everywhere

Change-Id: Ib650bb520ccbfcc27537b754db4d3de4ad10e638
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176733
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: If747870121e3fc8c2d97b5fc769b2d928a4c3f9c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176777
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I18a5665609b3e15a98bb88e6d307e9f18be967e9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176778
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: I6ae56ad61ceec5bc34898befd636a0ceae8266e5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176700
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to e9c7414e4fd17c6f2ffbe6208db2c741fe33e803
  - tdf#162504 Create help page for Number Format pane
    
    Create new page source/text/scalc/sidebar_number_format.xhp to describe
    the features of the Number Format pane in the Properties sidebar deck.
    
    In AllLangHelp_scalc.mk
    - Add new file source/text/scalc/sidebar_number_format.xhp to
    repository.
    
    In source/text/scalc/01/default_number_formats.xhp
    - Add variable and section tags so that content can be easily linked and
    embedded in other pages.
    - Remove old comments
    
    In source/text/shared/01/05020300.xhp
    - Add variable and section tags so that content can be easily linked and
    embedded in other pages.
    - Remove old comments
    
    In
    /home/dione/libreoffice/helpcontent2/source/text/shared/01/sidebar_properties.xhp
    THIS PAGE IS A WIP AND WILL NOT BE LINKED IN HELP UNTIL IT IS FINISHED
    - Embed description of the help page for Number Formats
    - Added index bookmarks (Currently commented out)
    - Updated application switches to hide the desription of the Paragraph
    pane for CALC and BASE.
    
    Change-Id: I7e1849ddc41cad7fd5d4b6c57e8a03186eb6575f
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/176720
    Tested-by: Jenkins
    Tested-by: Olivier Hallot <olivier.hallot@libreoffice.org>
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
and generally don't bother with it when fetching data
from urls

Change-Id: I51a2601c6fb7d6c32f9e2d1286ee0d3b05b370b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176645
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Change-Id: I0ab14e51d10cf67c956624710d1f82c69662e586
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176784
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit 9fe2ead3d5
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date:   Fri Oct 8 06:43:18 2021 +0200

    loplugin:moveparam in svx

V1030 	The 'aSdrObjects' variable is used after it was moved.

Change-Id: I9b426204ff2e2e2d0f6b375e201259765aa12736
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176785
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
log failure and continue to export the remainder of the document

 #0  0x0000733dda8ae4a1 in __cxa_throw () from target:/lib/x86_64-linux-gnu/libstdc++.so.6
 #1  0x0000733dc5d0bd43 in ScCellRangeObj::getCellRangeByPosition (this=0x2a753d60, nLeft=43, nTop=-7, nRight=43, nBottom=-7)
     at sc/source/ui/unoobj/cellsuno.cxx:4638
 #2  0x0000733dc66150d5 in ScTableSheetObj::getCellRangeByPosition (this=0x2a753d60, nLeft=43, nTop=-7, nRight=43, nBottom=-7)
     at sc/source/ui/unoobj/cellsuno.cxx:6711
 #3  0x0000733dc62d3e38 in ScXMLExport::GetMerged (this=0x1fc74160, pCellAddress=<optimized out>, xTable=...)
     at sc/source/filter/xml/xmlexprt.cxx:2750
 #4  0x0000733dc62d7104 in ScXMLExport::AddStyleFromCells (this=0x1fc74160, xProperties=..., xTable=..., nTable=0, pOldName=0x0)
     at sc/source/filter/xml/xmlexprt.cxx:2156
 #5  0x0000733dc62dfebb in ScXMLExport::collectAutoStyles (this=<optimized out>)
     at sc/source/filter/xml/xmlexprt.cxx:2559
 #6  0x0000733dc62d0fff in ScXMLExport::ExportAutoStyles_ (this=0x1fc74160)
     at sc/source/filter/xml/xmlexprt.cxx:2657
 #7  0x0000733dd833a7a4 in SvXMLExport::ImplExportAutoStyles (this=0x1fc74160)
     at xmloff/source/core/xmlexp.cxx:1123
 #8  0x0000733dd833d098 in SvXMLExport::exportDoc (this=0x1fc74160, eClass=<optimized out>)
     at xmloff/source/core/xmlexp.cxx:1389
 #9  0x0000733dd83386f6 in SvXMLExport::filter (this=this@entry=0x1fc74160, aDescriptor=...)
     at xmloff/source/core/xmlexp.cxx:815
 #10 0x0000733dc62e6452 in ScXMLExport::filter (this=0x1fc74160, aDescriptor=...)
     at sc/source/filter/xml/xmlexprt.cxx:5472
 #11 0x0000733dc63204a0 in ScXMLImportWrapper::ExportToComponent (this=0x7ffc11959890, xContext=..., xModel=..., xWriter=..., aDescriptor=..., sName=...,
     sMediaType=..., sComponentName=..., aArgs=..., pSharedData=...)
     at sc/source/filter/xml/xmlwrap.cxx:707
 #12 0x0000733dc632679a in ScXMLImportWrapper::Export (this=this@entry=0x7ffc11959890, bStylesOnly=bStylesOnly@entry=false)
     at sc/source/filter/xml/xmlwrap.cxx:943
 #13 0x0000733dc6465d5e in ScDocShell::SaveXML (this=0x11d1c440, pSaveMedium=0x138252f0, xStor=...)
     at sc/source/ui/docshell/docsh.cxx:653
 #14 0x0000733dc646a519 in ScDocShell::SaveAs (this=0x11d1c440, rMedium=...)
     at sc/source/ui/docshell/docsh.cxx:1913
 #15 0x0000733dd6ae7432 in SfxObjectShell::SaveAsOwnFormat (this=0x11d1c440, rMedium=...)
     at sfx2/source/doc/objstor.cxx:3378
 #16 0x0000733dd6af0ae6 in SfxObjectShell::SaveTo_Impl (this=0x11d1c440, rMedium=..., pSet=0x7ffc11959fe0)
     at sfx2/source/doc/objstor.cxx:1520
 #17 0x0000733dd6af2f08 in SfxObjectShell::DoSave_Impl (this=0x11d1c440, pArgs=0x7ffc11959fe0)
     at sfx2/source/doc/objstor.cxx:2760
 #18 0x0000733dd6b2b3aa in SfxBaseModel::storeSelf (this=0x5348c30, aSeqArgs=...) at /opt/rh/devtoolset-12/root/usr/include/c++/12/optional:306
 #19 0x0000733dd6ab2671 in SfxStoringHelper::GUIStoreModel (this=this@entry=0x2ba275b0, xModel=..., aSlotName=..., aArgsSequence=...,
     bPreselectPassword=bPreselectPassword@entry=false, nDocumentSignatureState=SignatureState::NOSIGNATURES, bIsAsync=false)

perhaps some relation to https://gerrit.libreoffice.org/c/core/+/160363
which is a somewhat similar situation

Change-Id: I6b28ef0e9df0f44641fa5c582b5827dbcfb4af8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176765
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176792
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
so only the one that implements it needs to override it

Change-Id: I1acffb4796d95d75edc4507f533d9b1f8987972b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176790
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
One gtk3-specific section is sufficient.

Change-Id: I42a5cd1b94df7874665743a386af8e2e19590b0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176786
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Let the AtkObjectWrapper hold a reference to the original AtkObject,
and release it in `atk_object_wrapper_finalize`.

Without this, the original AtkObject might get destroyed
too early. Then trying to access it would result in a crash.

While occasionally also seen elsewhere, this was somewhat
more reliably reproducible when starting the Orca screen
reader or a pyatspi event listener script while the spell
check dialog in Writer was shown.

Backtrace of how the AtkObject got destroyed (reverse-debugged
with rr with a data breakpoint on the AtkObject's accessible description):

    1  _int_free_create_chunk   malloc.c             4738 0x7fe5766a858e
    2  _int_free_merge_chunk    malloc.c             4700 0x7fe5766a99b8
    3  _int_free                malloc.c             4646 0x7fe5766a9d31
    4  __GI___libc_free         malloc.c             3398 0x7fe5766ac4ff
    5  atk_object_finalize      atkobject.c          1399 0x7fe5626a7785
    6  g_object_unref                                     0x7fe56e9b94ee
    7  expiry_func              accessible-leasing.c 122  0x7fe5624f32b1
    8  ??                                                 0x7fe568f0f88e
    9  ??                                                 0x7fe568f0c7df
    10 ??                                                 0x7fe568f0ea17
    11 g_main_context_iteration                           0x7fe568f0f180
    12 GtkSalData::Yield        gtkdata.cxx          405  0x7fe5634766ec
    13 GtkInstance::DoYield     gtkinst.cxx          425  0x7fe56347b493
    14 ImplYield                svapp.cxx            385  0x7fe56db0e106
    15 Application::Yield       svapp.cxx            473  0x7fe56db0da9f
    16 Application::Execute     svapp.cxx            360  0x7fe56db0d880
    17 desktop::Desktop::Main   app.cxx              1679 0x7fe576926d8b
    18 ImplSVMain               svmain.cxx           228  0x7fe56db2e996
    19 SVMain                   svmain.cxx           246  0x7fe56db30589
    20 soffice_main             sofficemain.cxx      121  0x7fe5769a08da
    21 sal_main                 main.c               51   0x5644db935a6d
    22 main                     main.c               49   0x5644db935a47

Backtrace of the crash when using the already deleted
object later:

    1  g_type_check_instance_cast                             0x7fe56e9d9337
    2  atk_object_get_index_in_parent atkobject.c        1007 0x7fe5626a5ae5
    3  wrapper_get_index_in_parent    atkwrapper.cxx     545  0x7fe56344a244
    4  atk_object_get_index_in_parent atkobject.c        1011 0x7fe5626a5b3c
    5  append_cache_item              cache-adaptor.c    183  0x7fe562500591
    6  append_accessible_hf           cache-adaptor.c    246  0x7fe56250029b
    7  g_hash_table_foreach                                   0x7fe568efacd3
    8  spi_cache_foreach              accessible-cache.c 423  0x7fe5624f33f9
    9  impl_GetItems                  cache-adaptor.c    328  0x7fe562500174
    10 handle_other                   droute.c           558  0x7fe56250f8a4
    11 handle_message                 droute.c           605  0x7fe56250e7d6
    12 ??                                                     0x7fe5764f5e64
    13 dbus_connection_dispatch                               0x7fe5764e58ab
    14 message_queue_dispatch         atspi-gmain.c      89   0x7fe5623abc52
    15 ??                                                     0x7fe568f0c7df
    16 ??                                                     0x7fe568f0ea17
    17 g_main_context_iteration                               0x7fe568f0f180
    18 GtkSalData::Yield              gtkdata.cxx        405  0x7fe5634766ec
    19 GtkInstance::DoYield           gtkinst.cxx        425  0x7fe56347b493
    20 ImplYield                      svapp.cxx          385  0x7fe56db0e106
    21 Application::Yield             svapp.cxx          473  0x7fe56db0da9f
    22 Application::Execute           svapp.cxx          360  0x7fe56db0d880
    23 desktop::Desktop::Main         app.cxx            1679 0x7fe576926d8b
    24 ImplSVMain                     svmain.cxx         228  0x7fe56db2e996
    25 SVMain                         svmain.cxx         246  0x7fe56db30589
    26 soffice_main                   sofficemain.cxx    121  0x7fe5769a08da
    27 sal_main                       main.c             51   0x5644db935a6d
    28 main                           main.c             49   0x5644db935a47

The deleted object is the `AtkObject *accessible` param
passed to `atk_object_get_index_in_parent`.

This is with at-spi2-core git main as of commit
422cac4bd657ce783164324e6ae4b3d54a8aa761.

Change-Id: I23d8a3d55bd587aa99316d71524a18afcd6c0479
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176787
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: I68f45585878b323e44ce9ca2d660c72ebb7be174
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176791
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Crashreport signature:

> Fatal signal received: SIGSEGV code: 1 for address: 0x0
> program/libmergedlo.so
>       (anonymous namespace)::forceSetClipboardForCurrentView(_LibreOfficeKitDocument*)
>               desktop/source/lib/init.cxx:1376 (discriminator 6)
> program/libmergedlo.so
>       rtl::Reference<LOKClipboard>::~Reference()
>               include/rtl/ref.hxx:128
> program/libmergedlo.so
>       com::sun::uno::Reference<com::sun::lang::XComponent>::~Reference()
>               include/com/sun/star/uno/Reference.hxx:113

Sounds like an attempted document load that failed, but we still try to
set the clipboard for the first view during shutdown.

Change-Id: I21e5742ae4fcd4b24daf2888f3d64aae437d4fda
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176812
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
This fails from time to time, see
<https://ci.libreoffice.org/job/gerrit_linux_gcc_release/177770/console>
for a case.

When it fails, we get no status callback at all, while the interesting
failure is when we get a status callback, but it's wrong.

Just give up in the rare case when we get no status callback to avoid
false alarms for now.

Change-Id: I8f971b64db878d207f9fd2e4fffc4d4b9a4a14e3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176818
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
* Update helpcontent2 from branch 'master'
  to aa2f1c2c7172ad20c607734c8c11057ee717599a
  - New arguments in ScriptForge.Exception.PythonShell() method
    
    Change-Id: Iceb8b2480055e912eb712ff1eb7d842be440f6ba
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/176712
    Tested-by: Jenkins
    Reviewed-by: Alain Romedenne <alain.romedenne@libreoffice.org>
How the file was created:
mkdir data
cd data
wget
https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry
cd ..
tar cvjf language-subtag-registry-2024-11-19.tar.bz2 data/language-subtag-registry

Change-Id: I1ae31648771642592f8ce5c201ded8fd84eef8c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176821
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Indeed this seems unrelated to the task. But grid in Impress requires to add new properties to "getPartInfo (impress)".
When i checked the code, i saw that we use getPartInfo's result (on server side) like it's a text instead of JSON. So we'll refactor that part.
Touching that part requires also touching some other shared functions on COOL side. And those changes also required adding new props here.

We have been fetching this data (without adding new properties) one by one. We now will be able to fetch the whole part's data at once.

This commit also uses JsonWriter class.

Change-Id: Icc26ae71c668c391218e2d517259e1ef32a0832f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176815
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
i.e. ChangeEditMode doesn't do anything if the EditMode is unchanged
but the PageKind was switched from Notes to Standard. So the same
page of the other mode is still selected. An explicit SwitchPage
is required to change the page from the other mode.

This results in the reported mode of "2", but rendering actually still
rendering as if in "mode 0", so a request to render a 'standard' page
returns an image of the currently still-selected 'notes' page, which
confusingly can be cached and not shown until served as a reply to a
later request of the 'standard' page.

See DrawViewShell::ReadFrameViewData and other places for more
of this pattern.

Change-Id: Ie8aa8f93f45189fd6f9c37c4077fa2b547ca4815
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176084
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Reviewed-by: Gökay ŞATIR <gokaysatir@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
(cherry picked from commit 95e9c210ef8380b0909c6ba596e3023bafef4083)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176824
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
with LOK_CALLBACK_TOOLTIP

also avoid nullptr ViewShells:

-        if (comphelper::LibreOfficeKit::isActive())
+        if (ScTabViewShell* pLOKViewShell
+            = comphelper::LibreOfficeKit::isActive() ? aViewData.GetViewShell() : nullptr)

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I38578297cc1aadefe8c43033cdb14b9460e22c90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175827
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 459a9401f342210d7f6ab8fe6fa780ae28413ef6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176825
Tested-by: Jenkins
which becomes more obviously required since:

commit d85cb38322
CommitDate: Fri Feb 2 22:47:28 2024 +0100

    preload: open and close empty documents of main types in preinit.

because since then SdModule has called GetVirtualRefDevice to create the
long-life virtual device that is used to set the lists of available
fonts before "addfonts" has been called to add extra fonts to the kit
so impress/draw remains unaware of any changes there.

It was actually "true" here before:

commit ab61263300
CommitDate: Wed Apr 13 20:09:54 2022 +0200

    Follow-up fix to Collabora Online "addfont" handling: avoid assertion failure

but its uncertain what assertion is referred to here, perhaps the same
assertion as later fixed by:

commit d1ed24ba34d422128fd48184dbc3b344b5922d3a
CommitDate: Wed Oct 2 16:19:47 2024 +0200

    Get SolarMutex before calling ImplClearAllFontData

Change-Id: Ibc81191ba3b88d9b4def90b6d9662a83295ec9cf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176032
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176823
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
This simplifies memory management, as it removes the
need to manually free the memory using `g_free` again.

Change-Id: I71f8e6a8df46c0090f2f003d3f443500028b1f83
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176813
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: Ie92591770a2828a5f828d76d8c1bf7e5a253c3de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176814
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: Ibd3f95a7af4df51aee5fd1974914aa808dded229
V1037: Two or more case-branches perform the same actions. Check lines: 666, 688. Similar cases are grouped closer.
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175051
Reviewed-by: David Gilbert <freedesktop@treblig.org>
Tested-by: Jenkins
V1037 Two or more case-branches perform the same actions. Check lines: 1209, 1218

Change-Id: I9f2fe51a0b7d4514ff6a82d24be940ed50d39e81
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175221
Tested-by: Jenkins
Reviewed-by: David Gilbert <freedesktop@treblig.org>
...as had already been done prior to 8122c82d90
"osl::Mutex->std::mutex in SfxGlobalEvents_Impl"

Change-Id: Ia74c07a3458d7a5af428b68d1728cc9e51aa42a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176853
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
Change-Id: I2d6aef0dfa8bd8c002fd172b13363e629bc9cc3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176851
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
I had added BufferedData_ModifiedBitmapEx for CairoSDPR (but
not only) to allow Bitmaps modualted by BColorModifierStack
to be buffered in the standard way and at the original
Bitmap. This nicely can still hold the system-dependent form
of the Bitmap to be used at the Bitmap of that buffered
modified Bitmap.
This uses something I was not aware of: One Buffer implementation
may - as in this case - use another buffer. That may lead to the
second buffer being deleted/freed when the first one gets freed
- by timer or directly - what is wanted. This *needs* the methods
inside SystemDependentDataBuffer to do the actual potential
destruction of the Object outside the Mutex-Locked parts of
the code, else this might lead to a deadlock.
It is good to have found this, there may be other such
combinations in the future: That the implementation of a buffer
using that standard mechanism uses another class that may also be
buffered.
I have now made sure that buffered objects get deleted *outside*
the Mutex-Locked areas. This is better anyways, the destruction
does not need that lock - it is just needed so secure the
manipulation of the local unordered_map that organizes the
buffered elements globally.

Change-Id: Ie2f346a3f1a24105b89310ace3ff7a41472143c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176795
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Reviewed-by: Moritz Duge <moritz.duge@allotropia.de>
* Boundary toggles removed from app colors
* Object boundaries completely removed (color replaced with
  DOCBOUNDARIES; Impress placeholder on/off now an expert option)
* Toggle options added under formatting aids
* Individual UNO commands marked deprecated
* New command added to show all boundaries
* Frames follow sections now in state and color
* Kind of wrapping doesn't matter anmymore

Change-Id: I7bbec20831dcb95abef6523884d84b05a1a7df0a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176242
Tested-by: Jenkins
Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com>
It already had 114 tests

Change-Id: I16bddb42364c542fb2b5e115672096984b29e975
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176847
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Any such exceptions were already caught further up the stack (by
SfxBaseModel::postEvent_Impl), but prevented later listeners from being notified
as soon as one listener threw an exception (which I saw happen with some
3rd-party extension).

Change-Id: Ia6bd1c73d29ab6d6e131652df51939ba0c0e988e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176854
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Previously, the direction attribute was not set on text tags when
exporting RTL text to SVG. This change adds the missing attribute.

Change-Id: I57770c1cc44f10c3c43ccac2f5a17c1422c34d35
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176869
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
With same reasoning as

commit 8bb38e1b3f
Author: Michael Weghorn <m.weghorn@posteo.de>
Date:   Mon Oct 14 12:22:32 2024 +0200

    tdf#163397 svx: Use field color for WeldEditView bg

Change-Id: Iac0c6b934946b6755ce53ac312c1e637678f966d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176856
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
In preparation for a follow-up commit

Change-Id: Id790d14ccbbb17f4ca086c67a702e199397d272b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176864
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: Icc8958f9f86844149bc66d12d60111bdcac0f8ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176867
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I23365943e79847e3c7162808de3dc176f7db2b0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176804
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Hyperlinks are typically colored and underlined. The RTF import
- also used when pasting from clipbard - now evaluates font color
and underline in the field result.

Change-Id: I725fc3e94746c96d68379c021fb0c12cd3750096
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176714
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Tested-by: Jenkins
Change-Id: If765fa2c6e7df36dd5d62b351898b61ac263a6e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176872
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I4520061338adfcb13d2eece2f59fb8331c7dbf8a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176874
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I8c8e5c3e6c4e0a8a7f41943ac8c014e1175e093a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176871
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
SetOptimalHeightsToRows does nothing
if all the rows are manualsize.
GetOptimalHeightsInColumn can be extremely expensive to run,
so exit early if all the processing will have been for nothing.

This doesn't solve bug 163872,
but it does help with some of the sheets.

Change-Id: I425bbd4f181058aa637c92f2abccf7c27dcf607d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176808
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Justin Luth <jluth@mail.com>
* Update helpcontent2 from branch 'master'
  to 4eb5edf36d5bfa7f1dc90c09623086ade07b97b5
  - ghost ref to OO.o
    
    Change-Id: I92d95d09dea69f9482a9a49ed6a380da017ce749
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/176820
    Tested-by: Jenkins
    Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
* Update translations from branch 'master'
  to 8f5f1e8348d605be128fcfa742e6fb92d52e758f
  - Updated Slovenian translation
    
    Change-Id: I5502cef3a456758e12170ad6d95a39b152cf63f1
Change-Id: I554ca1edd014f91433a948302762bcd7a3ed64bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176870
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
all our backends support transparency, and have some time, XRender
support became mandatory a couple of years ago.

Change-Id: Ie2db7e4665068fe88a926e9791d74a82c2e75834
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176852
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Since
commit d0cacf09a1
Author: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
Date:   Wed Apr 27 11:45:04 2022 +0200

    tdf#99708 Save formula bar height to document

V519 	The 'pSettings[14].Name' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 3806, 3816.

Change-Id: I7afcee42d10d692c2c9a84b6a6f0a97ceb913081
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176761
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
Tested-by: Jenkins
In preparation for a follow-up commit

Change-Id: I8e7852b1861d6879e0dcda8c6fddd947bec3c959
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176876
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: If9f3ff5d9699876290fb643ed14ba64108cd191c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176877
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
...while latest proper VS 2022 is 17.12.1

Change-Id: I93ebd2756e665f5f33ba71934ab625709c3758db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176893
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
since:

commit 43b9ab55a3
CommitDate: Tue Nov 19 01:15:00 2024 +0100

    tdf#163956 calculate line height differently in FORMTEXT

Change-Id: Ic0e6e78f77b1adf6f5ca9fe7a48e113bd8592552
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176898
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
In preparation for a follow-up commit

Change-Id: Ifb3ee72cef3493cb1774c0a0c5ac6b5850309396
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176878
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
since:

commit 193207c5ab
CommitDate: Tue Nov 19 07:46:25 2024 +0100

    improve loplugin passparamsbyref

Change-Id: Ib2dfa03dfe66630ddb902ea4e75338ca70857e90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176899
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Change-Id: I186718f4e74ca3a77d92a62358d6007a1f6fd7fe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176903
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
sectfrm.cxx:854: Assertion `moveBackPos == &GetPrecede()->GetFrame()' failed.

Because the section has columns, and GetPrevSctLeaf() apparently returns
the body frame in a column.

(regression from commit c60ad7e0fb)

Change-Id: I16fcd7a42b24e54873cde0aa0087c7aa56b0a8e5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176738
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I39c56e381fda147b5dac885f95e93648c366225d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176901
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
so PathSettings could be reinitialized if the underlying assumptions it
made on initialization have changed, like the location where the
application is installed, which affects the "Internal" paths for e.g.
AutoText which are RO paths that aren't normall allowed to change.

Change-Id: I3e056ddfbfdc3257561bd67c39163b48d3dde9a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175951
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176904
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
In 6cb711645b the condition was not
good, because there is a special element called "attributes" which
is not a child element but contains attributes of the current element.
In the condition we should check for 0 elements that are not
"attributes".

Change-Id: I1d6995e13f288902c1cce85ac3b7d4e0da213df8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176900
Tested-by: Jenkins
Reviewed-by: Andras Timar <andras.timar@collabora.com>
That is a valid, but unsupported, markup, that is explicitly mentioned
in ODF 1.4 part 3 "Schema" sect. 6.3.4 "<text:note-body>":

  Note: The schema allows for the inclusion of <text:note> elements as
  a descendant of a child of the <text:note-body> element. While this
  may be reasonable for note types, it is not reasonable for footnotes
  and endnotes. Conforming consumers need not support notes inside notes.

(The "reasonable for note types" is obviously an editorial error from the time when ODF 1.1 text "reasonable for some future note types"
was reviewed for ODF 1.2.)

As the ODF also specifies, that a conforming consumer "need not
interpret the semantics of all elements, attributes and attribute values"
(ibid., sect. 2.4 "Consumer"), it is OK to silently drop this data, just
as done for other similar cases.

Change-Id: I0a417981087ebf225565628f14409661058d100d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176906
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
If the amster page has a field (like slide number) then render the
objects containing fields into a separate master slide layer.

Also change the rendering in such a way to be more flexible and
has less conditions. So in the renderer it doesn't really matter
if we are rendering a master slide or slide, what matters only is
if the object is already rendered and if we need to stop rendering
for some specified reason (like we encountered a field and need to
stop rendering and need to switch to a new layer).

Change-Id: I37ea2528427bbc1b3de938f960fb344866ee9399
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176911
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
so only the one that implements it needs to override it

Change-Id: I19e79c5746dbbebbf5914922587016fd03a902d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176848
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
and add setting 'BRAND_BASE_DIR' alongside existing 'UserInstallation'
which necessitates moving this block after aAppPath is determined

Done so that PathSettings will use the new locations set in bootstrap
for UserInstallation directory and not the locations detected during
preinit.

So autotext can be found relative to the final UserInstallation dir.

Change-Id: Ib6dadbec85a380475537027a8ce3972e31089711
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175960
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176905
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Since
commit 47a173edb6
Author: Noel Grandin <noelgrandin@gmail.com>
Date:   Sat Sep 15 18:36:08 2018 +0200

    use std::vector in PDFWriterImpl for encryption buffer

V547 	Expression 'buffOK' is always true.

Change-Id: I66b0f4de18cfca398da0b4091d980b259f5e9dfe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176916
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
after
    commit 664ecbd891
    Author: Noel Grandin <noelgrandin@gmail.com>
    Date:   Wed Nov 20 16:08:14 2024 +0200
    remove OutDevSupportType::TransparentRect

Change-Id: I57804ec9e9967c7082a1f657165d967d75b1dedf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176910
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
With multiple page breaks in a hidden section, the following frames were
only moved on the first break, and with the second break the frames go
out of order in SwSectionFrame::SwClientNotify().

Also handle multiple columns there.

(regression from commit a97e245ba1)

Change-Id: I4120e72bf083f3bed75f9305fbd757efd55f0b3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176773
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
The problem was that when un-hiding a section, table rows that contained
only empty paragraphs were not reformatted and remained at height 0.

It turns out that the table row that became visible did so because the
cells had a VertOrientation different from NONE and so
SwContentNotify::ImplDestroy() invalidated the cells' printarea.

However, the real problem isn't in the layout code at all, as it then
turns out that the reason why anything is reformatted at all is that
there are docinfo fields on the same page as the section and also in the
paragraphs at the start of the section, and these get invalidated
somehow after unhiding the section.

Unhiding the section didn't actually invalidate anything in the layout
because in ImplSetHiddenFlag() no change is detected, and that is
because the section was first hidden by removing its (false) condition,
which calls SwSection::SetSectionData() and that didn't call
ImplSetHiddenFlag(), again relying on docinfo field update to trigger
the relayouting.

Change-Id: Ie5d9e4d5a0467c17c662f20f8d54aa6b22b382da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176914
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
It seems that -[MTLCommandBuffer presentDrawable:] doesn't
immediately replace the previous drawable on screen so I
assume that there is some default minimum display time for
drawables.

LibreOffice only invokes this method in a timer so let
LibreOffice control the rate of window updates by presenting
the drawable right now.

Change-Id: Ibd8d72bd6ea0303f9582264791cc4356bda62c13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176879
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
Tested-by: Jenkins
Since
commit 1a1e953ee3
Author: Gökçen Eraslan <gokcen.eraslan@gmail.com>
Date:   Mon Jul 9 13:53:38 2012 +0300

    We use hidden signatures for now.

V1048 	The 'sigHidden' variable was assigned the same value.

Change-Id: If394032db0cc848864a640e45a0492eee28b5205
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176917
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
...Multiple copies of it will be created in all translation units that include this header file.

Change-Id: Ie63ed8b12c5579e0ff5cb77e4709eb4526c1e7f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176924
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I98f88e799a9a5128677f26e0c740c0764ffc8d9e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176934
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
with Alt+2/3/4 shortcuts

Change-Id: I0acb8fd2fc1b570a4cab3b3a6950a8e6294be316
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176895
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
Tested-by: Jenkins
Change-Id: I05ab2620aac82c07613ac01ec7cb57031e5a9eab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176805
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Tested-by: Jenkins
Change-Id: I553e7ed4782341fa0a2e8e7d444f158bc18d770e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176943
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Downloaded from https://ftp.postgresql.org/pub/source/v14.15/postgresql-14.15.tar.bz2

Change-Id: I1dc53ff2cf487f36d0611913f59917c5c0097690
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176940
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I6d3445671f0a086a800c1239e105e7732c652eb3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176953
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I94ef2c1465698dca75925845be0a4b4cdd9f40d9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176959
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I5c109872713b51cde54ad4617627e72070163601
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176783
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: Iced153f4258e2f27007cfbb7a63b78db7f6985dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176962
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
in SvXMLStylesContext::FindStyleChildContext

Change-Id: I384e8e36bc23b7d84b7ccda34e1ee29109e5f708
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176942
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
property for Pivot tables cells.

Change-Id: I1bff7a27cf169fd0876e361b22b4d7017f190b40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176897
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Let lcl_isValidPage simply return whether the
tab item is "valid" and don't set the out
param in addition, but let the callers do
that, which is more straightforward.

Change-Id: I35000d46899f457087c417e91ee1968aab7bd239
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176925
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Only set new value for nCurPos if there's a valid
new page instead of always doing it and then
reverting back to the old value.

Change-Id: I25f56e34da6260ee7c586fa25a88ff813f7c26f3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176926
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Use the Notebookbar menu button as parent for its
menu. This also makes the button position be used
as the reference.

This allows to drop the now unused
NotebookbarTabControlBase::GetHeaderHeight.

Also, set the reference point to be at the bottom
of the button, so the menu opens below it instead
of approximately in the middle, which matches
how other menu buttons behave.

To test: Set "Tabbed" for the UI variant in
"View" -> "User Interface", then click the
"Hamburger menu" button in the notebookbar.

Change-Id: I0717fad73ff7a42d2bdaaa53a73d055234003d3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176927
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Change-Id: If7aa91609409d3ad499a55348545d49d136d6606
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176928
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
The method is only used in the PriorityMergedHBox
subclass, which overrides the method anyway,
so drop the base class implementation.

Change-Id: If2c11377b1ca0ac0f3c6cd4fec9890cdcbbce0ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176929
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
The actual number of hidden children is not of interest here,
only whether there is at least one, so stop iterating once
the first hidden child is encountered.

Change-Id: Ice1a7461d2bfd9d576109771cf93deb6a17ef975
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176930
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Most implementations do not actually
do anything meaningful with Get/SetDepth,
so don't exception or accept their values.

To fix the bug, I could have just checked for
dynamic_cast<SvxEditEngineForwarder*>
(since it supports EE_PARA_OUTLLEVEL directly)
but this way seemed more encompassing.

The potential downside is that EE_PARA_OUTLLEVEL
will be requested as a real property
after GetPropertyValueHelper
with some of these dummy providers,
and who knows what UNO might do about that...

IF this patch causes problems,
then I need to implement Get/SetDepth
in SvxEditEngineForwarder
(or consider the dummy providers as SupportsOutlineDepth).

Change-Id: I74bf5e39a13bb1d588c39634347eb0982bda66b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176981
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Change-Id: Ic6796c91318bc838804ec30790f52480734e9b7f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176615
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Tested-by: Jenkins
To make the code contained, so it is easier to add the new
encryption method later.

Change-Id: Ie3e3194c2148f6c3cb8ac58709fcd5f74e84a93a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176886
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This adds AES256 test of encryption and decryption - an example
on how the Encrypt and Decrypt classes are used.

Also add a convenience function for Hash, accepting vector of
bytes as this is used in a lot of places.

Change-Id: I9b395c7afb8fac45cae8d7d8bd983f5daaafd64b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176887
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Change-Id: I25b6dd6868ac8f24155d4c2d45333ef47557c9c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176950
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
add a mutex around accesses of the internal data structures of
oslPipeImpl, to prevent data-races

Change-Id: Ia39961c0a3df0a5a5db31cc515d248d013998255
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176931
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Change-Id: If11d609ccf6bdaadfec6b3844e08589cb289aec3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176971
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I028737cac0b89344be5df55f9b60046230603979
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176987
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
* Update helpcontent2 from branch 'master'
  to a6f1acf9c43c6d2de0de9d8d3e3fad2c849f1278
  - Mute L10n on <embedvar>
    
    Change-Id: I268936d73e67b2108f92f1fa2bb2dbcb28955277
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/176975
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to 143fba581c7499e9e36971e52e18bada4a262be1
  - Revisit Writer Navigator Help page.
    
    Change-Id: I1bdc2fe094bcc3d75d5e1442af458f018ee60f81
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/176973
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Change-Id: I43e6048d34ee9c51e0602cd671a73b19145a9c17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176888
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Change-Id: Ie710e51faa7d65686d72a03d1ef4ca40dff8c27e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176889
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Change-Id: I11af98e069be3a8b5ec88a55024bb767e6b2c543
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176991
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: If4844f3f9a40495f3ceaf2603de5211b9f1555cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176972
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I9283b59499fe7739f06d926357218ef7eb916a41
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176997
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
!aTempContentText.empty().

Change-Id: If61fc09e7e19786ee055b78442b69f0147c8da75
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176998
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
although the actual order doesn't change there is a Delete/Insert of
the object in case the order should change.

::Insert will check if sorted and resort if not anyway, so presumably
if we just skip the middle-men and resort here if we need to then that
is equivalent, but without the invalidation for the already sorted case.

 #0  SwSortedObjs::Remove (this=0x510ed40, _rAnchoredObj=...) at core/sw/source/core/layout/sortedobjs.cxx:243
 #1  0x00007fffce0af130 in SwSortedObjs::Update (this=0x510ed40, _rAnchoredObj=...) at core/sw/source/core/layout/sortedobjs.cxx:282
 #2  0x00007fffcdf32c40 in SwAnchoredObject::UpdateObjInSortedList (this=0x51123c0) at core/sw/source/core/layout/anchoredobject.cxx:661
 #3  0x00007fffcdf8fc38 in SwFlyFrame::SwClientNotify (this=0x5112260, rMod=..., rHint=...) at core/sw/source/core/layout/fly.cxx:859
 #4  0x00007fffcdf9d1bf in SwFlyAtContentFrame::SwClientNotify (this=0x5112260, rMod=..., rHint=...) at core/sw/source/core/layout/flycnt.cxx:112
 #5  0x00007fffcd65bca8 in SwModify::CallSwClientNotify (this=0x4e68da0, rHint=...) at core/sw/source/core/attr/calbck.cxx:311
 #6  0x00007fffcd65bd71 in sw::BroadcastingModify::CallSwClientNotify (this=0x4e68da0, rHint=...) at core/sw/source/core/attr/calbck.cxx:316
 #7  0x00007fffcd65b42f in SwModify::SwClientNotify (this=0x4e68da0, rHint=...) at core/sw/source/core/attr/calbck.cxx:302
 #8  0x00007fffcd66771b in SwFormat::SwClientNotify (this=0x4e68da0, rHint=...) at core/sw/source/core/attr/format.cxx:300
 #9  0x00007fffcdf4448a in SwFrameFormat::SwClientNotify (this=0x4e68da0, rMod=..., rHint=...) at core/sw/source/core/layout/atrfrm.cxx:2843
 #10 0x00007fffcd65be1e in sw::ClientNotifyAttrChg (rModify=..., aSet=..., aOld=..., aNew=...) at core/sw/source/core/attr/calbck.cxx:325
 #11 0x00007fffcd66948e in SwFormat::SetFormatAttr (this=0x4e68da0, rSet=SfxItemSet of pool 0x1bcebe0 with parent 0x4e68e68 and Which ranges: [(88, 141), (159, 159), (1014, 1034)] = {...})
     at core/sw/source/core/attr/format.cxx:597
 #12 0x00007fffce649a2c in SwXFrame::setPropertyValue (this=0x5e47b90, rPropertyName="Size", _rValue=uno::Any("com.sun.star.awt.Size": ...))
     at core/sw/source/core/unocore/unoframe.cxx:1867
 #13 0x00007fffcdc4d7ea in SwTextBoxHelper::syncProperty (pShape=0x4dce770, nWID=89, nMemberID=0 '\000', rValue=uno::Any("com.sun.star.awt.Size": ...), pObj=0x0)
     at core/sw/source/core/doc/textboxhelper.cxx:995
 #14 0x00007fffcdf2e2d7 in SwAnchoredDrawObject::GetObjBoundRect (this=0x4e69dd0) at core/sw/source/core/layout/anchoreddrawobject.cxx:757
 #15 0x00007fffcdf320ca in SwAnchoredObject::GetObjRectWithSpaces (this=0x4e69dd0) at core/sw/source/core/layout/anchoredobject.cxx:575
 #16 0x00007fffcdf31eaa in SwAnchoredObject::InvalidateObjPosForConsiderWrapInfluence (this=0x4e69dd0) at core/sw/source/core/layout/anchoredobject.cxx:400
 #17 0x00007fffcdf32be5 in SwAnchoredObject::UpdateObjInSortedList (this=0x510e530) at core/sw/source/core/layout/anchoredobject.cxx:654
 #18 0x00007fffcdf8fc38 in SwFlyFrame::SwClientNotify (this=0x510e3d0, rMod=..., rHint=...) at core/sw/source/core/layout/fly.cxx:859
 #19 0x00007fffcdf9d1bf in SwFlyAtContentFrame::SwClientNotify (this=0x510e3d0, rMod=..., rHint=...) at core/sw/source/core/layout/flycnt.cxx:112
 #20 0x00007fffcd65bca8 in SwModify::CallSwClientNotify (this=0x4e364a0, rHint=...) at core/sw/source/core/attr/calbck.cxx:311
 #21 0x00007fffcd65bd71 in sw::BroadcastingModify::CallSwClientNotify (this=0x4e364a0, rHint=...) at core/sw/source/core/attr/calbck.cxx:316
 #22 0x00007fffcd65b42f in SwModify::SwClientNotify (this=0x4e364a0, rHint=...) at core/sw/source/core/attr/calbck.cxx:302
 #23 0x00007fffcd66771b in SwFormat::SwClientNotify (this=0x4e364a0, rHint=...) at core/sw/source/core/attr/format.cxx:300
 #24 0x00007fffcdf4448a in SwFrameFormat::SwClientNotify (this=0x4e364a0, rMod=..., rHint=...) at core/sw/source/core/layout/atrfrm.cxx:2843
 #25 0x00007fffcd65be1e in sw::ClientNotifyAttrChg (rModify=..., aSet=..., aOld=..., aNew=...) at core/sw/source/core/attr/calbck.cxx:325
 #26 0x00007fffcd66948e in SwFormat::SetFormatAttr (this=0x4e364a0, rSet=SfxItemSet of pool 0x1bcebe0 with parent 0x4e36568 and Which ranges: [(88, 141), (159, 159), (1014, 1034)] = {...})
     at core/sw/source/core/attr/format.cxx:597
 #27 0x00007fffce649a2c in SwXFrame::setPropertyValue (this=0x4a86e10, rPropertyName="Size", _rValue=uno::Any("com.sun.star.awt.Size": ...))
     at core/sw/source/core/unocore/unoframe.cxx:1867
 #28 0x00007fffcdc4d7ea in SwTextBoxHelper::syncProperty (pShape=0x4dc65f0, nWID=89, nMemberID=0 '\000', rValue=uno::Any("com.sun.star.awt.Size": ...), pObj=0x0)
     at core/sw/source/core/doc/textboxhelper.cxx:995
 #29 0x00007fffcdf2e2d7 in SwAnchoredDrawObject::GetObjBoundRect (this=0x4e3a0d0) at core/sw/source/core/layout/anchoreddrawobject.cxx:757
 #30 0x00007fffcdf320ca in SwAnchoredObject::GetObjRectWithSpaces (this=0x4e3a0d0) at core/sw/source/core/layout/anchoredobject.cxx:575
 #31 0x00007fffcdf815b3 in (anonymous namespace)::IsNextContentFullPage (rThis=...) at core/sw/source/core/layout/flowfrm.cxx:217
 #32 0x00007fffcdf81002 in SwFlowFrame::IsKeep (this=0x4e5a630, rKeep=..., rBreak=..., bCheckIfLastRowShouldKeep=false) at core/sw/source/core/layout/flowfrm.cxx:259

Change-Id: If2191e8b99d1b0347bab54a704013ce0a9a19410
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176992
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id71d10060c79d36095bbd952b89aa6af68a29a6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176999
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
!rPolyPolygon.empty().

Change-Id: I61b79d0995cc08b70c2a39bdeb043a22722313e2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177000
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I8ba7871cd3ca7580230c31dedf468aaa8219241a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176915
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I1eaf7fbb481f061948d65e9b7e855d9a9261e3ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177001
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: I5819652b2f5ab491b7412e6cb4d0159f640297bf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177012
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit a50a2bf8e8
Author: Szymon Kłos <szymon.klos@collabora.com>
Date:   Thu Jan 24 11:22:22 2019 +0100

    tdf#86731 Don't show 'start from beginning' when dictionary is missing

Change-Id: Ib71051ddbb3318c74fb5020ec27560f1c6f73893
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177017
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: If6a656f47cb88dd218af660def31ece572a3b8ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176989
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Ie328b5120bc879702db351555c9db5d6b661be41
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176990
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: I7d8375e822dabcceeaf25eaf4ba1f29ce7494337
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176996
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I49cf90c401243c9606372735ad160f5f2b63b603
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177026
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I8322b68ce93adedbcb5ae2462b5ed1868d3552db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177013
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I62aabd66d368856959be032d866888b82b018dd9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177018
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
This reverts commit 32eb29377c.

Reason for revert: Original commit did not fix tdf#163945

Change-Id: Ie66edde40ed44f89bb28043db074fab7e6e06a49
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177025
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Ieb038d21f27c7d31362be44b71fd13e2932fcf69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176995
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I4220b8398e75589bd54b67942cf987244b1d0b0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177035
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Change-Id: Idbd94e0eb49819f737a90bcb161cd3dd88f24221
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177014
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Identified by M. Kaganski

Change-Id: I02c3ab0ec29367ebc2e73586044d729eab24231d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177029
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
SwFrame::PaintSwFrameShadowAndBorder() is called by upper's
SwFrame::PaintSwFrameBackground() so it needs another check.

(regression from commit ff7f1b59e2)

Change-Id: Ic7ac28e4af8e0abf4970d87edb40a79ad4d25156
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177032
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Since
commit 47527821f3
Author: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
Date:   Mon Nov 16 22:17:07 2020 +0100

    SwGrfNode: Remove graphic arrived hack

Change-Id: I7c0a3b0208d2da06781be6b69e04e9958b762870
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177036
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update translations from branch 'master'
  to 318e92fb60edf7a9889cac87bd0489123553ce1d
  - update translations for master/25.2.0 alpha1
    
    and force-fix errors using pocheck
    
    Change-Id: Ie52bd18e7f82e90d5095b195ffbf6bbc4f84e254
* Update translations from branch 'master'
  to 096ea211364abd9f3a59671796e3aabb093faf54
  - add translation files for Santali (Ol-Chiki) (sat-Olck)
    
    Change-Id: Ic6efa6bfeee7fbd70c8fd629e3e7f87c8e840f8d
Change-Id: I6cdc09f1c44acf3c7e2d8b24ccb5a73f175acbc6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177043
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
found cycle
    FmEntryData::FmEntryData(const FmEntryData &)
    svx/source/inc/fmexpl.hxx:148

    FmFormData::FmFormData(const FmFormData &)
    svx/source/inc/fmexpl.hxx:230

    FmControlData::FmControlData(const FmControlData &)
    svx/source/inc/fmexpl.hxx:252

    std::unique_ptr<FmEntryData> FmEntryData::Clone()
    svx/source/inc/fmexpl.hxx:161

Change-Id: I2bef463f62b4513c473bb99eb999a97e99f5e602
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176993
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Change-Id: I9ee946ceabf59e4126db938d6abda446fcf9ce36
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176994
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: I24666a7746f8920ddf84731f204f3e1a5b9b0c85
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177024
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: I40d4207eafe46736a122e07c56f6db94cb517697
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177044
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
and

cid#1634866 Missing move assignment operator

Change-Id: Iaf588bdd9185da6afeee26eea0607e72a9792bab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177045
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If5be3912a516f279ada6f6b5d82b927701a0ac16
No need to check chart title paragraph style name and ID, since its
never exists.

follow-up of:
d7214aba95
6fdad72372

Change-Id: Ieffe3026adc848cfbf3a847b4f876b5aa2e2a026
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177011
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Tested-by: Jenkins
...not the result.

Change-Id: I4ba8afa5989aea906000bb9c4059855015055002
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177042
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I6cb0d64119b859446e015eccb6438396960f351e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177068
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Change-Id: Ibe64b9fcccf33471d96bb0fb1aa896cb456657f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177069
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Iac23bad883f54bd980d051fe74474efdcd2572a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177063
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: I7206e5ac7f525d810505230ef4dcdaa5fff3fbf3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177065
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I171b90858f58c4afa8984f55864712e8b7a93b2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177088
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Before commit 0c96119895 (tdf#159565
prerequisite: make hidden sections have zero-height frames, 2024-02-15),
the hidden sections were absent from layout, so didn't appear in the
SwTOXBaseSection::Update* functions. Now they are zero-height, but
present, so their visibility must be taken into account explicitly.

Change-Id: I95cc72b383a99e1f65152579c5458e253a3f60ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177079
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I23379077766af9c04357bd098b132a03a9b35877
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177061
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: Ifbdf8e07aa8085e465df45b48fe54345f0ad56e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176961
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: Ic07d9b5e5ed5c486f2fefbd535b4209a1a62eae6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177066
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: Iae168766fdfcbf4c68aa0770b0c42e96a61001c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176964
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I23ab742801ab00b68e4f8c5e7bc415c401e28c37
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177076
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
The encoding of the string passed to Hunspell/hyphen service depends on the
encoding of the dictionary itself. When the usual UTF-8 encoding is used,
the resulting octet string may be longer than the original UTF-16 code unit
count. In that case, the length of the buffer receiving the positions will
be longer, respectively. But on return, the buffer will only contain data
in positions corresponding to the characters, not code units (it is unclear
if we even need to pass buffer that large). So just as the following loop
only iterates up to nWord length, the calculation of hyphen count must use
its length, too, not the length of encWord.

I suspect that the use of UTF-16 code units as hyphen positions is wrong;
it will break in SMP surrogate pairs. The proper would be to iterate code
points. However, I don't have data to test, so let it be TODO/LATER.

Change-Id: Ieed5e696e03cb22e3b48fabc14537372bbe74363
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177077
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
When this method gets called the first time, insert
a widget with a QVBoxLayout at the beginning
of the dialog's layout, remember and return that.
On subsequent call, return the same one.

Initially, handle the case where the dialog's
layout is a QBoxLayout (subclass), which is
the case for the "File" -> "Printer Settings"
-> "Options" dialog in Writer.

This should be easy to extend for other layouts
as well when needed. For now, assert when another
layout is used, so it will become clear when
working on adding support for another dialog
that needs this.

Change-Id: Ia41a87f8cf62666efc91c05f25dae5fccb3da41d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177054
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
If QtInstanceNotebook::get_page gets called with
and ID that none of the existing pages actually have,
return nullptr early and don't try to QtInstanceContainer
instance for the null widget, which would trigger an
assert when nullptr is passed to the QtInstanceWidget
base class ctor.

Calling QtInstanceNotebook::get_page with an ID for
which no page exists yet is what
SfxTabDialogController::AddTabPage does explicitly
before asserting a page to assert that there isn't
such a page yet.

SalInstanceNotebook::get_page and GtkInstanceNotebook
also have specific handling for that case.

Change-Id: Ib2044fd4c9f986f2252afed5754a6383f940e5e6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177055
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Change-Id: I0943a2d8e35acea8e1af97bdd151bba65b0af24a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177056
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Add a helper method QtBuilder::deleteObject
that takes care of marking no longer needed
objects for deletion and use it in the 3 places
so far calling QObject::deleteLater themselves.

If the object marked for deletion is a widget,
hide it as well, as it could otherwise still
be "in the way".
This was seen wit the edit (QLineEdit) of the editable
combobox in the "File" -> "Properties" dialog,
"General" tab (in a WIP branch for adding support
for that dialog), where the unnecessary edit was
shown on top of the combobox, hiding the combobox
content + dropdown button.

Change-Id: Ie299b80824c94d40cfac9f7962c9bd4ba95b446d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177057
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Change-Id: I9db111c16865a2b7514e62a21a66d5497cda91fe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176966
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I1e460b817dd876977e520251b6a79d9fb9c283d0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177100
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I38b932ab81842b5f209d89ef5229d61e10f3ffd0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177097
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Id5d1b36ba734c3cf10b83f472ab5afe3a142a464
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177060
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Ib0ed8868b94c1470768a95fb26767cf25fe4bf8f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177028
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I01cc9d30499783e531777eb17e332490afab4d6f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177098
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Ided473c985f8bdca007d3da34f92e42fb5080f54
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177099
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: Id74c10f5965d97bf24b49fc9ee777bf7b0ad251d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177051
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: If150b8fec5350cb513550711a61923cc1a273a80
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177052
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I3207e070fba8407fd8475c8d774b3a500cae8e17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176965
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I183330f8c2e947d6c8dffbcabc7da6c115e08a8c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176963
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I161af7b70421a819f5ecb6b95867e6fa142fe3ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177046
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: I95b7b249082f5c2755ca54a0656912011d2cb116
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176983
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I0a6d9a12f3e6d84ad4ba665ba16dd05fb6f9786f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177048
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: I93494b4dec546d48b7dced2f1a6c774177c99c86
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176782
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: I377154880c52685e5b1588221d631c51967c490a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177047
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: I9b27cfb715f6cd0a9b6ea21da9cb24fc8d8ec739
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177050
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Change-Id: Ifea96f2cf586b4e5b63761e2f03944dade764430
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177073
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Change-Id: I35a44dedd27b5c3470ed035e64ec0461d8d0cbdf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177074
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
This allows the layer objects overlay to not be done when the value set
for DisableLayerHighlighting is less than the number of objects in the
layer of the tab which the mouse is hovered over in the layer bar.

Change-Id: Ie49ecb11bfb029ada57824c0acbbd133e1fe83b2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176809
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Change-Id: If94b948ddcc2fac9bce254947b78afc1c6f0383e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177078
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I5fc11037902bc6200fdaf4749260efe8e658bdce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177070
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Ide1f6fd2fc8a80b31353a14e416505a2349cea2b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177071
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I1303e9d48e92ac00eee12af9ed299cdaad2ce009
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177072
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
And drop EPosition, which duplicates EPaM, except for its default
ctor (used in a single place).

Change-Id: I48bb6dafcba84465d61579df0ec71b815945532a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177075
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Change-Id: I958365b3db058ec809702a5ddde1d153467f21ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177158
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Tested-by: Jenkins
Change-Id: I0b3e02669b326533f4579f57a41a16da53cf8ff4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177188
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
This reverts commit aee4e18411.

It seems to break stable API.

Change-Id: I64b7b1b5a5f5d53649a6117de34790238313ed23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177170
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
This reverts commit 16a5ae7c90.

It seems to break public API.

Change-Id: I0ef2c6e975b4cf20b9894ddf33f36444e2230ca4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177168
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
... which is also used in queryAlternativeSpelling

Change-Id: I7f0bbbc6e598d56156efe1446f422f9674ed6f25
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177187
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
and

cid#1555525 COPY_INSTEAD_OF_MOVE
cid#1555562 COPY_INSTEAD_OF_MOVE
cid#1555676 COPY_INSTEAD_OF_MOVE
cid#1556099 COPY_INSTEAD_OF_MOVE
cid#1556527 COPY_INSTEAD_OF_MOVE
cid#1556607 COPY_INSTEAD_OF_MOVE
cid#1557084 COPY_INSTEAD_OF_MOVE
cid#1557141 COPY_INSTEAD_OF_MOVE
cid#1557937 COPY_INSTEAD_OF_MOVE
cid#1556099 COPY_INSTEAD_OF_MOVE
cid#1557774 COPY_INSTEAD_OF_MOVE

Change-Id: Ifd716627d985dd43f4d1a9ce3df151e519fab03a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177163
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Change-Id: I8a25e19d3de1515a03fe478fa28c1f5eec0963c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177165
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9a19dcc2fbf5297fe391fcd3644843eb51afdb9f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177200
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
On macOS, flushing with Skia/Metal is noticeably slower than
with Skia/Raster. So lower the flush timer priority to
TaskPriority::POST_PAINT so that the flush timer runs less
frequently but each pass copies a more up-to-date offscreen
surface.

Unfortunately, lowering the priority causes tdf#163734 to reoccur.
When a dockable window is dragged by its titlebar, a rectangle
may be drawn in its parent window. However, the Skia flush
timer doesn't run until after the mouse button has been
released (probably due to lowering of the Skia flush timer's
priority to fix tdf#163734). So run the parent frame's Skia
flush timer immediately to display the rectangle.

Change-Id: I289eab85a087cb76a751dc6b777342b8dee49e1c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177190
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
Tested-by: Jenkins
Change-Id: I94d75d6c2b69937e5d0f29b498518999b1f49120
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177167
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
So the setting fetched at ctor time for UserInstallation (and
BRAND_BASE_DIR) may no longer be true, so expanding variables based
on those earlier seen values results in unwanted paths.

add XInitialization to SubstitutePathVariables (like done for
PathSettings) to allow reiniting these explicitly once.

Change-Id: Ia930ea71cb09adc91d6d47ee047c44b24222e8a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175961
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 410f6b50eb44276b1d2095c844244ef4d0ddefaa)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177109
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
and

cid#1608078 Overflowed return value
cid#1608461 Overflowed return value

Change-Id: Ic5fa20994c5be5d6c09a21c0bd1e3530ae9a6941
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177164
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iecd3cf707fd692a10382f3a6be02c2dd94f02111
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177201
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
mimetype must not be zipped, just stored.
mimetype was correctly stored with the first zip command,
but mimetype was also present in the files list on the second zip command.
This patch remove mimetype from the files list of the second zip command.

Change-Id: Ie66f06103bbad2700eee4986df878b9ebd4c0a09
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175930
Tested-by: Jenkins
Reviewed-by: Laurent Balland <laurent.balland@mailo.fr>
Change-Id: Ie0d14ef985bebf4acdb08c460675ebba75f88a8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177166
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
In WidgetBuilder::handleChild, pass the child type
not only to WidgetBuilder::tweakInsertedChild, but
also to WidgetBuilder::handleObject (add a new param
for that) and from there down into the virtual
WidgetBuilder::insertObject, so it can be evaluated
by subclasses when creating new widgets.

While it is not used yet, an upcoming commit will
make use of it in QtBuilder, in order to distinguish
between the two "GtkExpander" children: the label and
the actual content child.

As described in the "GtkExpander as GtkBuildable" doc [1]:

> The GtkExpander implementation of the GtkBuildable interface supports
> placing a child in the label position by specifying “label” as the
> “type” attribute of a <child> element. A normal content child can be
> specified without specifying a <child> type attribute.

[1] https://docs.gtk.org/gtk3/class.Expander.html

Change-Id: I3e308a6642d72b55d0ccc597dac716b236c22d61
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177191
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
weld::Window::set_centered_on_parent only ever gets
called for weld::Dialog instances, so move it to the
weld::Dialog subclass.

For the Qt implementation, no longer trigger an assert because
of the method being unimplemented (doing nothing), as QDialog
opens centered on its parent toplevel by default.
Quoting from the QDialog doc [1]:

> Note that QDialog (and any other widget that has type Qt::Dialog) uses
> the parent widget slightly differently from other classes in Qt. A
> dialog is always a top-level widget, but if it has a parent, its default
> location is centered on top of the parent's top-level widget (if it is
> not top-level itself).

(API for moving a QWidget to a different position like
QWidget::move [2] exists, but would only work on X11/XWayland,
not Wayland.)

[1] https://doc.qt.io/qt-6/qdialog.html#details
[2] https://doc.qt.io/qt-6/qwidget.html#pos-prop

Change-Id: I14d41f91e5297c6e58cb4edb2ee98f19814d45cb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177192
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Implement support for "GtkExpander" objects in .ui
files. As Qt doesn't seem to have any equivalent, add
a new QtExpander class that subclasses QWidget and
has a button that can be used to toggle visibility
of the widget that is the GtkExpander's [1] content child.

For a visual appearance similar to GtkExpander,
set an icon for the button ("go-down" and "go-next"
from the icon theme, which are arrows like the ones
shown on a GtkExpander, at least with the Breeze
icon theme).

In QtBuilder, implement handling for "GtkExpander"
objects:

* Create an instance of the new QtExpander
  class.

* Identify the content child, which can be distinguished
  from the label child by the fact that the latter
  has a "label" child type set, see also previous
  commit

    Change-Id: I3e308a6642d72b55d0ccc597dac716b236c22d61
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Sat Nov 23 20:54:47 2024 +0100

        tdf#130857 Pass child type to WidgetBuilder::insertObject

* Erase the "visible" property for the content child,
  as otherwise the content widget would be initially
  visible even if the expander is set to not be
  expanded. (QtExpander takes care of this, so
  ignore the property set in the .ui file.)

* For the label child in GtkExpander, simply take
  over its text to QtExpander's button, then mark
  the label for deletion, as it's not needed
  otherwise.

Support for the "Document in Use" dialog that
has a GtkExpander and thuse makes use of this
will be declared in a separate commit.

[1] https://docs.gtk.org/gtk3/class.Expander.html

Change-Id: Id2366834cb542eba613ea087e70f3a812d20fa89
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177193
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Declare support for the dialog shown when trying to
open a file that's already opened by another user
(or more exactly, for which a lock file suggesting
that it's opened by another user or LO instance
exists).

This means that native Qt widgets are used for that dialog
now when using the qt5 or qt6 VCL plugin and starting LO with
environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.

This is the first supported dialog making use of "GtkNotebook"/
QtInstanceNotebook, i.e. of what was implemented in previous commit

Sample steps to see that dialog:

* start Writer, save document as /tmp/test.odt
* kill LibreOffice
* open the lock file ( /tmp/.~lock.test.odt# ) in a text
  editor and change the user name to a dummy one, save.
* start LO with qt6 VCL plugin and try to open the document

Change-Id: If30736e70172c6b25feee0072c952274754aa81e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177194
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Switch the order in which the children of the grid in the
.ui file are defined so that the order matches the visual appearance,
which makes sure that tab focus order with the Qt-based VCL plugins is
correct as well in that dialog when using native Qt widgets after
support for that dialog was added in

    Change-Id: If30736e70172c6b25feee0072c952274754aa81e
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Sun Nov 24 00:22:26 2024 +0100

        tdf#130857 qt weld: Support "Document in Use" dialog

See

    commit 02692566ad
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Oct 24 17:43:35 2024 +0200

        tdf#130857 optnewdictionarydialog.ui: Define focusable widgets in order

for more background.

Change-Id: Ie18c7b91911fea612167510e9bb098d63e1e9227
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177195
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Now that "GtkExpander" support has been implemented,
declare support for the "Safe Mode" dialog that can
be triggered via "Help" -> "Restart in Safe Mode"
and confirming with "Restart".

This means that native Qt widgets are used for that dialog
now when using the qt5 or qt6 VCL plugin and starting LO with
environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.

Change-Id: I67ef04356a5147c24442cd3ec84e4bbc644b3a71
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177196
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Add a new QtInstanceExpander class that is the
weld::Expander implementation using a native
Qt widget. It uses the custom QtExpander widget
added in

    Change-Id: Id2366834cb542eba613ea087e70f3a812d20fa89
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Sun Nov 24 00:07:44 2024 +0100

        tdf#130857 qt weld: Implement "GtkExpander" equivalent

Extend QtExpander to provide what's needed
to implement the QtInstanceExpander methods.

Let QtInstanceBuilder::weld_expander return an
instance of the new class.

Signal handling still needs to be implemented
(calling `weld::Expander::signal_expanded` when
the expanded state is toggled).

QtInstanceExpander is e.g. needed by the "Set Password"
dialog. ("File" -> "Save As", check "Save with password"
checkbox and press "Save" to trigger the dialog.)

Change-Id: I7e3a332c0417b1897ae57d7d4c29609245fb5e19
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177197
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Declare support for the "Set Password" dialog that can
be triggered in Writer using "File" -> "Save As", check
"Save with password" checkbox and press "Save" to trigger
the dialog.

This means that native Qt widgets are used for that dialog
now when using the qt5 or qt6 VCL plugin and starting LO with
environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.

This makes use of QtInstanceExpander added in

    Change-Id: I7e3a332c0417b1897ae57d7d4c29609245fb5e19
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Sun Nov 24 01:20:31 2024 +0100

        tdf#130857 qt weld: Add QtInstanceExpander

Currently, I see a small rendering issue when
opening that dialog and expanding the expander:
The "Enter password to allow editing" and
"Confirm password" label text is a bit cropped.
It's shown fine when manually enlarging the dialog a bit,
however.

Change-Id: I37775fa3a39d621696d2a6aaa49bd11d6cfb9350
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177198
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Call weld::Expander::signal_expanded when the
QtExpander expanded state changes, e.g. when
its button gets clicked.

In order to do that, introduce a signal in
QtExpander and connect to that in
QtInstanceExpander.

With this in place, a breakpoint in
weld::Expander::signal_expanded now gets
hit as expected when (un)expanding the
expander in the "Set Password" dialog triggered in Writer
using "File" -> "Save As", check "Save with password"
checkbox and press "Save" when using the qt6 VCL
plugin with SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.

This implements what was mentioned as still
missing in earlier commit

    Change-Id: I7e3a332c0417b1897ae57d7d4c29609245fb5e19
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Sun Nov 24 01:20:31 2024 +0100

        tdf#130857 qt weld: Add QtInstanceExpander

as

> Signal handling still needs to be implemented
> (calling `weld::Expander::signal_expanded` when
> the expanded state is toggled).

Change-Id: I9cd1b2cc99018f84ba930d55399953266119bed0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177199
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Change-Id: Idd509e40f96373fc29d0f313bcb5c14ee8490f17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177212
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
instead of using margin property in .ui where size_request
doesn't take such margins into account, while pref_size does.

Change-Id: I7c557fd63c438515814ad32b9627895c27c13b81
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177213
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifa399d9bb42bad8e5209f5937052fa9b616f8914
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177215
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic6c59500805a8710150f083ff089b2e1c4c36530
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177217
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
second identical branch was added in
d519cbe892

and
V530 The return value of function 'GetTitle' is required...
to be utilized

the unnecessary GetTitle() call that was duplicated in
d519cbe892 was there since
9ae5a91f79 (initial import)

Change-Id: Ied25faf177184cc1b1ca4a512285232bf966c1e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177209
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
...by the 'emplace_back' method.

Change-Id: I76a0a655d5fc5b123cd1018cb010ff9c9625c1d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177226
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
it has to match convertTarget result from unomodel.cxx
which is used on export of animations

Change-Id: I61df0b82681628722516c17c110acd90ce25b881
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172875
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177223
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I35ea503d254f36c8ab7307b157c87d5c2e0a8e1d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173050
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177224
Tested-by: Jenkins
Change-Id: Id7b5e1675963fd4b65974f4da39dbdccd45af549
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177143
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
The idea of IPDFEncryptor is to be the interface to encrypt the
stream/string in the same way, irregardless which PDF encryption
version/revision we are using.

Change-Id: Ie7835384f1be5a44c53985b01c8187323400aa0e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176890
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
...alongside each other are identical.

Started when a call inbetween was removed in
e50f6c0239.

and
V1053 Calling the 'EnableRTL' virtual function in the constructor
...may lead to unexpected result at runtime.

and
V1051 Consider checking for misprints. It's possible that the
...'nTopPos' should be checked here.

V1028 Possible overflow. Consider casting operands of the...
'nStartCol + 1' operator to the 'sal_Int64' type, not the result.

Change-Id: Ided25ab6dc9e9d4a1c72a1b809de586c7b890ce0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177218
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
DocumentStyleLanguage used the wrong AccessibilityIssueID.

Change-Id: I7bbb9737abc9b36972376e86996e65443014b178
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177040
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
See tdf#94879 for motivation.

Change-Id: I4945cec5ee88700360c5a8ff706105dbc7f95f6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177229
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
we still take color from the JSON

Change-Id: I6b83cc8aaaa3e9127d85ec06589bac7ed4472f71
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173083
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177227
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
don't merge animated and non-animated objects on single
layer

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I259507e08c95c3662e60f7691646395d1a840465
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173084
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177228
Tested-by: Jenkins
be sure we don't overwrite the real "visibility"
value when other property is read

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ied2285e8183665b5b48d10d74e1cc052cf8edcbe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173110
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177235
we need to keep the order correct, especially
when we have stacked shapes which are animated
and some are non-animated.

in case:

non-anim
anim
non-anim
anim

don't allow to join non-animated layers into one

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic5d94478b691a80fd62853946ebedec075963f44
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173116
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177236
Tested-by: Jenkins
the more complex label-for/labelled-by only need to get used
when when using something non-standard as a "label"

Change-Id: Ibbe13b868622646e20357703e31cfc26e31fac7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177238
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Change-Id: I297159aec76a497c5082c70adc0c2e45878322a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177240
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Dispatching .uno:Line in LOK mode inserts a line shape with defaults at
the center of the current slide, but dispatching .uno:Bezier_Unfilled
starts an interactive mode where the preview is not exposed in LOK, so
looks weird.

.uno:Line works because DrawViewShell::FuPermanent() actives the "create
directly" flag for SID_DRAW_LINE.

Fix the problem by doing the same for SID_DRAW_BEZIER_NOFILL in the next
block: we get a curve shape with reasonable defaults with this.

If an interactive curve drawing mode is wanted for LOK in the future,
then that would be handled outside LOK anyway, with taking the already
drawn curve's properties at UNO command dispatch time.

Change-Id: I03feded76578575ecfbd4a0d79c7ca1a31e37093
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177250
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
+ 'Records:' to 'Compare by:'
+ if row is selected in 'Compare:', 'Header:' checkbox should be labeled as
  'Data contains column headers' and vice versa for column

Change-Id: Ic9dfbab9a5636312c40b6945af3abdcd9b190310
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177230
Tested-by: Jenkins
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
Change-Id: I60c991ba32c85ed872c6086104774259d1ac3b24
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177239
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iccc0993fd9736842fc3e9783306d21aabc813e5f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173121
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177249
Tested-by: Jenkins
ViewShellBase is the SfxViewShell and is the analogue of the equivalent
writer/calc SfxViewShell's, while a DrawViewShell is one of multiple
sd::ViewShells that can exist inside that SfxViewShell

Issue:
* When creating new shell instances, background color is fetched from application configuration.
* When multiple users are active on an Impress document, if one switches to notes view, a new shell is created.
* Background color for the new shell is fetched from app colors.
* If another user has switched to dark mode, the user which just switched to notes view, will see dark mode for their background.

Moving the SdViewOptions options down the ViewShellBase means that
multiple sd::ViewShells hosted within that ViewShellBase share the same
view settings.

Change-Id: Id875260dda89311ab8029ead08b47f80fd14604f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177253
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Make the `pWindow` param for `ImplFindDlgCtrlWindow`
a const pointer, which removes the need to
`const_cast` when calling the function in
Window::getLegacyNonLayoutAccessibleRelationMemberOf.

Change-Id: I2225f5c4be33060c1e3fddd5e83760e68856585d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177245
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Unused since

    commit ed07ec7606
    Date:   Sun Dec 20 16:49:12 2020 +0000

        drop never completed GtkSalPrinter

Change-Id: Iacbf84449175863e5a6ad09f6946b3bd3b503a9a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177237
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Instead of having a purely virtual
VCLXAccessibleBox::IsValid that all subclasses
implement the same way, deduplicate this by
moving the implementation to the VCLXAccessibleBox
base class.

Change-Id: I354bf3d0be6751a165b373c06b951c6f0b63480b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177252
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: I1c84f84f5d656e2a11f5b3a594f7f19641ff51ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177255
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Change-Id: I45cbfbef038653e1e99e9b2f8907a1739d6c2214
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177257
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Since
commit 142dc93d9a
Author: Michael Stahl <Michael.Stahl@cib.de>
Date:   Mon Oct 26 16:41:29 2020 +0100

    (related: tdf#131679) sw: only unmark if this SwFlyFrame is marked

Change-Id: Ia916161d336dad3d06e9df0c5747fda78dbd404c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177254
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: I7b9d61a5a6752985d17633f2a1aff80d86a7011a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177246
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Change-Id: I34ddf601a4f48aa894e32ae0842fd30f4cfe823b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177247
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Make the ImplGetLabelFor param const, so the const
`this` can just be passed to it as is.

Change-Id: Ie6f0c5100cc67050012d9165b436cbd76550d8d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177248
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Use cursor that includes section nodes, the core implementation should
not need start/end to be a text node.

Fix one case in SwDoc::ResetAttrs() where a text node is expected.

(regression from commit 7ab349296d)

Change-Id: I56960b5d233ced02703a7c522ebe6afa3347cd25
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177259
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
A database range  is an <table:database-range> element in file  format. It has the
attribute 'table:contains-header'  with values  'true' (default) and  'false', and
the attribute  'table:orientation' with values  'row' (default) and  'column'. The
attributes are only written to file, if the value is not default.

If the  selected range has a  database range element then  use its contains-header
property rather than what was last selected.

Change-Id: I120daa2756c50b6c51fab4f6a0549a0b874abaee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177231
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
Tested-by: Jenkins
...so the existing C code started to fail with

> In file included from workdir/UnpackedTarball/mariadb-connector-c/libmariadb/ma_alloc.c:20:
> workdir/UnpackedTarball/mariadb-connector-c/include/ma_global.h:687:25: error: two or more data types in declaration specifiers
>   687 | typedef char            bool;   /* Ordinary boolean values 0 1 */
>       |                         ^~~~

(And the !defined(HAVE_BOOL) there, always being true, apparently started to get
in the way now and thus needed to be removed, whatever its original purpose.)

Change-Id: I781458d643e01a7199e19a178da3a32520d16b34
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177260
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
This fixes my LO 7.1 regression from bug 108820.

The problem was that footnotes-placed-in-table-headline
were being visually removed if a split-table was ever joined
during editing, etc. (i.e. one less page needed).

Avoid the join() cleanup code being triggered on GetFollow frames
because those were wrongly being informed that there was a footnote,
despite being deliberately disallowed in IsFootnoteAllowed,
so it really must not HasFootnote()!

make CppunitTest_sw_core_layout \
    CPPUNIT_TEST_NAME=testTdf158713_footnoteInHeadline

Change-Id: I8f395217ba66a258738fc3f32846b952c69d367b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177059
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
...after 3de3f660af "add a
--with-system-java-websocket"

Change-Id: If96dafacbc33746934a2d388b11436c797290559
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177275
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
While debugging tdf#163945, Xcode's Instruments application uncovered
the following performance bottlenecks when using Skia/Metal:

1. Very slow rendering an NSBox:
   Many system colors have the NSColorTypeCatalog color type. For
   some unkown reason, setting the NSBox's fill color to a color set
   to NSColorTypeCatalog causes drawing to take at least twice as
   long as when the fill color is set to NSColorTypeComponentBased.
   So, only draw with a fill color set to NSColorTypeComponentBased.

2. Excessively large offscreen buffers when drawing native controls:
   The temporary bitmap was set to the control region expanded by
   50 * mScaling (e.g. both width and height were increased by 200
   pixels when running on a Retina display). This caused temporary
   bitmaps to be up to several times larger than needed. Also,
   drawing NSBox objects to a CGBitmapContext is noticeably slow
   so filling all that unneeded temporary bitmap area can slow down
   performance when a large number of NSBox objects like the status
   bar are redrawn in quick succession.
   Using getNativeControlRegion() isn't perfect, but it does try to
   account for the focus ring as well as the minimum width and/or
   height of the native control so union the two regions set by
   getNativeControlRegion() and add double the focus ring width on
   each side just to be safe. In most cases, this should ensure
   that the temporary bitmap is large enough to draw the entire
   native control and a focus ring.

3. Unncessary copying of bitmap buffer when drawing native controls:
   Let Skia own the CGBitmapContext's buffer so that an SkImage
   can be created without Skia making a copy of the buffer.

Change-Id: Ibd3abb4b9d7045c47268319772fe97a5c4dba3c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177225
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
It had been introduced in commit de9dba9275
(gridsort: introduce XSortableGridDataModel::removeColumnSort, 2011-01-18),
but in getTypes, an explicit exclusion for it had been made.

Change-Id: I4915949b26ef15905ec810aa54e69d0e62100b90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177256
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
in a SalInstanceEntryTreeView, otherwise the ctrl+pageup/down gets
processed twice by the toplevel notebook due to the forwarding used
here.

Change-Id: Ic5003064ddba44f940fb4c4a727d8081c3644361
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177277
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Apparently, the value of defaultRowHeight is just some nice
kind of suggestion to Excel, since optimalRowHeight rows
can be less than what is specified in defaultRowHeight.

Since Calc always treats defaultRowHeight as authoritative,
on export it needs to always export it that way.

Apparently there are some TWIPS calculations
going on because while Calc defaults
to exporting a defaultRowHeight of 12.80,
Excel is still round-tripping it as 12.75.

make CppunitTest_sc_subsequent_export_test2 \
    CPPUNIT_TEST_NAME=testTdf120168
(In this unit test, it originates as customHeight=1,
but Calc was round-tripping it without that.
Although the round-trip looked identical in Calc,
in Excel the empty rows were now much shorter,
being height-formatted according to the default font size.)

Change-Id: I7ed6b612de0fa508a89dc4cf357b873de230962c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177276
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Change-Id: I764cd7eed4fe91bac7ad83dbbc48b2a2c4509c82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177273
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Follow-up to 075560420a
Removes hard list attribute also if the applied paragraph
style is applied again.

Change-Id: Ic08241b5e244690825dfe79c419298c5d5f7c17e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177270
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Invisible cells in Word are added to Writer tables to get regular
tables. Borders of such cells are allready switched off. Now also
paragraph spacing is removed to not determine the row height.

Change-Id: I27d3d033de54f051527cf29e2655e7a564d1a5ec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176219
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Tested-by: Jenkins
Add support for input and output of 'split position' parameter (number of entries
in second plot) for of-pie charts. In OOXML this uses the supported split-pos
tag. For ODF I added an extension in loext namespace for this parameter.
This commit also includes simple tests for the I/O functionality in OOXML and
ODF.

Change-Id: I00ff59db721867fa836eb99b6677350040d005dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170666
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This is easier to evaluate when opening the file in text editor
than binary. It is also more common in other PDF writers to use it
as hex string. There is no problem with viewers.

Change-Id: Ie453556d22695017916c7953f91c499e3d990b0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176891
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins
Change-Id: I5e8ab2a2be6ea9cd5d1ed93b70780f1f6153f3fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176892
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Issue spotted when trying encryption and decryption with OpenSSL,
which doesn't handle the shorter keys correctly.

Also can't use the same instance of Encrypt after an attempt that
failed  (0 bytes written) as the blocks are inter-dependent and
it looks like OpenSSL already changes the state.

Change-Id: I061764e6727c7fbe600e11c5a5a6b8889d15c4e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177305
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins
Change-Id: I8dc994421ef036f609e270c4891ac4494276ba23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177299
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I487a989a97389af11c98e10ac001c860d7855aec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177300
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Whatever the reason, but running the test against a read-only SRCDIR caused
CppunitTest_sfx2_view
CPPUNIT_TEST_NAME=testLokHelperCommandValuesSignature::TestBody to fail with

> sfx2/qa/cppunit/view.cxx:138:testLokHelperCommandValuesSignature::TestBody
> assertion failed
> - Expression: nSignatureTime != 0

Change-Id: I35d7df0de1b63937920687444ea0698fc0856446
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177302
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
if (rSorConditionLoaded.mbDescending) condition ignores the ascending sort.
So when we import a document that uses ascending sort then export it, we
don't know which column is sorted.

With the following patch we fix this case.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I561146517959a87eb0fb6cec419d68299bcb7eee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177016
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177222
Tested-by: Jenkins
Reverts "PVS: V547 Expression 'bNoDictionaryAvailable' is always false"
This reverts commit 816b51c7a9.

It removed the message completely from the code while, we should
fix it rather by using correct condition.

It was somehow too aggresively limited in commit f200dd5cb8
tdf#86731 Don't show 'start from beginning' when dictionary is missing

Change-Id: I5f4b859047216399a09c7aefb8a47244c4833df5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177271
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
I couldn't find any way of putting the colors from the theme back
into the system using the win32 api. Taking inspiration from Caolan's
dark mode patch (commit: a3f4008867,
related: tdf#118320 enable some windows dark theme support, 2022-03-17),
I was able to make it work.

I am working on vcl welding for windows, for which I am learning win32.
In the coming weeks/months the themeing approach for windows
is expected evolve because of that. There are some "rough edges" still...
something to be addressed later in different tickets.

Change-Id: I4b4cb3804b9b7a9d15e75a1b2511cdedda2b5b12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170840
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
We don't draw popup menus and menubar rather use the native ones. I don't know any Objective-C which made it really difficult for me to parse the widget toolkit code.

I can learn it if required, but it would be better if some macos developer takes this patch further; Themeing related objects like colors, persona settings (TODO) will be available via the ThemeColors class.

Change-Id: Idd89328ca82fbfa58b1e686b5b105469bea4b4a1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171239
Tested-by: Jenkins
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Ib8d6b19f4ff1a5a641039f7e06083430b53a6edb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177301
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
...by backporting upstream
<https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=bc5a4dfcf7390145dc3ba3c1c18c5ce561b778cd>
"Assume that <stdbool.h> conforms to the C standard." to our REL_14_15 version.
GCC 15 trunk defaults to C23 now, so started to fail with

> In file included from fls.c:49:
> ../../src/include/c.h:419:23: error: two or more data types in declaration specifiers
>   419 | typedef unsigned char bool;
>       |                       ^~~~
> ../../src/include/c.h:419:1: warning: useless type name in empty declaration
>   419 | typedef unsigned char bool;
>       | ^~~~~~~
> make: *** [<builtin>: fls.o] Error 1
> make: Leaving directory 'workdir/UnpackedTarball/postgresql/src/port'

(Removing HAVE__BOOL and HAVE_STDBOOL_H also from src/tools/msvc/Solution.pm is
necessary to avoid failures like

> "C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/openssl\apps\openssl.exe" version 2>&1unused defines: HAVE_STDBOOL_H HAVE__BOOL at /home/tdf/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/postgresql/src/tools/msvc/Mkvcbuild.pm line 870.
> make[1]: *** [C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/external/postgresql/ExternalProject_postgresql.mk:27: C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/ExternalProject/postgresql/build] Error 1

in MSVC builds.)

Change-Id: I1f6bd0d613ae4d6ce70feaaf67aaf95496eeff87
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177280
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
Like the base class implementation, they call
cppu::supportsService, so there's no need to override
the former.

Change-Id: I6550edce0567502a411cac402923c2c02e02f58d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177311
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
It will be reused in another method in an upcoming commit.

Change-Id: Ie6b4559e268d9340b5b13844c906232c6ff38a6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177312
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
The "The role is always AccessibleRole::COMBO_BOX." comment
for VCLXAccessibleBox::getAccessibleRole is misleading,
as the actual implementation can also return AccessibleRole::PANEL.

Change-Id: I15b089e168aa7ec0701eacc8630023123f3a10dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177313
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Let VCLXAccessibleEdit::getAccessibleName take care
of returning the same accessible name as the combobox
parent for the combobox subedit instead of trying
to set the same name when that combobox child is
requested the first time.

This makes sure the name remains in sync, and prevents
trying to get the combobox a11y name while a dialog
containing it might still be in the process of getting
constructed by VclBuilder, in which case e.g. the
AccessibleRelation::LABELLED_BY relation that
gets used in Window::getDefaultAccessibleName
may not have been set. That relation e.g. gets
set if a label has the combobox set as its
"mnemonic-widget" in a .ui file.

The previous logic was triggering an assert
when opening the "Fonts" page in the "Tools" -> "Options"
dialog or using the search feature in that dialog on Windows
with an AT (like NVDA) active when trying to set the a11y
name of the "font2" combobox's entry
(UI file: cui/uiconfig/ui/optfontspage.ui):

    Assertion failed: GetChildCount() == 4 || pWindowImpl->mbInDispose, file .../vcl/source/window/layout.cxx, line 1945

Backtrace:

    1   abort                                                                                                     ucrtbase                           0x7ffad46e286e
    2   get_wpgmptr                                                                                               ucrtbase                           0x7ffad46e426e
    3   get_wpgmptr                                                                                               ucrtbase                           0x7ffad46e4165
    4   wassert                                                                                                   ucrtbase                           0x7ffad46e44f1
    5   VclScrolledWindow::get_child                                                                              layout.cxx                    1945 0x7ffa88f67e35
    6   nextLogicalChildOfParent                                                                                  dialog.cxx                    139  0x7ffa88f147cf
    7   nextLogicalChildOfParent                                                                                  dialog.cxx                    157  0x7ffa88f14884
    8   nextLogicalChildOfParent                                                                                  dialog.cxx                    157  0x7ffa88f14884
    9   ImplGetSubChildWindow                                                                                     dlgctrl.cxx                   137  0x7ffa88f197e1
    10  ImplGetChildWindow                                                                                        dlgctrl.cxx                   151  0x7ffa88f18dae
    11  ImplGetNextWindow                                                                                         dlgctrl.cxx                   180  0x7ffa88f19600
    12  ImplFindDlgCtrlWindow                                                                                     dlgctrl.cxx                   362  0x7ffa88f18a2b
    13  vcl::ImplGetLabeledBy                                                                                     legacyaccessibility.cxx       122  0x7ffa88e65437
    14  vcl::Window::getLegacyNonLayoutAccessibleRelationLabeledBy                                                legacyaccessibility.cxx       178  0x7ffa88e657ac
    15  vcl::Window::GetAccessibleRelationLabeledBy                                                               accessibility.cxx             604  0x7ffa88e6193a
    16  vcl::Window::getDefaultAccessibleName                                                                     accessibility.cxx             470  0x7ffa88e63c73
    17  vcl::Window::GetAccessibleName                                                                            accessibility.cxx             441  0x7ffa88e614ba
    18  vcl::Window::SetAccessibleName                                                                            accessibility.cxx             427  0x7ffa88e623bc
    19  VCLXAccessibleBox::getAccessibleChild                                                                     vclxaccessiblebox.cxx         319  0x7ffa853e3e02
    20  AccObjectWinManager::InsertChildrenAccObj                                                                 AccObjectWinManager.cxx       536  0x7ffa855b2ed1
    21  AccEventListener::HandleChildChangedEvent                                                                 AccEventListener.cxx          109  0x7ffa855b9593
    22  AccEventListener::notifyEvent                                                                             AccEventListener.cxx          64   0x7ffa855ba6ef
    23  AccContainerEventListener::notifyEvent                                                                    AccContainerEventListener.cxx 95   0x7ffa855bdfbc
    24  comphelper::AccessibleEventNotifier::addEvent                                                             accessibleeventnotifier.cxx   256  0x7ffa916598c0
    25  comphelper::OCommonAccessibleComponent::NotifyAccessibleEvent                                             accessiblecomponenthelper.cxx 127  0x7ffa9165071e
    26  VCLXAccessibleComponent::ProcessWindowChildEvent                                                          vclxaccessiblecomponent.cxx   165  0x7ffa8b7e6029
    27  VCLXAccessibleComponent::WindowChildEventListener                                                         vclxaccessiblecomponent.cxx   124  0x7ffa8b7e6d62
    28  VCLXAccessibleComponent::LinkStubWindowChildEventListener                                                 vclxaccessiblecomponent.cxx   114  0x7ffa8b7e5ee6
    29  Link<VclWindowEvent &,void>::Call                                                                         link.hxx                      111  0x7ffa88f3bf43
    30  vcl::Window::CallEventListeners                                                                           event.cxx                     300  0x7ffa88f3c57c
    31  vcl::Window::ImplSetReallyVisible                                                                         window.cxx                    1331 0x7ffa8904394d
    32  vcl::Window::ImplSetReallyVisible                                                                         window.cxx                    1344 0x7ffa89043a1d
    33  vcl::Window::Show                                                                                         window.cxx                    2336 0x7ffa89047671
    34  vcl::Window::Show                                                                                         window.cxx                    2349 0x7ffa8904776e
    35  vcl::Window::set_property                                                                                 window2.cxx                   1537 0x7ffa8902d4b3
    36  ComboBox::set_property                                                                                    combobox.cxx                  1553 0x7ffa89097521
    37  BuilderUtils::set_properties                                                                              builder.cxx                   2192 0x7ffa88ef13c5
    38  VclBuilder::insertObject                                                                                  builder.cxx                   2469 0x7ffa88ee18df
    39  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             230  0x7ffa88e23d54
    40  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    41  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    42  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    43  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    44  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    45  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    46  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    47  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    48  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    49  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::processUIFile                 widgetbuilder.hxx             70   0x7ffa88e24b4a
    50  VclBuilder::VclBuilder                                                                                    builder.cxx                   523  0x7ffa88ea53be
    51  SalInstanceBuilder::SalInstanceBuilder                                                                    salvtables.cxx                7088 0x7ffa895da3ff
    52  std::make_unique<SalInstanceBuilder,vcl::Window * &,rtl::OUString const &,rtl::OUString const &,0>        memory                        3434 0x7ffa895d44c8
    53  SalInstance::CreateBuilder                                                                                salvtables.cxx                7470 0x7ffa895ef18e
    54  Application::CreateBuilder                                                                                builder.cxx                   198  0x7ffa88ebed2a
    55  BuilderPage::BuilderPage                                                                                  weldutils.cxx                 28   0x7ffa89684128
    56  SfxTabPage::SfxTabPage                                                                                    tabdlg.cxx                    137  0x7ffa8cd5f0e5
    57  SvxFontSubstTabPage::SvxFontSubstTabPage                                                                  fontsubs.cxx                  36   0x7ffa8372d1cd
    58  std::make_unique<SvxFontSubstTabPage,weld::Container * &,weld::DialogController * &,SfxItemSet const &,0> memory                        3434 0x7ffa8372cdbf
    59  SvxFontSubstTabPage::Create                                                                               fontsubs.cxx                  146  0x7ffa8372f692
    60  CreateGeneralTabPage                                                                                      treeopt.cxx                   289  0x7ffa8383199a
    61  OfaTreeOptionsDialog::SelectHdl_Impl                                                                      treeopt.cxx                   1317 0x7ffa838372e7
    62  OfaTreeOptionsDialog::ShowPageHdl_Impl                                                                    treeopt.cxx                   623  0x7ffa83837f11
    63  OfaTreeOptionsDialog::LinkStubShowPageHdl_Impl                                                            treeopt.cxx                   620  0x7ffa83834366
    64  Link<weld::TreeView &,void>::Call                                                                         link.hxx                      111  0x7ffa88ebdf13
    65  weld::TreeView::signal_changed                                                                            weld.hxx                      969  0x7ffa88ef210f
    66  SalInstanceTreeView::SelectHdl                                                                            salvtables.cxx                5304 0x7ffa895f4b39
    67  SalInstanceTreeView::LinkStubSelectHdl                                                                    salvtables.cxx                5299 0x7ffa895f38c6
    68  Link<SvTreeListBox *,void>::Call                                                                          link.hxx                      111  0x7ffa88ebe413
    69  SvTreeListBox::SelectHdl                                                                                  treelistbox.cxx               454  0x7ffa892ba7a1
    70  SvTreeListBox::Select                                                                                     treelistbox.cxx               2128 0x7ffa892ba514
    71  SvImpLBox::SetCursor                                                                                      svimpbox.cxx                  617  0x7ffa892d05e8
    72  ImpLBSelEng::SetCursorAtPoint                                                                             svimpbox.cxx                  2596 0x7ffa892d08a9
    73  SelectionEngine::SelMouseButtonDown                                                                       seleng.cxx                    174  0x7ffa88fd0071
    74  SvImpLBox::MouseButtonDown                                                                                svimpbox.cxx                  2016 0x7ffa892cc580
    75  SvTreeListBox::MouseButtonDown                                                                            treelistbox.cxx               2277 0x7ffa892b71e2
    76  ImplHandleMouseEvent                                                                                      winproc.cxx                   708  0x7ffa89059867
    77  ImplHandleSalMouseButtonDown                                                                              winproc.cxx                   2338 0x7ffa8905afef
    78  ImplWindowFrameProc                                                                                       winproc.cxx                   2683 0x7ffa8905ca47
    79  SalFrame::CallCallback                                                                                    salframe.hxx                  312  0x7ffa88e1ee56
    80  ImplHandleMouseMsg                                                                                        salframe.cxx                  3335 0x7ffa85c270bf
    81  SalFrameWndProc                                                                                           salframe.cxx                  5987 0x7ffa85c2de7d
    82  SalFrameWndProcW                                                                                          salframe.cxx                  6342 0x7ffa85c2ec60
    83  CallWindowProcW                                                                                           USER32                             0x7ffad61cef5c
    84  DispatchMessageW                                                                                          USER32                             0x7ffad61ce684
    85  ImplSalDispatchMessage                                                                                    salinst.cxx                   475  0x7ffa85b8cf98
    86  ImplSalYield                                                                                              salinst.cxx                   552  0x7ffa85b8d6bd
    87  WinSalInstance::DoYield                                                                                   salinst.cxx                   581  0x7ffa85b8cc61
    88  ImplYield                                                                                                 svapp.cxx                     385  0x7ffa89656364
    89  Application::Yield                                                                                        svapp.cxx                     474  0x7ffa89659fe2
    90  Dialog::Execute                                                                                           dialog.cxx                    1077 0x7ffa88f0c017
    91  SalInstanceDialog::run                                                                                    salvtables.cxx                1882 0x7ffa896149af
    92  weld::DialogController::run                                                                               weld.hxx                      2691 0x7ffa88eef436
    93  OfaTreeOptionsDialog::run                                                                                 treeopt.cxx                   2514 0x7ffa83841dd2
    94  CuiAbstractController_Impl::Execute                                                                       dlgfact.cxx                   144  0x7ffa837085c8
    95  SfxApplication::OfaExec_Impl                                                                              appserv.cxx                   1641 0x7ffa8cb36506
    96  SfxStubSfxApplicationOfaExec_Impl                                                                         sfxslots.hxx                  1307 0x7ffa8cb10165
    97  SfxDispatcher::Call_Impl                                                                                  dispatch.cxx                  257  0x7ffa8cc1f4ae
    98  SfxDispatcher::Execute_                                                                                   dispatch.cxx                  754  0x7ffa8cc2260f
    99  SfxBindings::Execute_Impl                                                                                 bindings.cxx                  1062 0x7ffa8cc0086d
    100 SfxDispatchController_Impl::dispatch                                                                      unoctitm.cxx                  736  0x7ffa8cc93caa
    101 SfxOfficeDispatch::dispatch                                                                               unoctitm.cxx                  254  0x7ffa8cc945b0
    102 framework::MenuBarManager::Select                                                                         menubarmanager.cxx            821  0x7ffa8d8574d4
    103 framework::MenuBarManager::LinkStubSelect                                                                 menubarmanager.cxx            776  0x7ffa8d855796
    104 Link<Menu *,bool>::Call                                                                                   link.hxx                      111  0x7ffa88f77d88
    105 Menu::Select                                                                                              menu.cxx                      360  0x7ffa88f83e19
    106 Menu::ImplCallSelect                                                                                      menu.cxx                      2152 0x7ffa88f7c761
    107 Menu::LinkStubImplCallSelect                                                                              menu.cxx                      2148 0x7ffa88f82366
    108 Link<void *,void>::Call                                                                                   link.hxx                      111  0x7ffa890529b3
    109 ImplHandleUserEvent                                                                                       winproc.cxx                   2288 0x7ffa8905ba97
    110 ImplWindowFrameProc                                                                                       winproc.cxx                   2850 0x7ffa8905d256
    111 SalFrame::CallCallback                                                                                    salframe.hxx                  312  0x7ffa88e1ee56
    112 ImplHandleUserEvent                                                                                       salframe.cxx                  4471 0x7ffa85c28fab
    113 SalFrameWndProc                                                                                           salframe.cxx                  6236 0x7ffa85c2e654
    114 SalFrameWndProcW                                                                                          salframe.cxx                  6342 0x7ffa85c2ec60
    115 CallWindowProcW                                                                                           USER32                             0x7ffad61cef5c
    116 DispatchMessageW                                                                                          USER32                             0x7ffad61ce684
    117 ImplSalDispatchMessage                                                                                    salinst.cxx                   475  0x7ffa85b8cf98
    118 ImplSalYield                                                                                              salinst.cxx                   506  0x7ffa85b8d09b
    119 WinSalInstance::DoYield                                                                                   salinst.cxx                   581  0x7ffa85b8cc61
    120 ImplYield                                                                                                 svapp.cxx                     385  0x7ffa89656364
    121 Application::Yield                                                                                        svapp.cxx                     474  0x7ffa89659fe2
    122 Application::Execute                                                                                      svapp.cxx                     361  0x7ffa89653aa6
    123 desktop::Desktop::Main                                                                                    app.cxx                       1679 0x7ffa9336887f
    124 ImplSVMain                                                                                                svmain.cxx                    228  0x7ffa8966b310
    125 SVMain                                                                                                    svmain.cxx                    247  0x7ffa8966baf2
    126 soffice_main                                                                                              sofficemain.cxx               121  0x7ffa933b86f4
    127 sal_main                                                                                                  main.c                        51   0x7ff64a491013
    128 main                                                                                                      main.c                        49   0x7ff64a49105a
    129 __scrt_common_main_seh                                                                                    exe_common.inl                288  0x7ff64a491344
    130 BaseThreadInitThunk                                                                                       KERNEL32                           0x7ffad5c07374
    131 RtlUserThreadStart                                                                                        ntdll                              0x7ffad679cc91

Change-Id: I3be8a8e4acd1c87fdfa495c755fd947e9a11b9aa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177314
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I88a1c40d3e97d77c289c8b670b52dca50dea126f
Co-authored-by: Rafael Lima <rafael.palma.lima@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176788
Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com>
Tested-by: Jenkins
Generated with:
./autogen.sh
./configure
make dist-xz

Change-Id: I74ac661c5f8db9abf7644212d98b29c3ec5b422f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176036
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit 05aedcba66
Author: Stephan Bergmann <sbergman@redhat.com>
Date:   Thu Jan 21 23:19:20 2021 +0100

    Fix use of -fvisibility=hidden with Clang in external/libcdr, external/libqxp

Change-Id: Idb97eaea30f5a2b15379b18981455532de0308b6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177330
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Generated with:
./autogen.sh
./configure
make dist-xz

Change-Id: I46b921f3c2ef41ab52e272df5afd82a1d9331f42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177332
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Crashreport signature:

> kit-09946-09946 2024-11-25 16:46:13.180120 +0000 [ kitbroker_498 ] SIG   Fatal signal received: SIGSEGV code: 1 for address: 0x0
> program/libmergedlo.so
>       SfxLokHelper::notifyUpdate(SfxViewShell const*, int)
>               sfx2/source/view/lokhelper.cxx:1072
> program/libswlo.so
>       SwViewShell::GetSfxViewShell() const
>               sw/inc/viewsh.hxx:472
> program/libswlo.so
>       SwCursorShell::UpdateCursor(unsigned short, bool)
>               sw/source/core/crsr/crsrsh.cxx:2382
...
> program/libmergedlo.so
>       framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&)
>               framework/source/services/desktop.cxx:592

I.e. it can happen that during load we don't yet have a view, handle
this in SfxLokHelper::notifyUpdate() till it takes a pointer and not a
reference.

Change-Id: Ifa5d9300029076e91ba8722152a7d91a1f2ecbc0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177343
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Change-Id: Ife1870da9979e974fa9dc11ca7dff87c8cfe66bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177310
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
regression from commit 21734247d5
"drop internal support for 1-bit images"

This only works on Linux because the HasGreyPaletteAny() check
is returning false on Linux, because on linux the swap in/out is more aggressive, and after it is has gone through the swap in/out process,
the image palette is no longer one that matches anything that HasGreyPaletteAny() checks for (it contains 256 entries, but only 2 of them are used)

I'm not exactly sure why the greyscale bitmap generation code
is generating bad PDF data, but the RGB code works great, so
lets just use that rather.

Change-Id: Ibb9e837540d5ed567c706e21e7ff93fe92118580
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177329
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: I9bd8a018dbe2c3416af9b50a6ca782ac5fb3a4ef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177350
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Move to anonymous namespace in the only .cxx where it's used.

Change-Id: Ifa1219c49e5673d3440a889b2fd814059a29b5bb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177351
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: I3667e47867eb85f18cf8ad620cff903cc13f38c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177352
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
the ShowDonation has already a default value of true via the schema,
so it is enough to override it to false for the macosxsandbox case
similar to how it is done with the Infobar / using the install:module
method

Change-Id: I8f1ea6d3530e66806f66f9f2d2fb16ef0276e460
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177333
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
* uno:AlignMiddle labeled "Middle"
* uno:AlignOnPage added

Change-Id: Iafc162bdd80d7c20fabd55234e93212c1fa3435a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177348
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Change-Id: I9d3cd55b05a684a8b21d5ee5a478202a3d0788c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177321
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Change-Id: I2a3df5cad1bd4daa18292cc106d5e8fedefca364
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177325
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Ic528aa0d92d3d5e9ac971be8b5343a0b2b4da5c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177328
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Ia1395f64bdc649f8e0f450b9173d302efa058c9a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177326
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Change-Id: Ifdd5f7cce7006b824397525f3a698df3f30ee17e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177327
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
* Update helpcontent2 from branch 'master'
  to c7c79a8fc5bd529a081c2bc0360183d6cd819356
  - Typo in Help page
    
    Change-Id: I5c149638fb6501e64f8255c843872e3570169036
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177281
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Downloaded from https://github.com/notofonts/latin-greek-cyrillic/releases/download/NotoSerif-v2.015/NotoSerif-v2.015.zip

Change-Id: I2cf07988ddb411db69457998e8171b19c46ea356
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177362
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to 815ce1be85e4bd8e77ccbed66ec5d482863f4caa
  - tdf#85976 update help page for 'Handle Duplicate Records' dialog
    
    + use row/column instead of record to make it easier to understand
    
    + use field instead of record to describe the treeview entries in the
      'Compare by' section as that's a more technically correct term.
      https://bugs.documentfoundation.org/show_bug.cgi?id=85976#c84
    
    Change-Id: I05f2280a94507528a595436d2a8a52c6ed574d9e
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177261
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
The mere presence of an object somewhere in the document
was causing the document background to force a white color.

This code was developed in the heady days
of figuring out what bits meant what,
so the documentation and code-reading is NOT clear.

make CppunitTest_sw_ww8export \
    CPPUNIT_TEST_NAME=testTdf41542_imagePadding
(My ODT file had obviously spent some of its lifetime as a DOC
because it had a white page background.
I unzipped the file, and hand-adjusted styles.xml to set
fo:background-color="transparent" and draw:fill="none")

Change-Id: I41484ab7f71f4a3156e3193e49127b14e58949cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177347
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Downloaded from https://github.com/notofonts/latin-greek-cyrillic/releases/download/NotoSans-v2.015/NotoSans-v2.015.zip

Change-Id: I924800998d31235eb7d2fcea83adfc64ff748ea2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177361
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to 6977846f119905354c5b449612e1e0b64fdf0722
  - tdf#131332: Replace custom date formats with ISO 8601
    
    Change-Id: I258013e509a72caf640032fe6dc258a734127fd1
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177292
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to ade9473eb6bb45b83d49c2e77f9448ac638e4425
  - Untranslatable string made translatable
    
    Change-Id: I5cd51e885dce97d43559ddc95754f750ef842e9d
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177368
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
The reported deadlocking situation at paste was:

1. Thread CMtaOleClipboard::run() is handling CXNotifyingDataObject::Release,
which calls CWinClipboard::onReleaseDataObject before deleting self, and that
eventually tries to lock solar mutex:

  sal3!osl_acquireMutex+0x49 [sal\osl\w32\mutex.cxx @ 65]
  vclplug_winlo!osl::Mutex::acquire+0xa [include\osl\mutex.hxx @ 63]
  vclplug_winlo!SalYieldMutex::doAcquire+0x91 [vcl\win\app\salinst.cxx @ 148]
  vcllo!osl::Guard<comphelper::SolarMutex>::{ctor}+0xe [include\osl\mutex.hxx @ 144]
  vcllo!SolarMutexGuard::{ctor}+0x1b [include\vcl\svapp.hxx @ 1340]
  vcllo!TransferableHelper::lostOwnership+0x36 [vcl\source\treelist\transfer.cxx @ 487]
  vclplug_winlo!CXNotifyingDataObject::lostOwnership+0x61 [vcl\win\dtrans\XNotifyingDataObject.cxx @ 140]
  vclplug_winlo!CWinClipboard::onReleaseDataObject+0x57 [vcl\win\dtrans\WinClipboard.cxx @ 364]
  vclplug_winlo!CXNotifyingDataObject::Release+0x36 [vcl\win\dtrans\XNotifyingDataObject.cxx @ 77]
  combase!Ordinal230+0x1c9b
  ...
  combase!Ordinal87+0x3d19
  USER32!DispatchMessageW+0x741
  USER32!DispatchMessageW+0x201
  vclplug_winlo!CMtaOleClipboard::run+0x18f [vcl\win\dtrans\MtaOleClipb.cxx @ 657]

2. Thread CMtaOleClipboard::clipboardChangedNotifierThreadProc() is handling
the respective event, calling CWinClipboard::handleClipboardContentChanged,
which notifies listeners, including SwClipboardChangeListener, which, in its
changedContents, has locked solar mutex, and requests the clipboard content,
which eventually calls CMtaOleClipboard::getClipboard posting a message to
the CMtaOleClipboard::run() thread, and waiting the result:

  vclplug_winlo!`anonymous-namespace'::Win32Condition::wait+0x3b [vcl\win\dtrans\MtaOleClipb.cxx @ 92]
  vclplug_winlo!CMtaOleClipboard::getClipboard+0x220 [vcl\win\dtrans\MtaOleClipb.cxx @ 355]
  vclplug_winlo!CWinClipboard::getIDataObject+0x84 [vcl\win\dtrans\WinClipboard.cxx @ 161]
  vclplug_winlo!CDOTransferable::tryToGetIDataObjectIfAbsent+0x56 [vcl\win\dtrans\DOTransferable.cxx @ 413]
  vclplug_winlo!CDOTransferable::getClipboardData+0x79 [vcl\win\dtrans\DOTransferable.cxx @ 425]
  vclplug_winlo!CDOTransferable::getTransferData+0x163 [vcl\win\dtrans\DOTransferable.cxx @ 252]
  sotlo!GetTransferableAction_Impl+0x13d [sot\source\base\formats.cxx @ 1352]
  sotlo!SotExchange::GetExchangeAction+0xde [sot\source\base\formats.cxx @ 1429]
  swlo!SwTransferable::IsPaste+0xba [sw\source\uibase\dochdl\swdtflvr.cxx @ 1402]
  swlo!SwClipboardChangeListener::changedContents+0xac [sw\source\uibase\uiview\uivwimp.cxx @ 315]
  vclplug_winlo!comphelper::OInterfaceContainerHelper4<com::sun::datatransfer:📋:XClipboardListener>::NotifySingleListener<com::sun::datatransfer:📋:ClipboardEvent>::operator()+0xc [include\comphelper\interfacecontainer4.hxx @ 274]
  vclplug_winlo!comphelper::OInterfaceContainerHelper4<com::sun::datatransfer:📋:XClipboardListener>::forEach<comphelper::OInterfaceContainerHelper4<com::sun::datatransfer:📋:XClipboardListener>::NotifySingleListener<com::sun::datatransfer:📋:ClipboardEvent> >+0xb6 [include\comphelper\interfacecontainer4.hxx @ 304]
  vclplug_winlo!comphelper::OInterfaceContainerHelper4<com::sun::datatransfer:📋:XClipboardListener>::notifyEach+0x28 [include\comphelper\interfacecontainer4.hxx @ 325]
  vclplug_winlo!CWinClipboard::handleClipboardContentChanged+0x156 [vcl\win\dtrans\WinClipboard.cxx @ 303]
  vclplug_winlo!CWinClipboard::onClipboardContentChanged+0x5c [vcl\win\dtrans\WinClipboard.cxx @ 387]
  vclplug_winlo!CMtaOleClipboard::clipboardChangedNotifierThreadProc+0x172 [vcl\win\dtrans\MtaOleClipb.cxx @ 699]

This change tries to untie this, by creating a dedicated thread to call
CWinClipboard::onReleaseDataObject and delete CXNotifyingDataObject outside
of its Release (and of the CMtaOleClipboard::run() thread), so that locking
happening in that process doesn't deadlock functional threads.

Change-Id: I93da6fe79225319a84b332c81716793f4d9fb05d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177363
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
... to make more obvious from the API that the
caller owns the returned weld::Button* (but not
the underlying toolkit widget).

Change-Id: I64f57f80e4eea4c2c984fa7b615b5a2350ed892a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177375
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Rename weld::Dialog::widget_for_response to
weld::Dialog_button_for_response as it specifically
returns a weld::Button, not a generic weld::Widget (other than GTK's
`gtk_dialog_get_widget_for_response` [1] which
returns a GtkWidget).

[1] https://docs.gtk.org/gtk3/method.Dialog.get_widget_for_response.html

Change-Id: I3b1dc34c0af752853551d2ebb706109f2214720d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177376
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Neither the const_cast, nor the explicit cast to vcl::Window
is needed here in order to call vcl::Window::GetBorder.

Change-Id: Id234d21e6d9792e83487fc5503cd737fe3832b91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177377
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Change-Id: I84ad6d24d850857949bbae403cb6f640cd31b16e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177374
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
After commit c5b6e3ac56 (win a11y: Stop
using setting to indicate AT support, 2024-10-30), the a11y status
doesn't depend on a setting, and will be enabled whenever anything on
Windows sends a WM_GETOBJECT messaage to a window. To allow debugging
without a11y interference, use the existing SAL_ACCESSIBILITY_ENABLED
environment variable, and extend it to use its "0" value to disable.

Change-Id: I43bdec59a195ace3f704206d9ebe07352dd3e819
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177385
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
so this one doesn't need another explicit Load called

Change-Id: If1ff686655a90ed81be97bf0821518b2e82bdd57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177369
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
SwGridConfig ConfigItem didn't listen to the config changes.

Note that after this, while toggling e.g. VisibleGrid on/off in expert
settings doesn't initially appear to do a whole pile, it does affect
newly created documents, while before this change it does not.

Existing documents don't update to use that config. Toggling this
on/off via the explicit Show Grid ends up in

SwModule::ApplyUsrPref(const SwViewOption &rUsrPref, SwView* pActView)

with something of a bodge to determine the current SwView in order
to affect the document the setting dialog is launched from, which
is why it changes the current document, and new documents, but not
any other open documents.

Change-Id: Ic57e89e3aa9765ad3c4374ddf02ed718382cf518
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177349
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Because the mutex has already been freed because raptor calls
xmlCleanupParser

I have logged a feature request against raptor for a flag to turn off
this behaviour, but until that lands, this will have to do.

-----

make CppunitTest_filter_pdf results in

WARNING: ThreadSanitizer: use of an invalid mutex (e.g. uninitialized or
destroyed) (pid=330602)
0 pthread_mutex_lock
/home/noel/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1371
(discriminator 8) (cppunittester+0x7e1be)
1 xmlDictFree ??:? (libxml2.so.2+0x3404b) (BuildId:
14c9410dbe8278dfa121dabc48c9ae25eac169d1)
2 lt_xml_unref
/home/noel/libo-tsan/workdir/UnpackedTarball/liblangtag/liblangtag/lt-xml.c:351
(liblangtag-lo.so.1+0x1fc6a)
3 lt_db_finalize
/home/noel/libo-tsan/workdir/UnpackedTarball/liblangtag/liblangtag/lt-database.c:144
(liblangtag-lo.so.1+0xac22)
4 (anonymous namespace)::LiblangtagDataRef::teardown()
/home/noel/libo-tsan/i18nlangtag/source/languagetag/languagetag.cxx:219
(libi18nlangtag.so+0x20951)
5 (anonymous namespace)::LiblangtagDataRef::~LiblangtagDataRef()
/home/noel/libo-tsan/i18nlangtag/source/languagetag/languagetag.cxx:204
(libi18nlangtag.so+0x20951)
6 cxa_at_exit_callback_installed_at(void*)
/home/noel/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:445
(cppunittester+0x6e3af)
7 LanguageTagImpl::canonicalize()
/home/noel/libo-tsan/i18nlangtag/source/languagetag/languagetag.cxx:190
(libi18nlangtag.so+0xe370)
8 main /home/noel/libo-tsan/sal/cppunittester/cppunittester.cxx:482
(cppunittester+0x10cf6c)

Change-Id: I5d9ff1c5667f8e19e5858cd5a408e8f95d2a98e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177320
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: If56c0cbf5679bee57f6fe1b364c402d949089b87
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177386
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Interlingua currently translated at 75.8% (88 of 116 strings)

Change-Id: I75ff1908970b8d28c3380e5791aea0146354868c
Co-authored-by: eduver <hmcb2080@gmail.com>
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/ia/
Translation: android-viewer/android-strings
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177272
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: I6b3617f8b31c77b8538e468d80a8ef54702945f6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177216
Reviewed-by: Simon Chenery <simon_chenery@yahoo.com>
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
mpDoc can be nullptr
while at it, prefix it as a member

Change-Id: I48233bc4bfcd87a382e29ba9b9ee053612ba6bd8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177258
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: Ie6e3e38768124e256a31c343a10cbc30262708e3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176492
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
(cherry picked from commit afc7f61f6a87f2daf3b9e3cba2ecd4a70578793d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177394
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
but leave it empty

Change-Id: Ie7f95f6d01c669598305e24472c357c1b92ad1f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177353
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Rashesh Padia <rashesh.padia@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit e393a739fa890aeb77f189b62de4356043211490)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177392
Tested-by: Jenkins
Downloaded from https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.6.9.tgz

Change-Id: Ie26290f4443d92cb9f0801548782c0f10a518984
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177401
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to ce42a420ae28518aae72e72e06a8d3d8a3f33cc8
  - tdf#131332: Replace custom date formats with ISO 8601
    
    Change-Id: I2f17cb9ffc9704c229f4c2f6dd9c6fb8e0531f42
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177297
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Change-Id: I1015adf6f8a270569e48b8e66b141ef37f217a1b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177400
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
... verified against nullptr
And some other related cases

Change-Id: If07cad3286afbc6e3058ed951128f501b11d79b6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177395
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
This will allow to implement the Interaction between slides
in the slideshow.

Change-Id: I0c4ca1858ab9935fd4926b776e96ba5b7a386e0b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177398
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Added in
commit 96928bb74a
Author: Marco Cecchetti <marco.cecchetti@collabora.com>
Date:   Thu May 10 23:13:12 2018 +0200

    lok: sc: ctrl-clicking links doesn't work

and became always true after
commit 142d3e1591
Author: Jan Holesovsky <kendy@collabora.com>
Date:   Mon Oct 24 16:27:17 2022 +0200

    sc lok: Double-click should behave more like on desktop

Change-Id: I5e36fe835088865a9caede88b8a690f070a3da9d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177403
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit 5a725d1fde
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date:   Tue Mar 28 15:27:36 2017 +0200

    loplugin:singlevalfields

Change-Id: I5fabc0537f385531fedb34a0becf69e480d39394
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177404
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Since
commit a39a3f1ad1
Author: Caolán McNamara <caolanm@redhat.com>
Date:   Tue Feb 9 12:07:27 2021 +0000

    weld impress annotation window

Change-Id: I63855a609d5de49a0c810994fccf240695605456
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177405
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to 0ecc00617e7b93d3869ea7d77c777ebe47db9896
  - tdf#131332: Replace custom date formats with ISO 8601
    
    Change-Id: I350334e689e6116465bbca4821e21a3046c0ce9c
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177293
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
    Tested-by: Jenkins
* Update helpcontent2 from branch 'master'
  to c73747f8fb95caee2f4bd5095b886e305bd7d684
  - tdf#131332: Replace custom date formats with ISO 8601
    
    Change-Id: I46c451df1f3b957a3129f167e0a8d45726ef78c4
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177295
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Since
commit c6fc14a42e
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date:   Tue Jun 30 12:21:20 2020 +0200

    loplugin:singlevalfields

Change-Id: If5242fd47d550c905b480d848d926da37c57766e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177407
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit eff3f82033
Author: Miklos Vajna <vmiklos@collabora.co.uk>
Date:   Thu Mar 10 17:41:04 2016 +0100

    sd: handle classification during copy&paste

Change-Id: Ia65e34cbd9e7dc688eeae09a77105bf22fc17857
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177406
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
It makes no sense to use ClearType for file output - because it, by
definition, depends on the device and scale; and the file output is
for display on unknown device and scale.

Change-Id: Icf032b1fecc1a4a7f0a4be53797728c9f9505fdb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177402
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Since
commit 217ef2ed9b
Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Date:   Mon Jan 23 12:32:25 2023 +0900

    pdfimport: refactor pdf and hybrid format detection code

Change-Id: Ib8bd09417eb07bd395b38a04245de30e8abda5a6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177408
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit 4e2453022f
Author: Rüdiger Timm <rt@openoffice.org>
Date:   Mon Jan 31 07:53:46 2005 +0000

    INTEGRATION: CWS fwkbugfix05 (1.145.34); FILE MERGED

Change-Id: I707fd1b1f7d315542b6afecbe19739a34033d9a8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177409
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Since
commit fd069bee7e
Author: Jens-Heiner Rechtien <hr@openoffice.org>
Date:   Mon Sep 18 16:07:07 2000 +0000

    initial import

Change-Id: Ie2aeabafb1ff2a73b1c8cb90ee1a4d03a7482ab5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177410
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit 9b538afc29
Author: Vladimir Glazounov <vg@openoffice.org>
Date:   Tue May 22 17:46:33 2007 +0000

    INTEGRATION: CWS chart2mst3 (1.10.4); FILE MERGED

Change-Id: I1ed040165018d38770f7438a7f64436c7aa4873f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177412
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Since
commit d0484bcdcb
Author: Jens-Heiner Rechtien <hr@openoffice.org>
Date:   Mon Sep 18 23:16:46 2000 +0000

    initial import

Change-Id: Ib1cf69ecf70bf9d866308892562a2d9080e1350f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177413
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
* Update helpcontent2 from branch 'master'
  to 9b423c924ba73aab8b885304822fd92b00ee562d
  - tdf#131332: Replace custom date formats with ISO 8601
    
    Change-Id: I79b7a4953c49590afd96cc13efad8598285b03a3
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177296
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Base the decision to disable animation of the
overlay rectangle on whether animations are disabled
(either explicitly in LibreOffice itself or when
LibreOffice uses the default value of "System" for
animations and animations are disabled in the OS/desktop
environment) instead of on the fact whether
or not high contrast mode is enabled.

This is the same criterion as used for Calc's
"marching ants" animation, see

    commit ef7429f867
    Date:   Mon Jul 29 11:36:29 2024 +0200

        tdf#161765, tdf#115688 Let user choose which animation settings to use

Change-Id: If14b05006b1b04be9c2da9089dfbfbca70e88f79
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177417
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
ODF 1.4 has removed the attribute table:cell-range-address from the
chart:plot-area element. So we may write it only in versions < 1.4.
The attribute was used to distinguish whether a chart has internal data.
The same information is given by the href attribute of the chart:chart
element.
The actual used cell-range-address values are already given in the
chart:axis and chart:series child elements and evaluated from there.
A global setting is not needed.

The attributes chart:data-source-has-labels, chart:column-mapping and
chart:row-mapping are related to the table:cell-range-address attribute.
These three attributes are deprecated already in ODF 1.2. Thus we will
not write them in ODF 1.4. Their information is given in the chart:axis
and chart:series child elements. The order of series is given by the
order of the chart:series child elements.

Change-Id: I08886723b1c8eb27489a7f44b5f8321572defdff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177323
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
presumably since:

commit c969795bab
CommitDate: Mon Nov 25 08:25:53 2024 +0100

    pdf: Introduce a IPDFEncryptor and use it in PDFWriterImpl

Change-Id: I07958613a546443f10883f36daf6f306f19358ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177425
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
I don't think anyone is getting around to changing this after 13
years, and an int worth of config layers looks safe enough to me.

Change-Id: Iecf00a4d342e60d8f56a27978c40fa8d861ecd7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177428
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
The second part of the condition already
makes sure that the mark count is non-zero.

Change-Id: I174bfc2ff3112616a63dda64f4435cd3d235343c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177424
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Since
commit 4b399dbfc4
Author: Sarper Akdemir <sarper.akdemir@allotropia.de>
Date:   Tue Sep 10 11:19:08 2024 +0200

    tdf#162405: check if there's a matching singing cert only when saving

Change-Id: I4f70843660f4feca12135ddeaa0452d5c57b20c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177427
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
!bDoDirectCairoStroke.

Since
commit 9c9f76dd5b
Author: Armin Le Grand <Armin.Le.Grand@me.com>
Date:   Sat Feb 8 12:14:09 2020 +0100

    tdf#130478 add direct dash paint in cairo

Change-Id: I31cc48d7757048a4ea985a2de2c7c8380114acb1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177423
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
It is advertised as a property, but it's not implemented: just avoid the
assert fail on inspecting the UNO wrapper.

Similar to commit eb3fccbd86 (sw: add stub
Title impl for SwAuthorField, 2022-05-25).

Change-Id: Idd49f8c23e2d66616346b30e1f0e04eda9da7725
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177429
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Because some architecture(such as riscv64) does not support NaN
  payload (NaN propagation), skipping the related tests might be a
  good choice for builders who has already known the risk of lacking
  NaN payload support.

  Currently the tests that could be skipped via --disable-nan-tests are:

  - rtl_math: test_payloadNaN
  - sc_ucalc_formula2: testExternalRefFunctions
  - sc_ucalc_formula2: testFuncGCD
  - sc_ucalc_formula2: testFuncLCM
  - sc_ucalc_nanpayload: testNanPayload

Change-Id: Ia8834595a8b469d8c542809b3e580a3f6316ef20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174801
Reviewed-by: René Engelhard <rene@debian.org>
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: René Engelhard <rene@debian.org>
Since at least
commit a2a922c273
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date:   Wed Dec 5 10:59:41 2018 +0200

    loplugin:singlevalfields in sw

Change-Id: I54ce5a9ca4571de26c4c25448e58abc361a6a121
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177430
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Since
commit 9859528a0e
Author: Ingrid Halama <iha@openoffice.org>
Date:   Thu Mar 22 15:48:03 2001 +0000

    #84921# smart propagation of fetchsize and direction from stub to possibly underlyingCachedContentResultSet

Change-Id: I6d1c2ef916d3e5b43f4cc896ef202acd69e2a2fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177431
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Change-Id: I89042693b8844b4769be79fa854722fe3d7babf6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177426
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
This is the .ui file for the "Edit" -> "Go to page"
dialog in Writer.

This luckily also moves the "page_value" GtkAdjustment
to the top of the file, which (at least for now, in
order to support that dialog) avoids the need to
extend QtBuilder to implement handling of GtkAdjustments
that are referenced in the .ui file before they are
defined.

(If it's still needed in the future, extracting
some of the current logic from VclBuilder into
the BuilderBase or WidgetBuilder base classes for
reuse also by QtBuilder might be an idea.)

Change-Id: Ic03acc1d514d412cd609543754829a370a5678e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177434
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Introduce a new QtDoubleSpinBox subclass for the
stock QDoubleSpinBox and use it for the native Qt
weld::SpinButton implementation.

Initially, the new subclass doesn't add any
additional functionality, but that will be
added in future commits to provide functionality
needed to implement more of the QtInstanceSpinButton
methods.

Change-Id: Icebbf6485172b065d6a6d2c1c8ef87be9d3d244e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177435
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Implement QtInstanceSpinButton methods related to
the text cursor and selection.

The QDoubleSpinBox base class QAbstractSpinBox
has a method QAbstractSpinBox::lineEdit [1]
that provides access to the spin box's QLineEdit.
However, that method is protected, and can therefore
not be accessed from QtInstanceBuilder.
Therefore, add corresponding methods to
QtDoubleSpinBox and forward calls to the line edit
from there.

The methods implemented in this commit are
very similar to the corresponding ones in
QtInstanceEntry (which however has has direct access to
the QLineEdit).

[1] https://doc.qt.io/qt-6/qabstractspinbox.html#lineEdit

Change-Id: Ib5d2b55478f88618ed58adc2353824c59015a039
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177436
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: Ie75cb0a581447e7f247be6b6d2bf1860ec74c8eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177415
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Tested-by: Jenkins
This fixes my 24.8 regression 6dd6891a3d
related tdf#126533 tdf#159824 VML: don't export: negative angles

So far I really haven't touched radial gradient code,
but the above patch swapped the colors around for linear/axials,
and (while the import for radials is probably wrong)
that also changed round-tripped radials - swapping colors each time.

Note that on the unit test, the initial focus is 100,
so on the first import the colors are NOT swapped.
But since we don't write a focus, re-imports will start swapping.

See FillModel::pushToPropMap in oox/source/vml/vmlformatting.cxx

make CppunitTest_sw_ooxmlexport21 \
    CPPUNIT_TEST_NAME=testTdf126533_pageGradient

Change-Id: I469fe7fba520e338df90e2eb0d8bdf96709d2ecc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177452
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Change-Id: I4c1840e377711ad065c3042bddacb2028481b88d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177433
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I435ed112469b58cec191badaf98e7f019381707b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177446
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Connect to the QLineEdit::textChanged [1] signal instead
of QLineEdit::textEdited [2].

As the doc of the latter says:

> Unlike textChanged(), this signal is not emitted when the text is
> changed programmatically, for example, by calling setText().

Programmatic changes are of interest, however, e.g.
GotoPageDlg::GotoPageDlg connects to the changed signal
of the weld::SpinButton and expects to be notified
when the text is changed by using the spin button
buttons to change the value (and thus the text).

[1] https://doc.qt.io/qt-6/qlineedit.html#textChanged
[2] https://doc.qt.io/qt-6/qlineedit.html#textEdited

Change-Id: Ie19bc852f4ceed0fa79565302975376db7126ea4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177447
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Implement special handling for cursor position value
of -1 according to the comment above weld::Entry::set_position
in include/vcl/weld.hxx:

    // nCursorPos can be -1 to set to the end

Change-Id: I078d2123f391cf1fcab6f40d26309e2a2eb2315f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177448
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
As weld::SpinButton derives from weld::Entry,
also let QtInstanceSpinButton derive from
QtInstanceEntry, instead of duplicating code
by reimplementing all of the weld::Entry methods
anew.

As the QtDoubleSpinBox derived from QDoubleSpinBox
itself is not a subclass of QLineEdit, it cannot
itself be passed down as the widget to the
QtInstanceEntry ctor.
Pass the spin box's QLineEdit instead. Make it
available by adding a new QtDoubleSpinBox::lineEdit
method which overrides the base class method of the same
name that is protected.

With this in place, QtInstanceSpinButton is now
the only QtInstanceWidget subclass where the
widget passed down to QtInstanceWidget is not
the same as passed by QtInstanceBuilder in
the QtInstanceSpinButton ctor, i.e.
QtInstanceWidget::getQWidget does not return
the QtDoubleSpinBox, but it's line edit.
Therefore, make QtInstanceWidget::getQWidget
virtual and override it in QtInstanceSpinButton
to return the spin box.

Drop the QtInstanceSpinButton methods of all
methods already implemented in QtInstanceEntry.

Change-Id: Ide2e1fe91216a5ec7f90a4f72ae34e3f63f624d3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177449
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Declare support for the "Edit" -> "Go to Page" dialog
available in e.g. Writer.

This means that native Qt widgets are used for that dialog
now when using the qt5 or qt6 VCL plugin and starting LO with
environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.

One issue seen with the dialog is that by using the
up arrow of the spinbox to increase the value, it
is currently possible to increase the value
beyond the maximum value (last page number),
while this is not the case when typing a number
into the box manually.

This is because the GotoPageDlg::PageModifiedHdl
handler currently only gets called for the
latter case, not the former one, despite

    Change-Id: Ie19bc852f4ceed0fa79565302975376db7126ea4
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Wed Nov 27 22:53:55 2024 +0100

        tdf#130857 qt weld: Also notify about programmatic text changes

and will be addressed in a separate commit.

Change-Id: I1f24cf3925e945ae78a9f1646535e08736cd8786
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177450
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
While QtInstanceEntry generally takes care of handling signals
for the spinbox's QLineEdit, this doesn't work when the value
is changed as a result of setting a new spinbox value (e.g.
by using the spinbox buttons), as the QLineEdit signals are blocked
then, see QAbstractSpinBoxPrivate::updateEdit in qtbase [1].
Therefore, connect the QDoubleSpinBox::textChanged signal
to the slot that calls signal_changed() instead to ensure
it gets called nonetheless, and disconnect from the other signal.

While at it, also add a SolarMutexGuard when calling the
signal.

This fixes the issue noticed with the "Go to Page"
dialog mentioned in previous commit

    Change-Id: I1f24cf3925e945ae78a9f1646535e08736cd8786

    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Wed Nov 27 23:53:58 2024 +0100

        tdf#130857 qt weld: Support "Go to Page" dialog

as:

> One issue seen with the dialog is that by using the
> up arrow of the spinbox to increase the value, it
> is currently possible to increase the value
> beyond the maximum value (last page number),
> while this is not the case when typing a number
> into the box manually.
>
> This is because the GotoPageDlg::PageModifiedHdl
> handler currently only gets called for the
> latter case, not the former one, despite
>
>     Change-Id: Ie19bc852f4ceed0fa79565302975376db7126ea4
>     Author: Michael Weghorn <m.weghorn@posteo.de>
>     Date:   Wed Nov 27 22:53:55 2024 +0100
>
>         tdf#130857 qt weld: Also notify about programmatic text changes
>
> and will be addressed in a separate commit.

[1] https://code.qt.io/cgit/qt/qtbase.git/tree/src/widgets/widgets/qabstractspinbox.cpp?id=ced47a590aeb85953a16eaf362887f14c2815c45#n1790

Change-Id: Ifba9a0877442f9e84f0103d8aab202ae3583c5cf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177451
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: I54ec1368ab64d422de13217e877076a3ee41de94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177456
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Change-Id: I68a38cd7b2bf2dd966b357d81b6831790a229392
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177457
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Change-Id: Id7f54dd27a33cb4979e4d2594002ace25e65b34f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177441
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
This puts NSS and OpenSSL implementations into own classes and
adds an interface to make this possible. The implementation is
now determined in Library_comphelper.

Change-Id: I4918f19bca0adfd2f9180fb418d1bd57bb83982d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177383
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Seen in export of forum-mso-en-11772.docx to rtf and reimport

so rtf cannot be imported, a problem probably since:

commit c14355592c
CommitDate: Tue Dec 31 18:02:07 2013 +0100

    Related: fdo#66440 RTF export: handle NULL component in FlyFrameOLEMath()

A problem with casting the uno proxy obj probably got fixed with:

commit ef53355355
CommitDate: Wed Jan 4 13:49:58 2023 +0000

    Rudimentary support for dynamic_cast on UNO proxy objects

At least now converting the original test case to rtf doesn't crash for
me on export, and now uses "if (pBase)" to keep balanced and at least
output a preview image if not the math text content.

Change-Id: Ib428ab89fac6f36f1fa8e3bd7b3b01cd0a889d7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177442
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I93571abf7f056f51039672d03a7bcfc1d6bb6dea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177465
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
since:

commit 1ae71d8f09
CommitDate: Fri Dec 16 20:18:04 2022 +0000

    Revert "fix math export/import in docx/rtf"

tidy up here, and possibly

commit ef53355355
CommitDate: Wed Jan 4 13:49:58 2023 +0000

    Rudimentary support for dynamic_cast on UNO proxy objects

is also relevant

Change-Id: I27548c5071df4f3231a49a1ee47fa72d0a93148c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177471
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I512969e1583f780b54c035f6a3c3c3e14e783016
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177472
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Set the allowed range using weld::SpinButton::set_range
so that weld::SpinButton makes sure that a value within
the correct range is set, instead of having a custom
handler called when the text of the spinbutton changes
that effectively does the same thing (+ manually setting
cursor to the end of the edit, but sticking to the toolkit
default there instead makes sense to me for consistency).

Adjust the test case to no longer type invalid input
for the page number ("3a"), as SalInstanceSpinButton
doesn't parse the number then, but would set the value to
the minimum (here: 1) instead.
(If a different behavior were intended here, that
should be implemented in SalInstanceSpinButton or
the underlying VCL widgets to be consistent
across dialogs.)

In GotoPageDlg::GetPageSelection, use weld::SpinButton::get_value
to get the integer value right away, instead of
getting the text and converting that into an
integer manually.

All that custom handling provided an interesting test case
while implementing support for that dialog using native
Qt widgets, see commits up to

    commit 70825e677f
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Nov 28 00:30:10 2024 +0100

        tdf#130857 qt weld: Notify about spinbox combined value+text change

, but apart from that (which is done now), I think
that a more standard approach makes more sense.

Change-Id: I06492b6629a4210c6325d50467da8e195daa4c94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177463
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Change-Id: Ie57bf41790800cc3bc83e0785a9063643d700c1f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177458
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
A potential dereference of nullptr was introduced as renaming overlook
in commit 507aced21a (INTEGRATION: CWS
sdwarningsbegone (1.68.10); FILE MERGED, 2006-12-12).

Change-Id: I4cf787e3ec3e1819040368d17279cae4db391bc7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177461
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
In commit 5e6def1bd4 (Redesign for XTransferable,
2001-01-19), a code was introduced, that used two different pPickObj variables.
Later, in commit 507aced21a (INTEGRATION: CWS
sdwarningsbegone (1.68.10); FILE MERGED, 2006-12-12), the name conflict was
fixed; but that fix changed the object used here, from the nearest, that was
just initialized in the current scope, to the one that was optionally assigned
early in the function, depending on a variable not used in current scope. I
assume that that was an overlook; so fix it now.

I don't have a failure case, just found it by code reading, so this could be
wrong, and need be reverted, hopefully with an explanation.

Change-Id: Ib95bc450b78f64e1ac468e9676f32395ddaf0870
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177464
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
The creation of own TransferableDataHelper was needed when the code
was introduced initially, taking a reference to XTransferable; now,
when it already takes a helper, it's no more needed.

Change-Id: I4c42327ab9b964c61572be13a4a89b44efc8d343
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177466
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I6ec03b1c3238a9c222444078b3d9b5ccb40d81d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177468
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Change-Id: I41d767833eb3dbc4264c1d6b63b7ddb71e422472
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177469
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
Change-Id: I60eaa9de20577ef7c7930c3ade23851c91ea3260
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177475
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Move inline headings with their outline tree in
Navigator, clicking on the Move Heading Up/Down icons.

Instead of changing CompareSwOutlineNodes, which breaks
the code at other places, add a new SwOutlineNodesInline
and CompareSwOutlineNodesInline to sort inline headings
(put in Inline Heading frames) with normal headings only
for MoveOutlinePara and other part of Navigator's
outline moving.

Reordering chapters and sections using the Navigator was
limited for normal (root) headings, but not for headings
in text frames and tables.

Recent implementation of inline headings use text frames
with Inline Heading frame style, anchored as characters
to their paragraphs. Now these inline headings are movable
with the Navigator, with their outline tree, i.e. the paragraph
where the inline heading anchored as character, the following
paragraphs without inline heading, or the following subsections.

Note: selecting the inline headings is possible by the Navigator
content tree or or by clicking inside the text of the inline
heading in the document.

Note: according to the fix for tdf#143569, multiple headings
in the same text frame or table are ordered alphabetically in
the Navigator. This doesn't effect the inline headings, where
there is only a single heading in an Inline Heading text frame.

Follow-up to commit 7a35f3dc74
"tdf#48459 sw inline heading: apply it on the selected words",
commit d87cf67f8f
"tdf#131728 sw inline heading: fix missing/broken DOCX export"
and commit a1dcbd1d1c
"tdf48459 sw inline heading: add Inline Heading frame style".

Change-Id: I7618aa1d4e1ddc20512d81c9a2babfa660053cbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177438
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Not all properties are available for all kind of shapes.
In this case Visible is not available for a SvxFrameShape.

Change-Id: I7811ab6cd04d782f8758fbee449bbc5bc421fd51
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177470
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I5e3b3b3548ba93b96b33fe682405a2b0b53bbdee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176715
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 8dcb86a4a724f143f7d5cfcc3d1231a7f924cbd9)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177445
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
no logic change intended

Change-Id: Ie1b4d15af35b01c9f490db7eb33c9493775ab9b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177481
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
given that we return early on the opposite condition

no logic change intended, git diff -w is your friend

Change-Id: I37b7db3a1d092ffbe0ef41561982555f6b6d3bae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177482
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
so the first use of nNum is dead after scope

no logic change intended

Change-Id: I81a51531418b32a09f5b9dba1131bc65ac71df3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177483
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id43616644bc8495a6a5944de099ddfc29016bbe8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177484
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Change-Id: I8ac3024a3865a5e2e45d9eca70f1ca5e067971c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177495
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
* Update helpcontent2 from branch 'master'
  to 3d37519d37c1ac9e5d30b45f1cd922c73107d4d1
  - enable help for Tagalog (tl)
    
    Change-Id: I0e35015d4d2526ea0d09404140a1ee73ce658350
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/175653
    Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
    Tested-by: Jenkins
actualizacion automatica 2024-11-28
Some checks failed
Repo Lockdown / point-to-upstream (pull_request_target) Has been cancelled
3b76e7fcef
iapz merged commit 6c01e1e1fc into master 2024-11-28 11:49:12 -06:00
iapz referenced this pull request from a commit 2024-11-28 11:49:12 -06:00
iapz deleted branch actualizacion-master-2024-11-28 2024-11-28 11:49:15 -06:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: strepsirrhini/office-gobmx#2
No description provided.