Commit graph

491790 commits

Author SHA1 Message Date
Stephan Bergmann
a731395303 Set --with-online-update-mar-channel for distro-configs/LibreOfficeWin64.conf
(Somewhat randomly setting it to the same name that is used, via
-DMAR_CHANNEL_ID=\"LOOnlineUpdater\" in external/onlineupdate/Executable_mar.mk,
as the default channel name in the mar executable tool that we build.)

Change-Id: Ia77e3e841139947dad894efa81f011cafd6c7539
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161049
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-20 14:10:04 +01:00
Justin Luth
5032244819 tdf#111969 sw: acknowledge that last half-character for smart tags
This fixes CTRL-clicking on the last half-character of the smarttag
and having nothing happen, or triggering it
with the half-character before the smarttag.

This is a suggested follow-up to right-clicking on a selection,
which had the same problem.

smart tags need an extension to activate,
so a unit test is impractical in this case.

Change-Id: I151c28090b5a6701df16dab95992eeae2aec3ca3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161033
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2023-12-20 13:56:03 +01:00
Ilmari Lauhakangas
b763e68a56 Update git submodules
* Update helpcontent2 from branch 'master'
  to 1ba5e041e6e4e259a69160b90afed882c8c0f664
  - tdf#158105 Change character "background" to "highlighting color"
    
    Change-Id: I9352093a3dfa4af8f763aba6bf2b5914b1f2b071
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/161051
    Tested-by: Jenkins
    Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
    Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2023-12-20 10:15:19 +01:00
Bogdan B
6c535425ad tdf#158105 Change character "background" to "highlighting color"
Change-Id: I98dcc9cf0d2e3306275a25ed83dc5692211ed442
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160037
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Reviewed-by: Hossein <hossein@libreoffice.org>
2023-12-20 09:33:37 +01:00
Caolán McNamara
f78a9d7d86 ofz#65182 putcontig8bitYCbCr22tile issue
Change-Id: I0242059b17d07c0ab4ec83aabd073ee31c4631d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161031
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-20 09:31:22 +01:00
Caolán McNamara
fdb37b71b5 cid#1545835 COPY_INSTEAD_OF_MOVE
and

cid#1545830 COPY_INSTEAD_OF_MOVE
cid#1545798 COPY_INSTEAD_OF_MOVE
cid#1545784 COPY_INSTEAD_OF_MOVE
cid#1545753 COPY_INSTEAD_OF_MOVE
cid#1545752 COPY_INSTEAD_OF_MOVE
cid#1545672 COPY_INSTEAD_OF_MOVE

Change-Id: Iaf2f77cb27ae0ea1585416a0c500f7c50d04e3fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161007
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-20 09:30:56 +01:00
Michael Stahl
fc5c81ced8 argon2: oops, forgot to build static lib with -fPIC
... and Julien Nabet reports that Debian's default shell dash doesn't
have "time", oddly enough.

Change-Id: I82734bdf9e943522471c4c9189fac463bca2a3aa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161008
Reviewed-by: René Engelhard <rene@debian.org>
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-12-20 09:13:28 +01:00
Miklos Vajna
ea1a05e43e CppunitTest_sw_rtfexport: avoid SwModelTestBase::getLength()
Better to check the body text, not just the length.

Change-Id: Id98cc408772c5d2c135bdd184d58a5eb12f1c011
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161005
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-12-20 08:28:36 +01:00
Caolán McNamara
b64f23b235 ofz#65165 Stack-buffer-overflow READ 4 test case
make VALGRIND=memcheck CppunitTest_tools_test

 Conditional jump or move depends on uninitialised value(s)
    at 0x13348ADA: BigInt::DivLong(BigInt const&, BigInt&, BigInt*) const (bigint.cxx:306)
    by 0x13349A0A: BigInt::operator/=(BigInt const&) (bigint.cxx:635)
    by 0x12A58F67: tools::BigIntTest::testLenB1() (test_bigint.cxx:103)
    by 0x12A5C6A8: void std::__invoke_impl<void, void (tools::BigIntTest::*&)(), tools::BigIntTest*&>(std::__invoke_memfun_deref, void (tools::BigIntTest::*&)(), tools::BigIntTest*&) (invoke.h:74)

if ( (static_cast<sal_uInt64>(aTmpB.nNum[nLenB1 - 1]) * nQ) >
                                         ^ nLenB1 is 0
    ((nTmp - static_cast<sal_uInt64>(aTmpB.nNum[nLenB1]) * nQ) << 32) + aTmpA.nNum[j - 2])

