Commit graph

489984 commits

Author SHA1 Message Date
Olivier Hallot
f2de1554af Update git submodules
* Update helpcontent2 from branch 'master'
  to 020c1cb426fa951da23f51c1d93b59259ec87608
  - tdf#155876 UI cmds Calc (03)
    
    + refactoring
    + Edit - Select menu and commands
    
    Change-Id: I2c1e7c37cf40184391f04c29b0b6f49f43bef0e5
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/158087
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-10-17 19:45:34 +02:00
Noel Grandin
dcaa66e466 tdf#157792 FILEOPEN: PPT: logo not displayed
regression from
    commit 3622404f09
    Author: Noel Grandin <noel.grandin@collabora.co.uk>
    Date:   Wed Oct 11 12:54:43 2023 +0200
    tdf#157636 FILEOPEN: PPT: Images have no background

But actually from
    commit 81994cb2b8b32453a92bcb011830fcb884f22ffe
    Convert internal vcl bitmap formats transparency->alpha (II)

where BitmapEx::CombineMaskOr was not properly updated.

To make this stuff more obvious, add a version of CombineOr
called AlphaCombineOr that only operates on AlphaMask objects.

Change-Id: I8222bcdd7babefb748d21a71d02775c6a74bf068
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158085
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-10-17 19:06:38 +02:00
Julien Nabet
0875594b38 Related tdf#157726: make iterators local to loops
to avoid crash in debug mode, see bt here:
https://bugs.documentfoundation.org/attachment.cgi?id=190245)

+ use != for iterator comparisons

Change-Id: I5b1e502097d723e6acc17687171195d81c60dcbe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158086
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2023-10-17 16:42:33 +02:00
Matthew Kogan
d67d47bf0e tdf#154454 sw: make comparison of changed paragraph numbering optional
by the new config option "DisplayChangedParagraphNumbering", as a
temporary fix to hide incorrect changes in corner cases.

Regression from commit 2413f21362
"tdf#115523 sw_redlinenum: show correct, also original numbering".

Change-Id: I6d85033cc3f60ac1075501fedfcd4c9862e00a9e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157940
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
2023-10-17 14:50:03 +02:00
Michael Weghorn
d6d4cae126 Bump Java build baseline from JDK 9 to 17
As discussed in the ESC call on 2023-08-10 [1],
bump the Java build baseline to 17.
This should not affect the Java runtime requirement,
since the target version is explicitly specified
already.

[1] https://lists.freedesktop.org/archives/libreoffice/2023-August/090759.html

Change-Id: I18251151392ca5edec8ca3d5cffd192d5f9f38b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155827
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-10-17 13:45:59 +02:00
Justin Luth
ce81efb31c related tdf#141457 sc notebookbar: make statistics a submenu
With so many different statistics commands,
the super-popular insert menu was dreadfully long.

And since it is a now single entry, might as well add it
to all MenuDatas to keep them all pretty much identical.

Change-Id: I89247a1806f884e92a52b66015c766180d89149e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158065
Tested-by: Justin Luth <jluth@mail.com>
Reviewed-by: Justin Luth <jluth@mail.com>
2023-10-17 13:22:28 +02:00
László Németh
7d08767b89 tdf#130088 tdf#119908 smart justify: fix DOCX line count + compat opt.
Writer typeset DOCX files with more lines/pages, because of
new default paragraph justification algorithm of MSO 2013 and
newer, which resulted in losing text layout interoperability
for new DOCX documents.

Add new compatibility option "JustifyLinesWithShrinking" to
store also the new type of justification in OpenDocument files.

First analysis of the unknown justification algorithm shows
up to 2% shrinking of plain justified line. Apply this value
to break the lines in the same (or very similar) positions
during importing a DOCX file with compatibilityMode >= 15
(created in MSO 2013 or newer), to avoid typesetting more lines
and pages.

Note: shrinking will be added by the next commits, fixing
the temporary exceeding lines.

