summaryrefslogtreecommitdiff
path: root/offapi
AgeCommit message (Collapse)Author
2024-03-28Correct typo in commentPatrick Luby
Typo was added in commit 6a049e417b029f3733fcee05f99a3e8875aefdb8. Change-Id: Icfe61fde3b199505ae2107f1b790cf94ac98c456 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165462 Tested-by: Jenkins Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
2024-03-28fix comparison of UIObject's inside UITestsNoel Grandin
using == to compare them doesnt work, because we return a new one with every call to getTopFocusWindow and similar. So add a equals() method to the UNO interface to do the comparison. Change-Id: Ie909fe9b4e84fe07f4ca87bbebf65b56d3da8f78 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165436 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-26Consolidate on @since LibreOffice MAJOR.MINOR tagsStephan Bergmann
...so even if 6a049e417b029f3733fcee05f99a3e8875aefdb8 "tdf#160184 ask user if they want to trust an untrusted certificate" gets backported to libreoffice-24-2 towards LO 24.2.3, better keep @since tags consistent and only officially announce it for LO 24.8 Change-Id: I32be31893823ef116603b98df7ce9ec305a96e6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165306 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-03-26tdf#160184 ask user if they want to trust an untrusted certificatePatrick Luby
gpgme contexts uses the "auto" trust model by default which only allows encrypting with keys that have their trust level set to "Ultimate". The gpg command, however, gives the user the option to encrypt with a certificate that has a lower trust level so emulate that bahavior by asking the user if they want to trust the certificate for just this operation only. Also, abort saving if no certificates are selected which is an indication that the user cancelled the Select Certificate dialog. Change-Id: I20951b1e31b2dcf8adb82243742f8c00fbaca8c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165260 Tested-by: Jenkins Reviewed-by: Patrick Luby <guibomacdev@gmail.com> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-03-20tdf#158885 cui offapi sw xmloff: fix hyphenation at stem boundaryLászló Németh
Add new hyphenation option "Compound characters at line end", equivalent of libhyphen's COMPOUNDLEFTHYPHENMIN, to limit bad pattern based hyphenation of compound words using morphological analysis of Hunspell. * Add checkbox to Text Flow in paragraph formatting dialog window * Store property in paragraph model: css::style::ParagraphProperties::ParaHyphenationCompoundMinLeadingChars * Add ODF import/export (loext:hyphenation-compound-remain-char-count) * Add ODF unit tests Note: slower Hunspell based hyphenation is used only if ParaHyphenationCompoundMinLeadingChars >= 3 (we assume that libhyphen hyphenation patterns cover the smaller distances correctly). Hunpell based hyphenation doesn't introduce new hyphenation breaks, only detects the stem boundaries from the libhyphen based hyphenation breaks. Follow-up to commit c899d3608d30f3ab4c2bc193c1fcd765221614a4 "tdf#158885 sw: don't hyphenate right after a stem boundary", replacing hyphenation zone dependence with the new "Compound characters at line end". Note: preset COMPOUNDLEFTHYPHENMIN values aren't loaded yet from hyphenation dictionaries. Note: the suffix of the last stem of the compound is always hyphenated, i.e. the distance limits only hyphenation inside the stem, not inside its suffix or at the end of the stem before the suffix. Change-Id: I46a0288929a66f7453e3ff97fbc5a0c6a01f038f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164983 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2024-03-06Create an UNO service to do the symbol lookup in swNoel Grandin
which means I can remove one usage of gb_Library_set_plugin_for, which is blocking linking the sw module into --enable-mergelibs=more Change-Id: I8c199421c66de2dcf339ccc2d5cb9340d3bea914 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164429 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-05Keep recently introduced UNOIDL entity unpublished for nowStephan Bergmann
Change-Id: I635e08898bc2627dada89fed5a834a6145915ac9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164431 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: Jenkins
2024-03-05Create an UNO service to do the symbol lookup in sdNoel Grandin
which means I can remove one usage of gb_Library_set_plugin_for, which is blocking linking the sd module into --enable-mergelibs=more Change-Id: I90dae749f777446f67342d121e4dc29b974cb9b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164423 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-05Create an UNO service to do the symbol lookup in scNoel Grandin
which means I can remove one usage of gb_Library_set_plugin_for, which is blocking linking the accessibility module into --enable-mergelibs=more Change-Id: I389fcafd80f1a450befbffdc252be497ba20f6d5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164415 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-04tdf#132599 cui offapi sw xmloff: implement hyphenate-keepLászló Németh
Both parts of a hyphenated word shall lie within a single page with ODF paragraph setting fo:hyphenation-keep="page". The implementation follows the default page layout of MSO 2016 and newer by shifting the bottom hyphenated line to the next page (and to the next column, see last note). Note: this is a MSO DOCX interoperability feature, used also in DTP software, XSL and CSS. * Add checkbox/combobox to Text Flow in paragraph dialog * Store property in paragraph model (com::sun::star::style::ParagraphProperties::ParaHyphenationKeep) * Add ODF import/export * Add ODF unit tests New constants of com::sun::star::text::ParagraphHyphenationKeepType, containing ODF AUTO and PAGE (borrowed from XSL), and for the planned extension ParaHyphenationKeepType of ParagraphProperties: – COLUMN (standard XSL value, defined in https://www.w3.org/TR/2001/REC-xsl-20011015/slice7.html#hyphenation-keep) – SPREAD and ALWAYS (CSS 4 values of hyphenate-limit-last, equivalent of hyphenation-keep, defined in https://www.w3.org/TR/css-text-4/#hyphenate-line-limits). Note: the implementation truncates only a single hyphenated line, like MSO does: the pages can end in hyphenated lines (i.e. in the case of consecutive hyphenated lines), but less often, than before. Clean-up hyphenation dialog by collecting "Don't hyphenate" options at the end of the hyphenation settings, and negating them (similar to MSO and DTP), adding also the new option "Hyphenate across column and page": [x] Hyphenate words in CAPS [x] Hyphenate last word [x] Hyphenate across column and page Note: ODF fo:hyphenation-keep has got only "auto" and "page" attributes, while XSL defines also "column". Because of the interoperability with MSO and DTP, fo:hyphenation-keep="page" is interpreted as XSL "column", avoiding hyphenation at the end of column, not only at the end of page. Change-Id: I5c6b7adc0671a5a790568e7bf1d33256e607f85f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164158 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2024-03-01Update the reference rdbs to libreoffice-24.2.0.3Stephan Bergmann
.../master/instdir/sdk/bin/unoidl-read --published \ .../libreoffice-24.2.0.3/instdir/program/types.rdb \ >.../master/udkapi/type_reference/udkapi.idl .../master/instdir/sdk/bin/unoidl-read --published \ .../libreoffice-24.2.0.3/instdir/program/types.rdb \ .../libreoffice-24.2.0.3/instdir/program/types/offapi.rdb \ >.../master/offapi/type_reference/offapi.idl Change-Id: I276ea47ae755a2ce641eef3f508ce1dc5f6af4ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164162 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-02-29Create an UNO service to do the symbol lookup in toolkit::AccessibilityClientNoel Grandin
which means I can remove one usage of gb_Library_set_plugin_for, which is blocking linking the accessibility module into --enable-mergelibs=more Change-Id: I8664ae1d2da4526cc7eab79b36e1589eb391d7c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163680 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-25Create an UNO service to do the cui symbol lookup in vclNoel Grandin
which means I can remove one usage of gb_Library_set_plugin_for, which is blocking linking the cui module into --enable-mergelibs=more Change-Id: Ic6cd48377627f94747037c7247a1cd398738b390 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163820 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-16tdf#67347 pptx import: stacked text, minimal impl.Attila Szűcs
Display Stacked text, and Import/Export Stacked property from/to pptx. It is a minimal implementation, it does not import/export to .odp, there is no user interface to set this property. Multiline Stacked text is rendered as 1 line text. XML_wordArtVertRtl is mapped to XML_wordArtVert. Editing of text containing space character seems to not work correctly. Change-Id: I535da45e3a2f2d1550bad2a40e9909e0d561d0ef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163121 Tested-by: Jenkins Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-02-15offapi: fix misleading commentMichael Stahl
Change-Id: Ibc585600c0aa21f18911972f4604be65d16d713c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163437 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-02-06tdf#50934: Add a version comment, and more structure for of-pieKurt Nordback
Change-Id: I9d7c25e47a3f4a78360f9b2deffe8650e378866d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156305 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-02-02tdf#50934: Initial plumbing and infrastructureKurt Nordback
Change-Id: I355bdc8e6d67e7cdd47e4d6eccecedc4b53ac11b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155851 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-30tdf#146756 pie chart2 import: use manualLayout Width for pie chart labelsJustin Luth
... and use a compatible 1/5 width if not specified. This patch depends on the previous oox patch (commit 301e27cbebf7d6e4c9b82290d7cd555c43f0c999) which actually reads the width into the model. Fixes a 7.2 regression from commit b0068342398786ca50304260434a18880dddf74d author Tünde Tóth on Wed Dec 16 18:26:26 2020 +0100 tdf#138777 pie chart: improve long data label width and is basically a re-write of 7.1's commit 20da1a5dd37c7edac620566c992d5a53b23a5f12 author Tünde Tóth <toth.tunde@nisz.hu> on Fri Oct 09 09:24:18 2020 +0200 tdf#134978 Chart OOXML Import: fix pie chart label custom position This is very risky, but then ANYTHING changing chart2 is risky. There were a lot of changes made in 7.1, and they all invited regressions. However, our chart implementation is not in a good state, and certainly is not very interoperable, so it is worth taking the risk. Anything dealing with manualLayout at this point should have originated as a pptx, so forcing a compatible max width should be fairly safe. It probably isn't actually all that risky after all. largely copied code from commit 4223ff2be69f03e571464b0b09ad0d278918631b Author: Balazs Varga on Wed Jan 15 16:31:35 2020 +0100 tdf#48436 Chart: add CustomLabelPosition UNO API property Fortunately this all goes away after a round-trip since custom label placement is lost on export to OOXML, and that really helps to reduce the risk. make CppunitTest_chart2_import CPPUNIT_TEST_NAME=testTdf146487 Change-Id: I9722fc6c759c15ac3924780e6fc124f02fba07e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162590 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-01-30improve docs of XSystemShellExecuteNoel Grandin
copied from a comment by sberg Change-Id: Ia363bac0a115564265ca9169174fdfc0d8610a69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162685 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-01-19tdf#106733 sw: implement CharNoHyphenationLászló Németh
Implement CharNoHyphenation character property to disable automatic hyphenation of words in paragraphs with enabled hyphenation. Fix also fo:hyphenate mapping to CharNoHyphenation using automatic inversion of their boolean values defined by xmloff's XML_TYPE_NBOOL, as suggested by Michael Stahl. Update also the test for tdf#159102 to check the available hyphenation dictionary (also custom hyphenation patterns work only with supported locales of the hyphenator). Note: patch of thints.cxx contains also partial revert of commit 53b289eabb3d265b47bc7fb6cc430291c97f0c0b "use more TypedWhichId". Follow-up to commit 73bd04a71e741788a2f2f3b26cc46ddb6a361372 "tdf#106733 xmloff: keep fo:hyphenate in character formatting". Change-Id: If99b94ddcd44a5c2426e646be149078a3b9773b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162300 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2023-12-21we are at 24.8 in trunk now, not 24.2Caolán McNamara
Change-Id: Iac329b0f11a564e90d6eb1e9c4a42f36254021f9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161120 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-21Add export sheet range option to calcNickWingate
User can specify which sheets to export e.g. '2-5,7' exports sheets 2,3,4,5,7. Note: this is different from exporting pages as one sheet may contain several pages worth of content. Also fix a bug where exporting only a selected sheet causes the next sheet to be exported. e.g.: Sheet 1 is empty, Sheet 2 has content. Exporting Sheet 1 results in Sheet 2's content being exported Signed-off-by: NickWingate <nick.wingate@collabora.com> Change-Id: Iecd42188ddbbbcd70eb37bec80783e29e3cb5b19 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156255 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159686 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-20tdf#105844 offapi,package,sfx2: use Argon2 for wholesome ODF encryptionMichael Stahl
https://www.rfc-editor.org/rfc/rfc9106.html * add css::xml::crypto::KDFID constant group * add "KeyDerivationFunction" to setEncryptionAlgorithms sequence * Argon2 is used by default for wholesome ODF encryption, but $LO_ARGON2_DISABLE can be set to use PBKDF2 * extend various structs in package * use 3 new ODF attributes "loext:argon2-iterations" "loext:argon2-memory" "loext:argon2-lanes" to store the arguments * use this URL for now: "urn:org:documentfoundation:names:experimental:office:manifest:argon2id" * use default arguments according to second recommendation from "7.4. Recommendations" of RFC9106; 64 MiB RAM should hopefully not be too much even for 32 bit builds Change-Id: I683118cc5e0706bd6544db6fb909096768ac9920 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161009 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-12-19tdf#123864 a11y: Handle new CHECKABLE state in misc placesMichael Weghorn
Add reporting/handling of the CHECKABLE a11y state added in commit d6c6472bbe1c90b733a4d69c4c8528f4de3750d3 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-18[API CHANGE] tdf#158041 Remove unused reverse printing option from swSamuel Mehrbrodt
Change-Id: I8b4597dbafc78e881fe556de8ce8221e50a673bf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160777 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-12-18[API CHANGE] tdf#158041 Remove unused drawing printing option from swSamuel Mehrbrodt
Change-Id: I95f81f166ab9d75622c83672101925894b2f2e7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160774 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-12-18[API CHANGE] tdf#158041 Remove unused table printing option from swSamuel Mehrbrodt
"for now it was decided that tables should always be printed" -> make this decision from 2015 permanent Change-Id: Ica5958a74ec6766040ab59f2c91224b75df4d807 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160766 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-12-18[API CHANGE] tdf#158041 Remove unused SinglePrintJobs config option from swSamuel Mehrbrodt
This is handled by the print dialog directly Change-Id: Ieb4221d97444216f332501da9a3aba7dc6b8500a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160762 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-12-13tdf#105844 package,sfx2: remove checksum infoleak when using AEADMichael Stahl
AEAD provides the verification of the password automatically, by reading the entire stream the tag at the end will be verified. The existing attributes manifest:checksum-type/manifest:checksum leak information about the plain text. This was mitigated with the addChaffWhenEncryptedStorage() functions (see commit f57baefbd3c4c5d8e5ec28e8702c91d60ffc5de2) but a better solution that also works for non-XML streams is to simply omit the attributes; authenticated encryption provides better verification without any leak. * "ChecksumAlgorithm" property can be set to void now to remove the checksum * change a bunch of members in EncryptionData, ZipPackage, ZipPackageStream to optional * change ZipFile::checkValidPassword() to open the stream and return it Change-Id: Id95288d0c238c4f9940fc5a185df814e8edcbad3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160711 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-12-11tdf#105844 offapi,package,sfx2,xmlsecurity: add AEAD w/ AES GCMMichael Stahl
... and use it in the new experimental ODF encryption mode. https://www.w3.org/TR/xmlenc-core1/#sec-AES-GCM Unfortunately it turned out that NSS PK11_CipherOp() does not work with CKM_AES_GCM because it is initialized with "context->multi = PR_FALSE" in sftk_CryptInit(), so the one-step functions PK11_Encrypt() and PK11_Decrypt() have to be used. NSS 3.52 also changed a parameter struct definition - see https://fedoraproject.org/wiki/Changes/NssGCMParams - which is not a problem for RHEL or SUSE system NSS since those are rebased, but it is likely a problem for less well maintained Ubuntu LTS, so use the old struct definition which evidently still works with NSS 3.94. NSS 3.52 also added a new PK11_AEADOp() API but it looks like this doesn't support incremental encryption either. Change-Id: Ibd4a672db74b65b1218926ba35ff8d2f70444c7e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160505 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-12-07tdf#157432 Expert config: Allow filtering by changed valuesSamuel Mehrbrodt
Change-Id: Ib8bbb7fc9e8014a9367278f3fa640f53af46dd2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159986 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-12-06tdf#148986 Support XF86Forward / XF86Back key eventsGabor Kelemen
Multimedia keys found on certain presentation clicker devices. Not added to the Customize dialog, as that was not yet asked for. As I have no access to a MAC, did not add support for that in vcl. Inspiration for code taken from commit ca74511985981444dbd72ade7244484c131e36a7 Change-Id: I417e6ba7e79c5f6e774a56ba747803a156d5f50f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160255 Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2023-12-01[API CHANGE] Add OOXML way of curved connector routingRegina Henschel
The paths generated for curved connectors are basically incompatible between LibreOffice and OOXML. Thus it was not possible to render curved connectors the same way as MS Office. The patch adds an OOXML compatible method for calculating the path. The new method results in a different svg:d attribute when saved in ODF, but needs no change to ODF. The patch introduces the boolean connector property 'EdgeOOXMLCurve' to switch between the two methods. The property value is determined from the svg:d attribute in case of import from ODF. In case of missing svg:d attribute the property value is set to 'true', because Word currently does not write a svg:d attribute when it exports to ODF. The property value is set to 'true' for import of connectors on a drawing canvas in docx. Default value for new connectors is 'false'. The new property has no UI, but can be used via macro. Currently the new method is used for import of curved connectors on drawing canvas in docx documents. Change-Id: I53d99f44febe4d74c2b611f5fdb9de86628c4519 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159708 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-11-24sw floattable, per-frame wrap-on-all-pages mode: add UNO APIMiklos Vajna
This exposes the internal property SwFormatWrapTextAtFlyStart on the UNO API. We need this, because otherwise the ODT filter can't read/write it. Change-Id: I67d3c28e3531b19183f8361a6df87b7a4ca84294 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159888 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2023-11-20Use existing types, instead of stringsSamuel Mehrbrodt
as suggested in https://gerrit.libreoffice.org/c/core/+/158028/comments/b7a803f4_7e5899ca Change-Id: I7d4c46b24307922b51e463bacdfacfca85956b80 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159524 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-11-14Fix typoAndrea Gelmini
Change-Id: Idcfcd6aca1c74cb3e10dac09cd347b69a9bdb949 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159406 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-11-14Fix typoAndrea Gelmini
Change-Id: Id3be5eb786bfa245155fef17e819a72dee322e18 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159397 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2023-11-14tdf#123864 a11y: Add new AccessibleStateType::CHECKABLEMichael Weghorn
Both, AT-SPI and IAccessible2 have a CHECKABLE state that describes whether an item is checkable, i.e. whether it can be checked, i.e. whether it is possible that this object can have the CHECKED state. So far, LibreOffice didn't have any equivalent, and e.g. a checkbox that is ticked would report state CHECKED but not CHECKABLE, which is inconsistent. ("How can an object that is not checkable be checked?") For an unchecked object, the fact that it can be checked is unclear since that one will just have the CHECKED state not being present. Introduce a new a11y state, `AccessibleStateType::CHECKABLE` with the same semantics as in AT-SPI and IAccessible2 to bridge the gap. Map the state in winaccessibility (to IAccessible2), gtk3 and an the Qt-based VCL plugins, which are responsible for mapping to AT-SPI. While Qt has an equivalent state flag, it currently doesn't map that to AT-SPI yet. Pending upstream Gerrit change to implement that: [1] The gtk4 a11y API doesn't have a direct equivalent and will be handled separately in a following commit. Reporting the new state where applicable will be implemented in following commits. [1] https://codereview.qt-project.org/c/qt/qtbase/+/517844 Change-Id: I6aa7fec3b3bd728a5cfedcdc8d6b66f06337f7ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159382 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-11-13tdf#158185: fix Excel's Range.Find and Range.Replace wildcard recognitionMike Kaganski
VBAToRegexp is wrong, using Basic wildcards. The functionality introduced in tdf#72196 matches the required wildcard repertoire. This introduces a new WildcardEscapeCharacter property to SearchDescriptor service. Interestingly, the default value there was backslash. TODO: also fix Range.AutoFilter, and drop VBAToRegexp. To do that, a new property is needed in service SheetFilterDescriptor, to use wildcards, in addition to "UseRegularExpressions" property. Change-Id: Idebcf00d4b7376e5d7feaf8ae800fb19d05689d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159391 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-11-09Use proper type in expert config dialogSamuel Mehrbrodt
In preparation for proper editing support for the different types. Change-Id: I7044ff100c9bfcca5fa8894ff4525a1aac692796 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158028 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-11-09tdf#157431 Show description for expert config itemsSamuel Mehrbrodt
Change-Id: I7d0257c2e06ed384f90ca3b51a6d2549044f2cf3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157148 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2023-11-08Clarify FROM_LIST_AND_SIGNED_WARN description a bitMike Kaganski
Change-Id: Icab6b5b2e0c290bf67f1b330ad82553e9e37328e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159098 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-11-07Fix a typoMike Kaganski
Change-Id: I01dae264822c5394cabbb5cc4f7d4cb63190d23e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159030 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-30Enable STYLEREF flag export/import with OOXMLSkyler Grey
This commit enables exporting the following STYLEREF flags with OOXML - Search from bottom to top - Hide non numerical After this commit, the following steps have been implemented - The document model (I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19) - The layout (I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19) - The UI (I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19) - UNO - DOCX filter Change-Id: Ib664fec059aa1f7f130acc76c253d5d298fa59f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158350 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-10-28tdf#135586 sw a11y: Use BLOCK_QUOTE role for "Block Quotation" paraMichael Weghorn
If a paragraph is using the "Block Quotation" paragraph style, report the newly introduced BLOCK_QUOTE a11y role for it instead of the PARAGRAPH role. This is similar to how the HEADING role is reported when one of the paragraph styles for headings is used (s. `SwAccessibleParagraph::GetRealHeadingLevel`). This is also in line with what is documented for mapping LO elements to tagged PDF elements in sw/inc/EnhancedPDFExportHelper.hxx: > * Mapping of OOo elements to tagged pdf elements: > * > * OOo element tagged pdf element > * ----------- ------------------ > * [...] > * SwFormat Quotations BlockQuote This makes the Orca screen reader with the gtk3 VCL plugin on Linux and the NVDA screen reader on Windows explicitly announce a paragraph as block quote when moving there with the cursor. Adapt some places that have specific handling for the PARAGRAPH role to take into account the BLOCK_QUOTE role as well. Change-Id: I4a89625c2a3f07d37df09e68cb7045a59cfff633 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158574 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-10-28tdf#135586 a11y: Add a new BLOCK_QUOTE a11y roleMichael Weghorn
A block quote role exists in all of WAI-ARIA 1.3 (role "blockquote", [1]), IAccessible2 (`IA2_ROLE_BLOCK_QUOTE`, [2]) and AT-SPI (`ROLE_BLOCK_QUOTE`, [3]). Take over the definition that is the same in WAI-ARIA and IAccessible2: > A section of content that is quoted from another source. The intended use for now is for a Writer paragraph using the "Block Quotation" paragraph style, similar to how the HEADING role is used for paragraphs using a corresponding paragraph style. For gtk3 (ATK) and winaccessibility (IAccessible2), map the new role to the equivalant roles. For macOS and the gtk4 as well as the Qt-based VCL plugins on Linux which currently don't have an equivalent role, fall back to the same role that the PARAGRAPH role is mapped to. This way, the behavior there will remain unchanged once the BLOCK_QUOTE role is used for Writer paragraphs with the corresponding style. In general, treat BLOCK_QUOTE like PARAGRAPH in code applying special handling for the PARAGRAPH role. [1] https://w3c.github.io/aria/#blockquote [2] https://github.com/LinuxA11y/IAccessible2/blob/3d8c7f0b833453f761ded6b12d8be431507bfe0b/api/AccessibleRole.idl#L318 [3] https://gitlab.gnome.org/GNOME/at-spi2-core/-/blob/7cc4cee53ddbd22631fd110f0e5ce045dec2e411/xml/Accessible.xml#L615-616 Change-Id: I248c183a2e7ec5d6f0a89bf3cb4829bbd8588c77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158573 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-10-26tdf#153519 use new IdleTask::waitUntilIdleDispatchedNoel Grandin
to wait until the Idle inside sw/ has done populating the navigator tree. Which required (*) moving the code down from test/ to vcl/ to avoid circular dependency issues. (*) adding a call SolarMutexGuard before Application::Yield inside IdleTask::waitUntilIdleDispatched (*) exposing the function to python by adding a method to the XToolkitExperimental UNO API Change-Id: Iee418f7a0beb1f5b53addb7fe25823d61720eb3a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158495 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-10-24Fix typoAndrea Gelmini
Change-Id: Iac1d0f9a00fe5ccab84da1f1fb033354920341fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158366 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2023-10-23a11y: Make XAccessibleValue doc more consistentMichael Weghorn
* Align the method names in the documentation to what the acual methods are called (e.g. `getMaximumValue`, not `getMaximumAccessibleValue`). * Use "minimum" and "maximum" consistently, not "minimal" and "maximal" in some places. Change-Id: Idf4f36dca118a614b04a4b958e97d225f70dde0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158347 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-10-21a11y: Improve XAccessibleExtendedAttributes docMichael Weghorn
The existing // MT: I guess it's not formula only? comment was justified. `XAccessibleExtendedAttributes::getExtendedAttributes`, is not only used to report formulae, but e.g. used to report a heading level by Writer paragraphs (s. `SwAccessibleParagraph::getExtendedAttributes`), so adjust the documentation and align it with the `IAcccessible2::attributes` one [1] that also uses the cell formula as an example. [1] https://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/interface_i_accessible2.html#a0d51b0c189a000ee3b6ddf7f68da2009 Change-Id: I2d6f38911c3802edb55f9426a35b8986dd6e399a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158259 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>