Since:

commit bcbc0857bf
Date:   Sun Dec 17 21:11:31 2023 +0300

    Simplify BigInt

Co-authored-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Id8dbff23f7b4312ba666e1443c41b7869713bfbc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160953
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-20 05:49:41 +01:00
Justin Luth
7e32aec38e related tdf#111969 fix smart tags job not being fired, due to typo
This fixes quikee's 7.5 regression
commit 01396925b7

If this is a help document, we don't want to run smart tags,
not the other way around.

It was correct originally - assuming this was just
a typo when the tests were pulled out into a function.

Change-Id: Ie21ed256539ce242a7892c1ddc1556319fc45310
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161006
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2023-12-20 04:24:38 +01:00
Weblate
78e72be805 Added translation for android-viewer using Weblate (Indonesian)
Change-Id: I55e7159ff10e7bb0ee32651a8f23f2f3a4e1282c

android-viewer translated using Weblate

Asturian currently translated at 100.0% (118 of 118 strings)

Change-Id: Ica863fed7663f5f5c17820a4010262101fcc358c

android-viewer translated using Weblate

Nepali currently translated at 16.9% (20 of 118 strings)

Change-Id: Ifc64ae37b7faa5bad89f70178565595630993420

android-viewer translated using Weblate

Greek currently translated at 100.0% (118 of 118 strings)

Change-Id: Icb257e6a5cfd38de5a27425f69294e059796e596

android-viewer translated using Weblate

Ukrainian currently translated at 100.0% (118 of 118 strings)

Change-Id: Iddf1e095b789f2a324fbc614d57b98ab3df8ed0e

android-viewer translated using Weblate

Asturian currently translated at 100.0% (118 of 118 strings)

Change-Id: I318be3807e77e190d857f1d9edd25fc9d7a60c0a

android-viewer translated using Weblate

Asturian currently translated at 100.0% (118 of 118 strings)

Change-Id: If8105733d78073254da1ccd16817581d53ab55b8

android-viewer translated using Weblate

Chinese (Traditional) currently translated at 100.0% (118 of 118 strings)

Change-Id: I7ef697098031684e32aed137b2ac6bd844ed94fb

Added translation for android-viewer using Weblate (Nepali)

Change-Id: I2d68cb2696827a6cd6e2ad634873857344c8ac9f

android-viewer translated using Weblate

Greek currently translated at 57.6% (68 of 118 strings)

Change-Id: Ic029d631692c1f47a9d7eeda13ce6ac38a59c3b8

android-viewer translated using Weblate

Greek currently translated at 56.7% (67 of 118 strings)

Change-Id: Id3456928ecb1a9aab0c27e77fbe49a02540fd8c4

android-viewer translated using Weblate

Asturian currently translated at 58.4% (69 of 118 strings)

Change-Id: Ibaf90837a1f25d070f9dd8ac183fbca6c26e85c4

android-viewer translated using Weblate

Italian currently translated at 11.8% (14 of 118 strings)

Change-Id: I64eb0e5cbf5a6ab050c6ef18a1adae68317005d8

android-viewer translated using Weblate

Asturian currently translated at 32.2% (38 of 118 strings)

Change-Id: Ie470cf5f249a0e498413571cd0b56a5421f5710a

android-viewer translated using Weblate

Asturian currently translated at 32.2% (38 of 118 strings)

Change-Id: I687ae9fe76f85a03f0876f4eda55d943f51b43fb

android-viewer translated using Weblate

Slovenian currently translated at 100.0% (118 of 118 strings)

Change-Id: I0c0cc15c6d5f245311c12d05afd4742db649389d

android-viewer translated using Weblate

Chinese (Traditional) currently translated at 100.0% (118 of 118 strings)

Change-Id: I2ddc5b6a36a512e6e4d1e52c96e282b0ff05f2ea

android-viewer translated using Weblate

Welsh currently translated at 100.0% (118 of 118 strings)

Change-Id: I34dbcafeaf61e7400d07910976ff71fdbe8ae4b0

Added translation for android-viewer using Weblate (Greek)