Change-Id: I9a00db888e9af3f6723e4c502158e8e56a00ef02
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158063
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
2023-10-17 10:37:23 +02:00
Caolán McNamara
7273de2730 check earlier on loading ole objects if parent doc is untrusted referer
Change-Id: Ib1169d5c40ca87f789c71b48124754e073895fcd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158054
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-17 10:24:59 +02:00
Miklos Vajna
40b8b9ee5f n#775899 sw: add testcase for the FloattableNomargins compat flag
This was added in commit 50a1df360c
(n#775899 sw: add FloattableNomargins compat flag, 2012-08-23), without
a testcase, so it was hard to make later changes without breaking the
old behavior.

Later commit 0898871b7b (n#775899
testcase, 2012-08-27) did add a testcase for the bug, it was a different
sub-task there, so the test document had no margins, while this compat
flag is about some special handling around non-zero paragraph margins
and floating tables.

So add a new test that fails without the
DocumentSettingId::FLOATTABLE_NOMARGINS block in
SwBorderAttrs::CalcLeft() to make sure that this keeps working after I
fix tdf#157573, which is a related problem.

Change-Id: I09661be726e3db6be51d0cbb44cb5c504510e5ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158069
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2023-10-17 10:00:32 +02:00
Irgaliev Amin
0e14912af0 tdf#157788 Saving the "Show navigation panel" setting for a device
Currently, the value of the "Show navigation panel" parameter for
presentations is not saved. The section in which this setting is
now located, apparently, is saved in files. It might make sense
to move this setting to Tools -> Options -> LibreOffice Impress -> General,
because it relates to the device rather than the slideshow.

Change-Id: I2286a4a6d432b11fce2b9c3e65fa6b82e004275f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158057
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2023-10-17 09:55:28 +02:00
Xisco Fauli
07a80b8940 tdf#157786: sc_datetime_functions: Add unittest
Change-Id: I94f2d40ced8e59aea5875831289368722a58c42a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158056
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2023-10-17 08:51:15 +02:00
Miklos Vajna
a55e2ad714 svx: prefix members of SdrHdlList
See tdf#94879 for motivation.

Change-Id: I9e529ef12c05e333e2eeb535d2ae72e5d4c84a72
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158062
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-10-17 08:12:01 +02:00
Michael Weghorn
ca01deadcb gtk3 a11y test: Let xvfb-run auto-determine free server num
As the xvfb-run manpage says, it uses a default server number of 99:

>      -n servernumber, --server-num=servernumber
>             Use servernumber as the server number (but see the -a, --auto-servernum option above).  The default is 99.

The gtk3 a11y tests use xvfb-run. Running the test multiple
times in parallel (e.g. when doing two separate builds with
tests, as happens on CI) would fall like this on Debian testing:

    $ make CppunitTest_vcl_gtk3_a11y
    make -j 12 -rs -f /home/michi/development/git/libreoffice/Makefile.gbuild CppunitTest_vcl_gtk3_a11y
    [CUT] vcl_gtk3_a11y
    xvfb-run: error: Xvfb failed to start
    Hint: You are currently not seeing messages from other users and the system.
          Users in groups 'adm', 'systemd-journal' can see all messages.
          Pass -q to turn off this notice.
    No coredumps found.

    Error: a unit test failed, please do one of:

    make CppunitTest_vcl_gtk3_a11y CPPUNITTRACE="gdb --args"
        # for interactive debugging on Linux
    make CppunitTest_vcl_gtk3_a11y VALGRIND=memcheck
        # for memory checking
    make CppunitTest_vcl_gtk3_a11y DEBUGCPPUNIT=TRUE
        # for exception catching

    You can limit the execution to just one particular test by:

    make CPPUNIT_TEST_NAME="testXYZ" ...above mentioned params...

However, it behaves differently on Alma Linux 8, where it
looks like xvfb-run seems then to reuse the existing
Xfvb session, causing the tests to potentially find
the LibreOffice instance from another test run, and
then inspecting the wrong one, leading to failures
like the one in [1]:

    equality assertion failed
    - Expected: ecclectic.fodt — LibreOfficeDev Writer
    - Actual  : ecclectic.fodt — LibreOfficeDev Writer 24.2 [9bc2aede99]

The fact that the second instance of xvfb-run
reuses the session of the firs one and finds the
LibreOffice there can also be reproduced on Alma Linux 8
by just running these 2 commands in parallel:

1) start LO in xfvb-run session:

    $ xvfb-run dbus-launch libreoffice

2) run below Python script that lists the
   running applications:

    $ xvfb-run dbus-launch python3 /home/vagrant/atspi-list-apps.py
    --------start--------
    [application | soffice]
    --------end--------
    /usr/bin/xvfb-run: line 186: kill: (27078) - No such process

This *should not* list the applications from
the other xfvb-run.

