Request for [API CHANGE] in spell checking: add new options to disable rule-based compounding

Németh László nemeth.lacko at gmail.com
Fri Jan 6 16:42:21 UTC 2023


Hi Stephan, Hi All,

Stephan Bergmann <sbergman at redhat.com> ezt írta (időpont: 2023. jan. 5.,
Cs, 10:32):

> On 04/01/2023 14:18, Németh László wrote:
> > I've started to add two new spell checking options to
> > css.linguistic2.XLinguProperties
> [...]
> > Commit:
> https://git.libreoffice.org/core/+/57d79744c77eef96b4c2bd3b16e0a04317ffcf9e%5E%21
> <
> https://git.libreoffice.org/core/+/57d79744c77eef96b4c2bd3b16e0a04317ffcf9e%5E%21
> >
>
> So this is about the addition of
>
> >     /** defines whether spell checking should be accept rule-based
> >          closed compounding of dictionary words.
> >
> >         @since LibreOffice 7.6
> >     */
> >     [attribute] boolean IsSpellClosedCompound;
> >
> >     /** defines whether spell checking should be accept rule-based
> >          hyphenated compounding of dictionary words.
> >
> >         @since LibreOffice 7.6
> >     */
> >     [attribute] boolean IsSpellHyphenatedCompound;
>
> to the published interface css.linguistic2.XLinguProperties in
> <
> https://git.libreoffice.org/core/+/57d79744c77eef96b4c2bd3b16e0a04317ffcf9e%5E%21>
>
> "tdf#136306 offapi linguistic: add options to disable rule-based
> compounding", which is an ABI-breaking change.
>
> But looking closer, when
> <
> https://git.libreoffice.org/core/+/ef0af5032ad283ffb3b4521eb097a118d58f332a%5E!/>
>
> "fdo#46808, Convert linguistic2::LingProperties to new style" introduced
> that css.linguistic2.XLinguProperties interface, it gave it various
> interface attributes (IsUseDictionaryList, IsIgnoreControlCharacters,
> IsSpellUpperCase, etc.) for no compelling reason:  XLinguProperties is
> meant to be the implementation interface of the service LinguProperties,
> which was changed by that commit from an old-style to a new-style
> service.  The original old-style service implemented XPropertySet and
> listed a number of supported properties.  The XLinguProperties interface
> also inherits from XPropertySet, and that should arguably have been all
> that is necessary to make LinguProperties a new-style service.  But that
> commit also added (some of) the properties of the old-style
> LinguProperties service as attributes to XLinguProperties, for no
> compelling reason.  All those entities should be available through the
> XPropertySet interface, so there is no need to also have them available
> through attribute getters and setters.
>
> Thus I would suggest to:
>
> * Revert the addition of the two new attributes, instead adding
> documentation to offapi/com/sun/star/linguistic2/XLinguProperties.idl
> that those two properties are available through the XPropertySet
> interface since LibreOffice 7.6.
>
> * Optionally, also mark all the other attributes of XLinguProperties as
> deprecated, stating in the documentation that they should instead be
> accessed via the XPropertySet interface.
>

Ah, OK. So I only missed the proposed API. I'm going to make the proposed
changes.

Many thanks for the detailed description!

Best regards,
László
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20230106/bd42d8ee/attachment.htm>


More information about the LibreOffice mailing list