Change-Id: Idfc6ee0a0988f3c414e6e6beee58a96ab5fb9547
Co-authored-by: Adolfo Jayme Barrientos <fito@libreoffice.org>
Co-authored-by: Andika Triwidada <andika@gmail.com>
Co-authored-by: Cheng-Chia Tseng <pswo10680@gmail.com>
Co-authored-by: Dimitris Spingos <dmtrs32@gmail.com>
Co-authored-by: Elisabetta Manuele <calembour@hotmail.it>
Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Co-authored-by: Po-Yen Huang <jeff.huang@ossii.com.tw>
Co-authored-by: Rhoslyn Prys <post@meddal.com>
Co-authored-by: Saroj Dhakal <lotusnagarkot@gmail.com>
Co-authored-by: Weblate <noreply@documentfoundation.org>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: Xandru Martino Ruz <xandrumartino@softastur.org>
Co-authored-by: Євген Кондратюк <lachend@gmail.com>
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/ast/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/cy/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/el/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/it/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/ne/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/sl/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/uk/
Translate-URL: https://translations.documentfoundation.org/projects/android-viewer/android-strings/zh_Hant/
Translation: android-viewer/android-strings
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160909
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 22:51:13 +01:00
Michael Weghorn
a30f8ee112 tdf#123864 gtk3 a11y: Consider states when mapping BUTTON_DROPDOWN
Take the checkable state into account when mapping the
`AccessibleRole::BUTTON_DROPDOWN` role.

There is no direct ATK equivalent for
`AccessibleRole::BUTTON_DROPDOWN`.
Don't always use ATK_ROLE_PUSH_BUTTON, but
use ATK_ROLE_TOGGLE_BUTTON when the button is CHECKABLE,
i.e. it can be toggled.

With this in place, Orca now announces the state of
the underline button (on/off) when using the gtk3
VCL plugin.

Related Orca source code that requires the toggle button
role: [1]

The state is not announced when using the qt6 VCL
plugin yet, and Qt currently doesn't have a toggle button
role, so that would have to be added there first to
do something similar there.

For gtk4, mapping could probably be done similarly,
but more is missing for Orca to announce things in
custom widgets (e.g. event handling),
so leave that for later.

[1] b80bb951a6/src/orca/scripts/apps/soffice/speech_generator.py (L177)

Change-Id: If69e08d2e4939cc709d44e89cc2fd1d01691a70b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160904
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 22:33:22 +01:00
László Németh
36bfc86e27 tdf#119908 tdf#158776 sw smart justify: shrink only spaces
For interoperability, only shrink spaces up to 20%,
not the lines up to 2%.

Follow-up to commit 20cbe88ce5
"tdf#119908 tdf#158419 sw smart justify: fix cursor position"
and commit 7d08767b89
"tdf#130088 tdf#119908 smart justify: fix DOCX line count + compat opt."

Change-Id: Idb43161cb5a57c3412abd3f0eb266c6afbe5363c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160988
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
2023-12-19 22:18:13 +01:00
Oliver Specht
9e127010a8 tdf#158044 writerfilter: handle toggle properties in import/export
DOCX has some odd properties (bold, italic, shadowed, hidden ...),
which switch on/off if they are applied multiple times, e.g. with
paragraph and character styles. To fix that, a hard attribute has to
switch off the attribute in that occasion on import and on export a
hard attribute switches it on in Word.

Includes partial fix for tdf#154370.

Change-Id: Ie4c317cf9b7d02efd89b9d6a9996143585d7e937
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160343
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-12-19 20:53:12 +01:00
Gabor Kelemen
dc8632a8b5 Drop some wrapper methods from SvtOptionsDrawinglayer
just use the wrapped officecfg methods instead of:
IsSolidDragCreate
IsRenderDecoratedTextDirect
IsRenderSimpleTextDirect
GetQuadratic3DRenderLimit
GetQuadraticFormControlRenderLimit
IsTransparentSelection

Change-Id: Ie0f3ec0f8fdbbf08facfff1a372c666c8a0c8979
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160654
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-12-19 20:52:37 +01:00
Andrea Gelmini
cbc8cbeb17 Fix typo
Change-Id: Ie9848c31ee4969d61470dfb5b570e45848f0914d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160992
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-12-19 20:37:57 +01:00
Caolán McNamara
323ebf99da split ScGridWindow::UpdateFormulas into two parts
a) figures out what might need to redraw
b) triggers redraws on that

Change-Id: Ib6e1d8d0785cc629fd2cfb0cfdc4ad43897fd4f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161012
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 20:31:15 +01:00
Stephan Bergmann
958a055be8 Improve --enable-online-update-mar Windows MOZ_MAINTENANCE_SERVICE feature
To get the MOZ_MAINTENANCE_SERVICE mode going at all, update.status needs to
contain a "pending-service" token.  For Mozilla, code in its
toolkit/mozapps/update/UpdateService.sys.mjs takes care of writing that.  For
us, lets always write that in update_checker() (even on Linux, where it's
apparently harmless).