It works as expected when passing `--auto-servernum`:

    $ xvfb-run --auto-servernum dbus-launch python3 /home/vagrant/atspi-list-apps.py
    --------start--------
    --------end--------

Therefore, pass the `--auto-servernum` arg to xvfb-run, so that it
automatically determines a free server number instead.

>      -a, --auto-servernum
>             Try to get a free server number, starting at 99, or the argument to --server-num.

Python script mentioned above used for testing:

    $ cat atspi-list-apps.py
    #!/usr/bin/python3

    import pyatspi

    registry = pyatspi.registry.Registry()
    apps = list(registry.getDesktop(0))

    print('--------start--------')

    for app in apps:
        print(f'{app}')

    print('--------end--------')

[1] https://ci.libreoffice.org/job/gerrit_linux_gcc_release/151750/consoleFull#-1985341263d893063f-7f3d-4b7e-b56f-4e0f225817cd

Change-Id: I0673212fb8fed5c9698c9f797b7bf49ba51033b0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158021
Tested-by: Jenkins
Reviewed-by: Colomban Wendling <cwendling@hypra.fr>
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-10-17 07:50:37 +02:00
Mike Kaganski
d4efce34e0 tdf#148725: Reset must clear respective items from m_pOutSet
After Reset, the tabbed dialog's output set should restore to the same
state (concerning the current tab page) as immediately after creation.
This state means that pressing OK immediately afer Reset would not try
to set or remove any items in the target. SfxTabDialogController::Ok
has this code:

    if (m_pOutSet && m_pOutSet->Count() > 0)
        bModified = true;

meaning that m_pOutSet is expected to be empty in case of completely
unmodified dialog; and Reset must make sure this for a given page.

Instead, commit 28fc0962b1 (weld SwLabDlg,
2018-04-27) made Reset handler to populate the output item set with all
the items from the input set, that belong to the page's which ranges.
This made all the settings set in parents (which therefore appeared in
the input set) to be set directly in the target upon application.

Change-Id: Iacfffb5670cc3ade950ac412b818acb482845255
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158067
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-17 07:36:59 +02:00
Mike Kaganski
e134bcf027 Related: tdf#148725 Fix SvxExtParagraphTabPage::ChangesApplied
It was setting values, instead of saving them, ever since commit
a212ef2b6e (tdf#93901: apply handling in
style/edit dialog improved, 2015-09-11).

The same thing in SvxStdParagraphTabPage::ChangesApplied was fixed in
commit 8b0dae14a5 (weld
SvxStdParagraphTabPage, 2018-06-14); but a similar commit
eb1d6b16e7 (weld SvxExtParagraphTabPage,
2018-06-14) kept this in SvxExtParagraphTabPage.

Change-Id: I5fb61a9416dab4ccf9fa690eca87a16f7b9378bd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158066
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-17 07:36:52 +02:00
Jim Raykowski
2a05fd0fd2 tdf#144349 related: Make master document navigator track Text content
Done, with a related patch to make the master document navigator track TOX content, to make the Navigator less likely not to have an item selected, which may be enough to resolve tdf#155741 - Allow insertion of items into master without a selected item

Change-Id: I1a9d2a12a01ca2c5f3f162e8da932c04ced9a461
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157741
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2023-10-17 07:24:37 +02:00
Jim Raykowski
b97aa4eada tdf#144349 related: Make master document navigator track TOX content
Done, with a related patch to make the master document navigator track 'Text' content, to make the Navigator less likely not to have an item selected, which may be enough to resolve tdf#155741 - Allow insertion of items into master without a selected item

Change-Id: I6df1b668c502cadbe057229e031ede9aa4f4089a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157695
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2023-10-17 05:20:05 +02:00
Eike Rathke
3161a6c351 Resolves: tdf#157797 Let GetCellValue() propagate previous error, if any
Change-Id: I27ee8d19e4f45bef81e133c82ac17b825790208f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158064
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2023-10-16 23:35:02 +02:00
Balazs Varga
1f440348eb tdf#157482 UI: Turn Security Warnings popup windows into infobars
In case of all the 4 security warnings we will have a new infobar warning
dialog message with an infobar button which can open the security windows
option settings and we can set which security issues should warn us, and also
which security infos we want to remove. (etc after saving)

TODO: If the directly the file dialog window pop up the Infobar message will only
update after closing the file dialog window. That should be fixed later.

