Accessibility implementation / limitation in LO

Jan-Marek Glogowski glogow at
Thu Sep 27 18:01:06 UTC 2018

Hi everyone,

while reviewing commit 2f9c6940a702 ("printdialog: fix some accessibility warnings") I realized it
annotates a the hidden "pagespersheettxt" instead of the visible "pagespersheetbtn". Reading the
code, you can see this happens because the print dialog switches a label with a radio button, hiding
the other widget, depending on the calling module.

I came up with, which adds a check to gla11y to warn about
different visibility of "label-for" and "labelled-by" pair. But this doesn't help much, if some code
later changes the visibility of widgets.

First I had the idea to add the 2nd relation. I looked at Glade, tried to get some impression from
the Internet and looked at the LO API. Turns out Glade offers multiple connections for both sides,
but LOs API just offers 1:1.

Hmm - so I changed gla11y to really check for the 1:1 relation on both sides and it came up with
some more broken relations, compared to the already ignored ones (patch for gla11y is All of them broken in a way. From parsing UI files the
last relationship wins. For 1:N this will at least result in a correct forward and backward link.
For M:N you can end in a lot of wrong combinations, I guess.

So do we want to enforce LOs current 1:1 API limitation on the UI files until someone fixes the API?
Just adding all the new warnings to the suppr files shouldn't be that hard.



P.S. For the two hits found by the new check, I manually added accessibility calls to fix the
relation in the gla11r patch.

More information about the LibreOffice mailing list