Then, the MOZ_MAINTENANCE_SERVICE code is rather picky with its various sanity
checks:  Among other things, it expects argv[0] to be a full path to the updater
executable, and it expects the update.mar (and its status and log files) to be
in a directory hierarchy named updates/0/ rather than patch/.  So get all that
fixed in desktop/source/app/updater.cxx.  And patch in
external/onlineupdate/lo.patch where it expects to find the updater executable
(just updater.exe vs. our program/updater.exe).

And we shouldn't interfere with the upstream Mozilla maintenance service, so
also rename that in external/onlineupdate/lo.patch.

And `update_service install` wants to read version resources from the
update_service.exe, so provide that (via gb_Executable_add_default_nativeres).

Also, `update_service install` wants to read a MozillaMaintenanceDescription
value from an updater.ini, so provide one (with contents of that value inspired
by Mozilla's browser/locales/en-US/updater/updater.ini).

As we now have an updater.ini anyway (and which apparently works fine with Unix
line ends on both Linux and Windows), also use it on Linux and drop the
onlineupdate/source/update/updater/progressui_gtk.cpp again from
external/onlineupdate/lo.patch.  And update external/onlineupdate/README.md how
to manually execute that test against an updater.ini.

Change-Id: I0e3e5e5311be61e1224cda700af2e5d751113a99
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160996
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-19 20:24:32 +01:00
Stéphane Guillou
bbb7c3eecc Update git submodules
* Update helpcontent2 from branch 'master'
  to 8d2a9b80fbb89596185c5b6863713eb696af7140
  - tdf#156156: add Inspector and Functions sidebar decks help button's HID
    
    Change-Id: I2c149959d2c0bcdc4aa98777b759012fe490637b
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/161010
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-12-19 20:01:55 +01:00
Rafael Lima
2217934a46 Update git submodules
* Update helpcontent2 from branch 'master'
  to 1afd64c6b742bcd7a1b0fd7d8bb16c7a54e91aa0
  - tdf#142926 Add HID to new Built-in help page
    
    Now that the change to the dialog has been merged (see [1]), this patch adds the appropriate target HID to the help page.
    
    This does not need to be cherry-picked to 24.2, since the change to the dialog will only be present in 24.8.
    
    [1] c48952eb6b
    
    Change-Id: I5097264191af59a1585fec5f03acc82b708c401d
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/160948
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-12-19 20:00:14 +01:00
Thorsten Behrens
3097d40ab6 Drop commented-out code
Change-Id: Ie433daf9f2d0117d798202219423e328631a8cb1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161002
Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-12-19 19:45:55 +01:00
Miklos Vajna
e83309d97d cool#7853 sc lok: fix bad view id on hyperlink click
The document had 2 windows. The first window was typing in column A, the
second window ctrl-clicked on a hyperlink in column B. The LOK callback
was emitted in window 1, not in window 2, which is unexpected.

What happens is that ScGlobal::OpenURL() dispatched an async command
when window 2 was active, and we happened to be in window 1 when
processing that user event from the main loop.

Fix the problem by dispatching the URL open command in a synchronous
way, so the LOK view can't be different.

An alternative would be to track the current LOK view id for posted user
events, and set the view back to the one which was current at post-time
before executing the event. We can consider doing that in a follow-up
change, but this fixes the problem at hand and is a safe fix.

Change-Id: I9a3c9fc1b90ad538d8b2510c7844549c9881ca56
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160976
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2023-12-19 18:39:54 +01:00
Pranam Lashkari
9ca22d44e5 Keep selection as after copying the text
This also aligns code with 'else' branch behaviour

problem:
in online when coping a slide with comment,
comment text was never copied in online,
it required document to reload to show it correctly

Change-Id: I6d444c10808ef23f282370b4b305c41eb5043b76
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160812
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit db7faa0676)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160943
Tested-by: Jenkins
2023-12-19 17:58:48 +01:00
Michael Stahl
77c921302b argon2: add new external library
Change-Id: I81860a94b33eba95918c30b0e92b583cc2d02ff3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160969
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-12-19 17:25:05 +01:00
Caolán McNamara
21dd05a2a2 cid#1557601 COPY_INSTEAD_OF_MOVE
and