Change-Id: Idf0f728fd40089d3691f8f044d3718a4e0d99cad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157797
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
2023-10-16 23:18:56 +02:00
Mike Kaganski
2247b00230 Simplify a bit
Non-negative nCommentPos implies non-empty selection.

Change-Id: Id3e5701fbddca3159d81513d8c7d54816e45e4c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158060
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-16 22:06:04 +02:00
Mike Kaganski
2b8b6ced7c Simplify a bit
Change-Id: Ic621da194d92e3a4202c47ec4828272e8102a146
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158061
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-16 20:41:05 +02:00
Paris Oplopoios
e999366393 Execute notifyViewRenderState on view constructor
notifyViewRenderState should be executed as soon as a view is created in
order to give a view id to the client

Change-Id: I31b7e61599f546bd5ec134775e6235633a6526f3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154681
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Paris Oplopoios <parisoplop@gmail.com>
(cherry picked from commit 6c6bb1d434)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154709
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 20:12:39 +02:00
Caolán McNamara
00904f994a ofz#63295 Null-dereference READ
Change-Id: Ib8bfa814099c1c1f3d65b18026ea812c80b6e9c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158058
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 20:11:36 +02:00
Michael Weghorn
f8be1b7384 qtcreator: Specify C++ std version using CONFIG qmake var
Extract the C++ standard version to use that is specified
by a `-std=<version>` or `-std:<version>` compiler flag,
and set that via "CONFIG += <version>" in the .pro files
used by Qt Creator.

This makes the Clang Code Model use the correct mode
and no longer complain about `char8_t` after the
switch to C++20 in my Windows development setup
in Qt Creator:

> accessibletabbarpagelist.hxx:22:10: In included file: use of undeclared identifier 'char8_t'
> stringutils.hxx:252:31: error occurred here

The previous way of specifying this via
`QMAKE_CXXFLAGS` as introduced in

    commit 92c03d9bf6
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Fri Jun 7 21:44:03 2019 +0200

        qtcreator: Take over '-std=...' from CXXFLAGS

appears to not (no longer?) work at least with Qt Creator 11.0.3
on Windows.

On the contrary however, setting only `CONFIG` and
not `QMAKE_CXXFLAGS` causes the exact same problem
in my Linux setup.

Therefore, set both qmake variables.

Note that there is a specific set of accepted values
for the the `CONFIG` variable in .pro files [1],
but at least "c++20" and "c++latest" are accepted
and have the expected meaning, so that should be
fine for now.

[1] https://doc.qt.io/qt-6/qmake-variable-reference.html#config

Change-Id: Idc75b74300c7bdd0f6193fcfc1758b536728b887
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158053
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-10-16 18:29:23 +02:00
Mike Kaganski
f26bf09a0e tdf#141892: Set chart view to dirty state after loading
Previously, ChartViewHelper::setViewToDirtyState was only called in
ChartModel::impl_notifyModifiedListeners during the load process of
inline charts; after commit 574eec9036,
the chart doesn't set its modified state when loading, and thus the
view did not get notified about the necessary updates.

This change introduces a hidden property in ChartDocumentWrapper,
named 'ODFImport_UpdateView', which is set in SchXMLImport dtor
to force the notification after the loading.

Change-Id: Id9d82f16d233d2172cd6808a8498822e13b21b21
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158051
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-16 18:27:49 +02:00
Mike Kaganski
6506279e3b tdf#157776: Do not set chart and its parent modified when painting
When the chart is painted for the first time, its update may create
the initial set of objects, which used to set modified state after
loading documents.

Change-Id: Ie50ef34875440058020486192fe649b492e4baf9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158015
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-16 18:27:40 +02:00
Mike Kaganski
be71e660fd Fix UITests on Windows
... after commit 0d21e1075f (uitest:
add signal_handler function, 2023-10-04), which added handlers
unconditionally, for signals unavailable on Windows.

Change-Id: I8b177c4110f869781b2501ee6f15ae7ff4862a94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158050
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-16 18:27:32 +02:00
Caolán McNamara
267be127f2 retain Referer information available in OCommonEmbeddedObject ctor
Change-Id: I2cb901e81de3b7db73cd2088348ddad46ae603dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158052
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 17:52:18 +02:00
Szymon Kłos
245c76630f jsdialog: enable Hyperlink Dialog
- removed old "tunneled window" test for hyperlink dialog
  which cannot work when using jsdialogs