cid#1546498 COPY_INSTEAD_OF_MOVE
cid#1546384 COPY_INSTEAD_OF_MOVE
cid#1546376 COPY_INSTEAD_OF_MOVE
cid#1546374 COPY_INSTEAD_OF_MOVE
cid#1546373 COPY_INSTEAD_OF_MOVE
cid#1546368 COPY_INSTEAD_OF_MOVE
cid#1546365 COPY_INSTEAD_OF_MOVE
cid#1546356 COPY_INSTEAD_OF_MOVE
cid#1546340 COPY_INSTEAD_OF_MOVE
cid#1546266 COPY_INSTEAD_OF_MOVE
cid#1546236 COPY_INSTEAD_OF_MOVE
cid#1546188 COPY_INSTEAD_OF_MOVE
cid#1546178 COPY_INSTEAD_OF_MOVE
cid#1546166 COPY_INSTEAD_OF_MOVE
cid#1546156 COPY_INSTEAD_OF_MOVE
cid#1546144 COPY_INSTEAD_OF_MOVE
cid#1546143 COPY_INSTEAD_OF_MOVE
cid#1546100 COPY_INSTEAD_OF_MOVE
cid#1546078 COPY_INSTEAD_OF_MOVE
cid#1546041 COPY_INSTEAD_OF_MOVE
cid#1546036 COPY_INSTEAD_OF_MOVE
cid#1546033 COPY_INSTEAD_OF_MOVE

Change-Id: Ib3586d93198992e206baf5c2de5a663d5574aa3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160979
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 17:18:42 +01:00
Caolán McNamara
3dd1948e79 cid#1559313 Dereference null return value
we already have the ScPostIt here

Change-Id: I646cbe073be3a63f8aeaa4939406b56a73b6382e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160973
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 17:18:30 +01:00
Noel Grandin
62afdd6f82 tdf#154864 Changing starting number of numbered list does nothing
regression from
    commit cd3c16fbcb
    Author: Noel Grandin <noel.grandin@collabora.co.uk>
    Date:   Fri Oct 14 15:14:13 2022 +0200
    tdf#129101 CTRL+A & Cut very slow
    avoid repeated invalidation of number tree, shaves 90% time off

The problem is that, after the above change, InvalidateListTree is not
called late enough to force invalidation of all necessary stuff.

So simply delay that until we do re-validation in SwNumRule::Validate.

Change-Id: I796cc34fe7d66d4876ee06286a8af7029a759eca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160974
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-19 14:47:11 +01:00
Stephan Bergmann
30ab6dd73a Hide --enable-online-updaet-mar GUI behind ExperimentalMode for now
(and rename SvxOnlineUpdateTabPage's is...OnlineUpdateEnabled predicates to
is...OnlineUpdaetAvailable, to avoid the overloaded term "enabled" here)

Change-Id: I639ac72a17b98c883ff3082747b8576099299867
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160975
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-19 14:13:25 +01:00
Xisco Fauli
09ec97405a tdf#154339: do not cache GetCellArea results for now
Partially revert 0a55aa8ba3
"calc: cache GetCellArea results"

Change-Id: I371a56f64afe541d9a194e6435fda3fb27bc43ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160349
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2023-12-19 13:52:20 +01:00
Stéphane Guillou
b731cdfbd7 Update git submodules
* Update helpcontent2 from branch 'master'
  to 64d940a42d41a4b77deacbfdb344cecf94975cf4
  - tdf#156156: add Accessibility Check sidebar deck help button's HID
    
    Change-Id: I6a0196a8f2d34dafd224ee5a4780c2ed1b97fbe9
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/160944
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-12-19 13:23:47 +01:00
Stéphane Guillou
05a4badc97 Update git submodules
* Update helpcontent2 from branch 'master'
  to d5b39fee6d9f21ca6e155480cef1df612a61629e
  - fix link to Styles menu
    
    Change-Id: Ib1c8f2a24384d1282751796cebcee41d4c996f13
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/160942
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-12-19 13:21:58 +01:00
Xisco Fauli
bd591ee35f tdf#158771: Alt+F12 is already defined
Regression from

author	Gökay Şatır <gokaysatir@collabora.com>	2023-09-27 13:01:46 +0300
committer	Caolán McNamara <caolan.mcnamara@collabora.com>	2023-11-19 22:28:43 +0100
commit	3bd3c41bc9 (patch)
tree	1678975acb
parent	f53172a114 (diff)
German keybindings:

Change-Id: I2b7b39ad24c07b390f9cc152f6620548d14683ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160977
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 11:56:13 +01:00
Michael Weghorn
ff527c41a0 gtk4 a11y: Map COMMENT role to new gtk equivalent
Map `AccessibleRole::COMMENT` to the Gtk 4
equivalent `GTK_ACCESSIBLE_ROLE_COMMENT` newly
added in upstream gtk commit [1]

    commit ab7592ee4f8ded4c3990cff5daf7f28ef26ac41f
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Wed Dec 6 14:34:43 2023 +0100

        a11y: Add article and comment roles

[1] ab7592ee4f

Change-Id: I2816f2caf04e7c70c5eed63c1ae7aea0c9e48dd6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160396
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2023-12-19 11:22:53 +01:00
Armin Le Grand (allotropia)
0d512011a6 Add flush mechanism to buffered Primitives
There are the classes BufferedDecompositionPrimitive2D
and BufferedDecompositionGroupPrimitive2D that offer
a unified mechanism to preserve/buffer the decomposition
of a Primitive, independent of the complexity. This may
include e.g. the pixel representation of a 3D Scene,
for Charts/CustomShapes and others.

Until now these were refreshed when the objects change,
or when the buffered decomposition decides that it is
necessary, but there was no general mechanism in place
to clean these up while the Primitive owning them was
alive/used. This is not a big thing in Draw/Impress
since this would only be relevant when zooming deep into
a SdrPage, so the non-vislible parts would still hold
data that would not be needed. But for Calc and Writer
this is more relevant: A 3D Chart on the 1st page of a
Writer document would be held buffered all the time a
user would work on pages below that. This is good for
guaranteeing fast re-visualization when scrolling up
again, but until then would just block memory.

So I added this general mechanism that allows activating
flushing timer-based, on Seconds. The default is null
seconds, thus deactivated. It should only be used for
Primitives that can get expensive, not for all.
NOTE: I checked activating for all Primitives to be on
the safe side, works.

It is now (initially) activated for:
- GlowPrimitive2D
- GraphicPrimitive2D
- MetafilePrimitive2D
- ScenePrimitive2D
- ShadowPrimitive2D (softShadow)
- SoftEdgePrimitive2D
- SdrCustomShapePrimitive2D
- SdrGrafPrimitive2D

These are the usual suspects that may use some memory
to buffer their decomposition (for good reasons, each
repaint uses it). Other Primitives which may show need
to be treated this way can easily be added, just by
calling setCallbackSeconds(s) in their constructor. This
is true for all Primitives derived from the two classes
mentioned above.

NOTE: Too short buffering times are *not* useful - e.g.
for a expensive-to-be-recreated 3D chart representation
this may not pay out, so I chose times in a way that try
to respect this.

NOTE: This change needs
7397fa7cdf to work
correctly (thanks to sberg for this). Without this the
office hangs/does not terminate regularly in trying to
destroy the 'TimerManager'.

Change-Id: Id4802afcb6d12480bb2935cc1ef67fe443b3b788
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160926
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2023-12-19 11:04:08 +01:00
Caolán McNamara
e8248b5e4b cid#1545222 COPY_INSTEAD_OF_MOVE
and

cid#1545241 COPY_INSTEAD_OF_MOVE
cid#1545303 COPY_INSTEAD_OF_MOVE
cid#1545315 COPY_INSTEAD_OF_MOVE
cid#1545319 COPY_INSTEAD_OF_MOVE
cid#1545322 COPY_INSTEAD_OF_MOVE

Change-Id: I284ba6e395f72abd7939667a8367ac99ab64194d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160955
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 09:42:03 +01:00
Caolán McNamara
30fa383f27 emplace_back instead of push_back
Change-Id: I1ea43002aba460fb81f4b2e710a19f0c3fe87c64
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160954
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 09:41:51 +01:00
Michael Weghorn
b7ba91311a tdf#123864 a11y: Evaluate checkable/toggle flag for more toolbar items
commit 4342408a83
    Author: Carsten Driesner <cd@openoffice.org>
    Date:   Thu May 6 18:15:21 2010 +0200

        fwk142: #i104293 Use Commands.xcu files to mark commands which support a toggle state

introduced a `UICOMMANDDESCRIPTION_PROPERTIES_TOGGLEBUTTON` state
to mark commands that can be toggled, see `framework/inc/properties.h`.