Change-Id: I62b6c568149d4ea4656b23c47f4c79efe61abfb0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156668
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Attila Szűcs <attila.szucs@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157022
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 17:38:04 +02:00
Stanislav Horacek
9784148869 Update git submodules
* Update helpcontent2 from branch 'master'
  to dfa69e84f71bced00eb552b0da554907f32794f5
  - clarify which files are saved in steps of Firebird wizard
    
    Change-Id: If8cb4036ce5582d272079cdf29ddb856ce0b5b85
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/157977
    Tested-by: Jenkins
    Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2023-10-16 17:35:18 +02:00
Caolán McNamara
878c2da6d2 Related: tdf#157726 restore try/catch block
before

commit de42529ca9
Date:   Wed Sep 6 14:49:19 2023 +0200

    replace svx::PropertyValueProvider with simpler implementation

PropertyChangeNotifier::notifyPropertyChange had a try/catch, but
afterwards SvxShape::notifyPropertyChange doesn't

Change-Id: If78732bea08d0f760b3b616ad55d28d40fa50fcf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158026
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 17:20:28 +02:00
Caolán McNamara
1bdd38f6a8 Resolves: tdf#157726 missing chart from Base report
since:

commit c9b5c627cc
Author: Caolán McNamara <caolan.mcnamara@collabora.com>
Date:   Wed Sep 6 10:05:23 2023 +0100

    add referer to ole objects

Change-Id: I9ef18bf0d734dd900bdbcac475ca15af7b15456e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158027
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 17:15:49 +02:00
Eike Rathke
2fa1cdcaef Resolves: tdf#157786 Use GetFloor32() for date days instead of GetInt32()
Change-Id: I1d6242b516f4b23473151bb99cbdf1a057a15746
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158029
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2023-10-16 16:31:32 +02:00
Caolán McNamara
2b1aaa84e2 check return of get_iter_abs_pos
Change-Id: Ifdabd65dc9fa5bc6d0c5c6eee1318f99bf918cd2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158025
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 16:13:30 +02:00
Heiko Tietze
8ff7d75c19 Revert "Resolves tdf#156685 - "Object without fill" style for tables"
This reverts commit 86eb7ad2b4.

Reason for revert: More generic solution in I1ca8cfe539a662100f6c581fd633ab1ebd5c6bfb

Change-Id: Ie2769a90f776602e38fc2795e08d591f9ae8d618
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158035
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2023-10-16 15:35:23 +02:00
Heiko Tietze
f07d47fff5 Related tdf#156182 - Keep legacy contrast for default background
Band aid for follow-up issues, eg. tdf#157706, tdf#157706...

Change-Id: I1ca8cfe539a662100f6c581fd633ab1ebd5c6bfb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158024
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2023-10-16 15:35:10 +02:00
Justin Luth
f5a2192eff tdf#148539 sc notebookbar: add Sparklines to MenuData
Sparklines do not have an icon yet,
so I didn't attempt to add any (visible) entries
to the notebookbar itself.

Change-Id: I144ff76306aef0ec184794878a449e0cefd09280
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157978
Tested-by: Justin Luth <jluth@mail.com>
Reviewed-by: Justin Luth <jluth@mail.com>
2023-10-16 15:19:26 +02:00
Justin Luth
956b07c825 tdf#115485 sc notebookbar: add MenuInsert-RandomNumber...
Change-Id: I916fd3cb1b39d2d53c77907381dd7d42d3327d63
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157986
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2023-10-16 15:13:45 +02:00
Stephan Bergmann
f7371ed8c1 Silence UBSan misaligned-pointer-use
...as seen during CppunitTest_sd_import_tests2,