Despite that one being set for the `.uno:Underline` command in
`officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu`,
the underline button in Writer's formatting toolbar would not expose
the CHECKABLE a11y state even after

    commit 78241a40628e5721aa50cb0fa13a63333343f766
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Dec 18 08:48:12 2023 +0100

        tdf#123864 a11y: Handle new CHECKABLE state in misc places

because the state set in the .xcu file was only applied
in `ToolBarManager::CreateControllers` in the code path where
no controller is set.

There seems to be no particular reason for that, so move this
out of that block so this gets run for other items, too.

With this in place, the underline button in Writer's formatting
toolbar now has the checkable AT-SPI state when using the gtk3
VCL plugin.

(Orca still doesn't announce the button as checked when it is,
despite the checked state also being set then, but that's another
aspect that will be addressed in a separate commit.)

Change-Id: Ib9200077a95feea3ce7c0380b9b8f31c96632223
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160903
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 09:30:31 +01:00
Michael Weghorn
eef4d5cbd1 tdf#123864 a11y: Handle new checkable state for VCLXAccessibleMenuItem
Add reporting for the new CHECKABLE a11y state introduced in

    commit d6c6472bbe
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Nov 13 15:53:44 2023 +0100

        tdf#123864 a11y: Add new AccessibleStateType::CHECKABLE

for `VCLXAccessibleMenuItem`.

`MenuItemData::HasCheck` looks like it already provides
what's needed to say whether an item is checkable, therefore
add a `Menu::IsItemCheckable` that makes use of this and
and a `VCLXAccessibleMenuItem::IsCheckable` that
makes use of that in turn.

Extend `VCLXAccessibleMenuItem::FillAccessibleStateSet` to
use the latter to report the CHECKABLE state accordingly.

Change-Id: Id23196ef2527a71a338102a5143a8bd6fd41db84
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160902
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 09:30:23 +01:00
Michael Weghorn
8bc6119812 tdf#123864 a11y: Handle new CHECKABLE state in misc places
Add reporting/handling of the CHECKABLE a11y state
added in

    commit d6c6472bbe
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Nov 13 15:53:44 2023 +0100

        tdf#123864 a11y: Add new AccessibleStateType::CHECKABLE

in various places where it seems pretty straightforward.
`VCLXAccessibleMenuItem` is a bit more complex and will be
handled separately.

Change-Id: I212b8439609d34410413959973163aa7d809cbf1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160901
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 09:30:15 +01:00
Michael Weghorn
36123d802a gtk3 a11y: Drop dead debug code
Change-Id: I84ce9541c5d67416498bc5a36f0125c4110ffce1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160900
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 09:30:08 +01:00
Michael Weghorn
c24ed12d10 gtk4 a11y: Add initial event handling
Add a `GtkAccessibleEventListener` that is in
charge of handling a11y events for the gtk4
VCL plugin.

This is inspired by how the Qt-based VCL plugins
do it (see `QtAccessibleEventListener`).

Initially, only handle the
`css::accessibility::AccessibleEventId::STATE_CHANGED`
for the `AccessibleStateType::CHECKED` state by updating
the value for the corresponding Gtk state.

With this in place, toggling e.g. the "Bold"
toggle button in Writer's formatting toolbar
now properly updates the "checked" state of
the corresponding a11y object in Accerciser's
tree view of LO's a11y hierarchy.

Gtk takes care of sending a corresponding
"state-changed" event on the AT-SPI layer:

    10.8 object:state-changed:checked(1, 0, 0)
        source: [toggle button | Bold]
        application: [application | soffice]

Handling state changes to other states that map to a
`GtkAccessibleState` should be possible in a similar
way.

However, other states - like the FOCUSED state - map
to a `GtkAccessiblePlatformState` in Gtk 4, and the
function `gtk_accessible_platform_changed` to update these
that is used by Gtk's own widgets is private API for now,
so cannot be used by LibreOffice, so I currently don't
see a way to handle these without changes on Gtk side
(see [1]).

[1] https://gitlab.gnome.org/GNOME/gtk/-/issues/6272

Change-Id: I2a5ca4448ad14a61dc96aef7b22af36baeeed5c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160929
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-12-19 09:29:09 +01:00
Justin Luth
016f779ee6 tdf#158586 RTF writerfilter: substitute hasProperties for inFrame
A proper inFrame() would be identical to hasProperties,
so just substitute the existing, complete function for inFrame.

This is based on a code read, not a problem document,
but finding a document that depended on inFrame
returning true made it trivial to modify it to fail.

Somewhat surprisingly, it made it all the way through
the rtfexports without failing.

make CppunitTest_sw_rtfimport CPPUNIT_TEST_NAME=testFdo52052

Change-Id: I96f00c9b542dabd3709a896d778569b7681c8f19
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160928
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-12-19 09:08:57 +01:00
Justin Luth
e915d9f697 related tdf#158586 RTF writerfilter: HAnchor's default is text, not margin
\phcol: Use the column as the horizontal reference frame.
This is the default if no horizontal reference frame is given.

Change-Id: I8ef4a35c578768810edc0a68e3fd3b227c069dfe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160776
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2023-12-19 09:05:03 +01:00
Justin Luth
cf58950b28 partial revert tdf#153178 writerfilter: do not create text frame spuriously2
If HoriAlign/VertAlign are defined, that is enough to create a frame.

This fixes mstahl's 7.6.4 regression originating with
commit 4e2f2489c4

make CppunitTest_sw_rtfexport8 CPPUNIT_TEST_NAME=testTdf158586_lostFrame

Change-Id: Ibb639673cebcd8d5ec79f5551a5703caf948e0d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160744
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-12-19 09:04:06 +01:00
Justin Luth
940b60c903 partial revert tdf#153178 writerfilter: do not create text frame spuriously
If HoriAnchor/VertAnchor are assigned, that is enough to create a frame.

make CppunitTest_sw_rtfexport8 CPPUNIT_TEST_NAME=testTdf158586_0B

Note: because of a regression, this was already one page before
this commit, so need to go back to the time of the reverted patch.

Change-Id: Iddbe1cc4ba6d6e95e2d977a227ae6cab5271007e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160743
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-12-19 08:59:10 +01:00
Justin Luth
798649ec30 tdf#158583 tdf#158586 RTF writerfilter: only startRun for real frame
This fixes a LO 7.6.4 regression of a lost page break,
as well as another example where part of the paragraph moves to next page,
from mstahl's commit 4e2f2489c4

It seems likely that the run should only be checked
when we know that there is a real frame here,
which essentially becomes a run for most purposes
(except perhaps for page breaks - as seen for DOCX).

This code block was introduced with
commit 0d9132c504
Author: Miklos Vajna on Sat Mar 24 13:04:54 2012 +0100
    fdo#47036 fix RTF import of shapes inside text frames
    at the start of the doc
and in the other block of touched code, it did test inFrame.

The unit test works when compiling right after the regression,
but has broken because of tdf#153194.

Since this will get backported way back and all over,
it is a good time to introduce rtfexport8.

make CppunitTest_sw_rtfexport8 CPPUNIT_TEST_NAME=testTdf158586_0
make CppunitTest_sw_rtfexport8 CPPUNIT_TEST_NAME=testTdf158586_1

Change-Id: Ib4b75efb8422d96e693da337cbef97520e975f3f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160655
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-12-19 08:55:59 +01:00
Miklos Vajna
83cbadeaf6 sw: document SwFormatFieldHint
Describe the typical producer and typical consumer.

Change-Id: Iea2ae67f6a17bc5d84ce0bdc0690d13a22218ae4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160950
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-12-19 08:09:21 +01:00
Stephan Bergmann
f8199c4244 tdf#158593 Make configmgr READONLY Property more useful
...to reflect whether or not the corresponding item can be modified.  Which
matches what the READONLY flag is actually used for today.  (And the original,
somewhat arbitrary semantics had been assigned without much thought, IIRC, and
it should be OK to change them.)

Change-Id: I8185e47519a5cb4aff6e8f260326845276b0c092
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160957
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-19 07:57:32 +01:00
Stéphane Guillou
ca046e50ff Update git submodules
* Update helpcontent2 from branch 'master'
  to a08e4de6931f915b708a749d82d841bf0f6a8032
  - tdf#156156: add Gallery sidebar deck help button's HID
    
    Change-Id: I15ff9b62bd14eef98eca54886f933eb4da21a26d
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/160868
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-12-19 03:58:10 +01:00
Olivier Hallot
34cf1d2e0f Update git submodules
* Update helpcontent2 from branch 'master'
  to 0565c612d43abbbd3ad454843d59770349b82487
  - tdf#155876 UI cmds Calc-Sheet menu (34)
    
    + Sheet menu for Calc, end
    + refactoring
    
    Change-Id: Iddbd6f37722ea6eb020431cecf42966ffee703ba
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/160959
    Tested-by: Jenkins
    Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-12-19 03:54:39 +01:00