> pixman-sse2.c:522:16: runtime error: load of misaligned address 0x5170000a4f83 for type 'const uint32_t *' (aka 'const unsigned int *'), which requires 4 byte alignment
> 0x5170000a4f83: note: pointer points here
>  00  b8 ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff c0 00  b8 ff ff ff ff ff ff
>               ^
>  #0 in combine1 at workdir/UnpackedTarball/pixman/pixman/pixman-sse2.c:522:5
>  #1 in sse2_combine_add_u at workdir/UnpackedTarball/pixman/pixman/pixman-sse2.c:1366:6
>  #2 in sse2_composite_add_8_8 at workdir/UnpackedTarball/pixman/pixman/pixman-sse2.c:4490:2
>  #3 in add_glyphs at workdir/UnpackedTarball/pixman/pixman/pixman-glyph.c:615:6
>  #4 in pixman_composite_glyphs at workdir/UnpackedTarball/pixman/pixman/pixman-glyph.c:673:5
>  #5 in composite_glyphs at workdir/UnpackedTarball/cairo/src/cairo-image-compositor.c:941:2
>  #6 in composite_glyphs at workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:2295:12
>  #7 in clip_and_composite at workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:1049:15
>  #8 in _cairo_traps_compositor_glyphs at workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:2331:11
>  #9 in _cairo_compositor_glyphs at workdir/UnpackedTarball/cairo/src/cairo-compositor.c:292:11
>  #10 in _cairo_image_surface_glyphs at workdir/UnpackedTarball/cairo/src/cairo-image-surface.c:1030:12
>  #11 in _cairo_surface_show_text_glyphs at workdir/UnpackedTarball/cairo/src/cairo-surface.c:2920:15
>  #12 in _cairo_gstate_show_text_glyphs at workdir/UnpackedTarball/cairo/src/cairo-gstate.c:2077:15
>  #13 in _cairo_default_context_glyphs at workdir/UnpackedTarball/cairo/src/cairo-default-context.c:1334:12
>  #14 in cairo_show_glyphs at workdir/UnpackedTarball/cairo/src/cairo.c:3670:14
>  #15 in CairoTextRender::DrawTextLayout(GenericSalLayout const&, SalGraphics const&) at vcl/unx/generic/gdi/cairotextrender.cxx:476:9
>  #16 in SvpSalGraphics::DrawTextLayout(GenericSalLayout const&) at vcl/headless/svptext.cxx:72:23
>  #17 in GenericSalLayout::DrawText(SalGraphics&) const at vcl/source/gdi/CommonSalLayout.cxx:171:18
>  #18 in OutputDevice::ImplDrawTextDirect(SalLayout&, bool) at vcl/source/outdev/text.cxx:331:16
>  #19 in OutputDevice::ImplDrawText(SalLayout&) at vcl/source/outdev/text.cxx:482:9
>  #20 in OutputDevice::DrawTextArray(Point const&, rtl::OUString const&, KernArraySpan, std::span<unsigned char const, 18446744073709551615ul>, int, int, SalLayoutFlags, SalLayoutGlyphs const*) at vcl/source/outdev/text.cxx:951:9
>  #21 in drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D(drawinglayer::primitive2d::TextSimplePortionPrimitive2D const&) at drawinglayer/source/processor2d/vclprocessor2d.cxx:422:33
>  #22 in drawinglayer::processor2d::VclPixelProcessor2D::processTextSimplePortionPrimitive2D(drawinglayer::primitive2d::TextSimplePortionPrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:404:9
>  #23 in drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:200:13
>  #24 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #25 in drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:56:13
>  #26 in drawinglayer::primitive2d::GroupPrimitive2D::getChildren(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&) const at include/drawinglayer/primitive2d/groupprimitive2d.hxx:76:90
>  #27 in drawinglayer::primitive2d::GroupPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/groupprimitive2d.cxx:53:13
>  #28 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:46:24
>  #29 in drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:378:13
>  #30 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #31 in drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:56:13
>  #32 in drawinglayer::primitive2d::GroupPrimitive2D::getChildren(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&) const at include/drawinglayer/primitive2d/groupprimitive2d.hxx:76:90
>  #33 in drawinglayer::primitive2d::GroupPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/groupprimitive2d.cxx:53:13
>  #34 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:46:24
>  #35 in drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:378:13
>  #36 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #37 in drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:56:13
>  #38 in drawinglayer::primitive2d::GroupPrimitive2D::getChildren(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&) const at include/drawinglayer/primitive2d/groupprimitive2d.hxx:76:90
>  #39 in drawinglayer::primitive2d::GroupPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/groupprimitive2d.cxx:53:13
>  #40 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:46:24
>  #41 in drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:378:13
>  #42 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #43 in drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:56:13
>  #44 in drawinglayer::primitive2d::BufferedDecompositionPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/BufferedDecompositionPrimitive2D.cxx:41:14
>  #45 in drawinglayer::primitive2d::SdrTextPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx:235:47
>  #46 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:46:24
>  #47 in drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:378:13
>  #48 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #49 in drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:56:13
>  #50 in drawinglayer::primitive2d::BufferedDecompositionPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/BufferedDecompositionPrimitive2D.cxx:41:14
>  #51 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:46:24
>  #52 in drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:378:13
>  #53 in drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #54 in sdr::contact::ObjectContactOfPageView::DoProcessDisplay(sdr::contact::DisplayInfo&) at svx/source/sdr/contact/objectcontactofpageview.cxx:279:31
>  #55 in sdr::contact::ObjectContactOfPageView::ProcessDisplay(sdr::contact::DisplayInfo&) at svx/source/sdr/contact/objectcontactofpageview.cxx:117:21
>  #56 in SdrPageWindow::RedrawAll(sdr::contact::ViewObjectContactRedirector*) at svx/source/svdraw/sdrpagewindow.cxx:354:28
>  #57 in SdrPageView::CompleteRedraw(SdrPaintWindow&, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*) at svx/source/svdraw/svdpagv.cxx:239:18
>  #58 in SdrPaintView::DoCompleteRedraw(SdrPaintWindow&, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*) at svx/source/svdraw/svdpntv.cxx:610:21
>  #59 in SdrPaintView::CompleteRedraw(OutputDevice*, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*) at svx/source/svdraw/svdpntv.cxx:523:5
>  #60 in sd::View::CompleteRedraw(OutputDevice*, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*) at sd/source/ui/view/sdview.cxx:498:17
>  #61 in sd::DrawView::CompleteRedraw(OutputDevice*, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*) at sd/source/ui/view/drawview.cxx:517:17
>  #62 in sd::DrawDocShell::Draw(OutputDevice*, JobSetup const&, unsigned short, bool) at sd/source/ui/docshell/docshel2.cxx:112:12
>  #63 in SfxObjectShell::DoDraw_Impl(OutputDevice*, Point const&, Fraction const&, Fraction const&, JobSetup const&, unsigned short, bool) at sfx2/source/doc/objembed.cxx:204:5
>  #64 in SfxObjectShell::DoDraw(OutputDevice*, Point const&, Size const&, JobSetup const&, unsigned short, bool) at sfx2/source/doc/objembed.cxx:151:9
>  #65 in SfxObjectShell::CreatePreview_Impl(bool, VirtualDevice*, GDIMetaFile*) const at sfx2/source/doc/objcont.cxx:197:40
>  #66 in SfxObjectShell::GetPreviewBitmap() const at sfx2/source/doc/objcont.cxx:109:9
>  #67 in SfxObjectShell::WriteThumbnail(bool, com::sun::uno::Reference<com::sun::io::XStream> const&) at sfx2/source/doc/objstor.cxx:3738:31
>  #68 in SfxObjectShell::GenerateAndStoreThumbnail(bool, com::sun::uno::Reference<com::sun::embed::XStorage> const&) at sfx2/source/doc/objstor.cxx:3696:33
>  #69 in SfxObjectShell::SaveTo_Impl(SfxMedium&, SfxItemSet const*) at sfx2/source/doc/objstor.cxx:1469:19
>  #70 in SfxObjectShell::PreDoSaveAs_Impl(rtl::OUString const&, rtl::OUString const&, SfxItemSet const&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) at sfx2/source/doc/objstor.cxx:2992:39
>  #71 in SfxObjectShell::CommonSaveAs_Impl(INetURLObject const&, rtl::OUString const&, SfxItemSet&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) at sfx2/source/doc/objstor.cxx:2782:9
>  #72 in SfxObjectShell::APISaveAs_Impl(std::basic_string_view<char16_t, std::char_traits<char16_t>>, SfxItemSet&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) at sfx2/source/doc/objserv.cxx:319:19
>  #73 in SfxBaseModel::impl_store(rtl::OUString const&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&, bool) at sfx2/source/doc/sfxbasemodel.cxx:3191:42
>  #74 in SfxBaseModel::storeToURL(rtl::OUString const&, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) at sfx2/source/doc/sfxbasemodel.cxx:1801:13
>  #75 in UnoApiTest::saveWithParams(com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&) at test/source/unoapi_test.cxx:213:16
>  #76 in UnoApiTest::save(rtl::OUString const&, char const*) at test/source/unoapi_test.cxx:178:5
>  #77 in UnoApiTest::saveAndReload(rtl::OUString const&, char const*) at test/source/unoapi_test.cxx:218:5
>  #78 in testOverflowBehaviorClip::TestBody() at sd/qa/unit/import-tests2.cxx:1899:5

Change-Id: Iea3e107608137c4dec9103ee0b04e801284b5fa9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158018
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-16 14:08:05 +02:00
Attila Szűcs
3649dc202b LOK: Navigator: fix expand problems
Save/load content types' expanded status to view, and make sure it
is synchronized with client.
Treeviews now receive/send collapse event/status from/to client.
I've rewritten the way how headings are opened by default
(because synch of collapsed status broke that, as sub-headings
were not expanded at core side).

Change-Id: I80f5b4d99fe5224391a92c4609f94ddbcf37b8ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153771
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
(cherry picked from commit b95750af71)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158016
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 11:39:39 +02:00
Attila Szűcs
94426f366b LOK: fix for navigator: hide empty contentTypes
fixed that opening heading by default, first check if headings
are not hidden, because it blindly opened the 1. type, but
from now, that can be an other type, or nothing

Change-Id: I86cac472d8cba9a46befc5a84ef073c01fa7243d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152779
Tested-by: Andras Timar <andras.timar@collabora.com>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
(cherry picked from commit 61e2022110)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157966
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 11:39:31 +02:00
Mike Kaganski
7215ac4ded tdf#157776: Do not send delayed update notifications for setModified(false)
Change-Id: I4948cc217079d2ed535b95e3892e619736237cc7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158014
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-16 11:12:52 +02:00
Eike Rathke
c25eaf109a Factor out an occurrence of sumNeumaierNormal()
Change-Id: I693f78be36005cd1fc387a2878112de60bd24905
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158012
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2023-10-16 10:54:04 +02:00
Paris Oplopoios
cfba837abe Revert "Make sure views get new themes on .uno:ChangeTheme"
Seems to cause more issues than it solves, reverting for now

This reverts commit 884fd220d0.

Change-Id: If32a9d3bd922afe5611e5258987eec9ec685bc8e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157951
Tested-by: Jenkins
Reviewed-by: Paris Oplopoios <parisoplop@gmail.com>
2023-10-16 10:41:57 +02:00
Miklos Vajna
33ade4171a sw floattable, wrap on all pages: add DOCX filter
- map DocumentSettingId::ALLOW_TEXT_AFTER_FLOATING_TABLE_BREAK to
  <w:compatSetting w:name="allowTextAfterFloatingTableBreak"> on export

- do the opposite on import

  - this requires a bit of rework, to avoid routing <w:compatSetting>
    via a grab-bag when we want to actually read it during import

  - also expose GetBooleanValue() from the OOXML tokenizer, so dmapper
    can know when the value of the compat flag is a true-like string.

Note that it seems DOC and RTF don't have a matching compat flag for
this.

Change-Id: I0cb1230ee40994f59b816c42f8e7d2ac658b3212
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158013
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2023-10-16 09:53:35 +02:00
Pranam Lashkari
5af582071d LOK: update navigator instantly on heading level change
problem:
i.e: when you change the header level,
it was not reflected instantly in navigator and required reopening it.
That was due to header level change was not registed as change in LOK case

Change-Id: I503eb6a3fe9d2801ea5b45b0a1096e8174360ddc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156239
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Attila Szűcs <attila.szucs@collabora.com>
(cherry picked from commit 1fca94be7f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157967
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-16 09:43:23 +02:00
Miklos Vajna
d254ec0e8e xmloff: document the ContinuousEndnotes Writer setting
Change-Id: I37d223092cc2ff5ccfdaf39424ba9dca2b9b1ef4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157941
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-10-16 08:12:52 +02:00
Stephan Bergmann
fab52afe82 -Wimplicit-function-declaration
Change-Id: Id78f5378566b35da6212bd2ff71d988956e682f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157994
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-15 23:22:44 +02:00
Stephan Bergmann
d3a0815b12 Drop OStringConstExpr, use constexpr OString instead
Change-Id: Ibb41a27fe7d5456d8db0c98821d5b2acf8586b70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157949
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-15 22:05:17 +02:00
Stephan Bergmann
b4844c310b Repurpose loplugin:stringstatic for O[U]String vars that can be constexpr
...now that warning about O[U]String vars that could be O[U]StringLiteral is no
longer useful

Change-Id: I389e72038171f28482049b41f6224257dd11f452
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157992
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-15 21:15:49 +02:00