[00:00.000 --> 00:16.440] Okay, next one is me, so somebody else has to watch the time and drag me off the stage. [00:16.440 --> 00:22.960] Yeah, welcome to the bit of an update on LibreOffice accessibility, in this particular [00:22.960 --> 00:25.480] case PDF accessibility. [00:25.480 --> 00:32.320] My name is Thorsten, we're running our own company here, Consulgency, and some products [00:32.320 --> 00:34.120] around LibreOffice. [00:34.120 --> 00:42.840] This work here has been funded by a customer, so it's always great to have people paying [00:42.840 --> 00:49.120] for improvements in LibreOffice, I'm very grateful for that, that's why we can present [00:49.120 --> 00:50.880] this today. [00:50.880 --> 00:58.920] Quickly, there is a difference between document and application accessibility, so accessibility [00:58.920 --> 01:07.920] can be many, many things from the Wikipedia, makes products, devices, services usable by [01:07.920 --> 01:13.000] people with disabilities, and of course the main thing that needs to be accessible with [01:13.000 --> 01:19.480] LibreOffice is the software itself, and there's been a lot of work ongoing over many years [01:19.480 --> 01:25.480] there, but also what LibreOffice produces, the documents also need to be accessible, [01:25.480 --> 01:33.480] so that's more on the services side, the products, the outcome there. [01:33.480 --> 01:37.680] Application accessibility, as I said, lots of work has been ongoing, there's been two [01:37.680 --> 01:45.440] tenders from the foundation, both of them went to HYPRA, and I think one of them, I think [01:45.440 --> 01:50.960] there's still a bit of work ongoing there, the first one definitely is finished, that [01:50.960 --> 02:01.000] resulted in some cleanups and some checks, and also some build time checking that all [02:01.000 --> 02:11.400] the dialogues have all the prerequisites set, so that the GUI remains, is and remains accessible, [02:11.400 --> 02:17.920] and the second tender is for actually being able to, like, enabling to run and also, like, [02:17.920 --> 02:24.760] not breaking it going forward with the platform accessibility APIs, so that the screen readers [02:24.760 --> 02:29.360] and other tools actually work with LibreOffice and make that testable and kind of lock that [02:29.360 --> 02:31.880] down. [02:31.880 --> 02:39.600] So that was LibreOffice, oh, and Jobs Corner advertising, so LibreOffice is looking for [02:39.600 --> 02:46.960] some accessibility engineer, there's a drop posting there, and if you're interested, apply [02:46.960 --> 02:55.720] about now, I think the deadline is sometime next week, I believe, closing that, or tell [02:55.720 --> 02:58.440] your friends and family. [02:58.440 --> 03:03.880] So document accessibility, that's what I'm focusing on, relevant standards, and we're [03:03.880 --> 03:11.000] talking about PDF here, some web content accessibility guidelines, that's about HTML [03:11.000 --> 03:17.280] mostly, but much of that also applies to other document types, and then that's the PDF UA, [03:17.280 --> 03:23.080] the PDF Universal Accessibility Standard, that mandates lots of things, mostly meta [03:23.080 --> 03:29.600] data that is at the document, so that suitable tools, like screen readers, can extract that [03:29.600 --> 03:35.720] and say, okay, I need to read this, but I don't need to read that, or for images that [03:35.720 --> 03:42.320] there is a description, like a textual description of what this image contains. [03:42.320 --> 03:49.160] There's a nice overview and an actionable list of checks that you can go through in the [03:49.160 --> 03:56.560] so-called Matterhorn protocol, yes, and if you pass that checklist, then you can be pretty [03:56.560 --> 04:02.040] sure that your document is accessible, and there's validators for that, the PAC one and [04:02.040 --> 04:08.760] the Verapedia pack is closed source, or source available or something, if you ask, and Verapedia [04:08.760 --> 04:11.440] is a proper open source. [04:11.440 --> 04:14.680] Okay, so what did we do? [04:14.680 --> 04:16.080] We fixed a lot of bugs. [04:16.080 --> 04:22.120] There are still some bugs left, I hear, about 14 when I checked last, so anybody who's interested [04:22.120 --> 04:29.640] in having accessibility bugs fixed, give me a call, and that's what we did. [04:29.640 --> 04:38.880] So quite a chunk of things that still had to be fixed after so many years at the, let's [04:38.880 --> 04:44.600] say, core level, like actually getting meta data that was already there in the document [04:44.600 --> 04:50.400] down into the PDF in the correct way, so like getting the information down, that was the [04:50.400 --> 04:55.560] first thing, so that the PDF export could write it to disk, and then also getting it [04:55.560 --> 05:01.080] in a proper way, so like at the right position in the meta data structure, not forgetting [05:01.080 --> 05:10.880] something, not mistyping some tags, et cetera, yeah, and it's quite across the board what [05:10.880 --> 05:19.120] we did there, and I can say that for reasonably complex documents actually we're passing [05:19.120 --> 05:27.320] now the accessibility checks, like those validators. [05:27.320 --> 05:36.320] So that was actual bug fixing, and we also had to add a few features. [05:36.320 --> 05:43.920] The most important one is adding this decorator flag for flies, so if you check the latest, [05:43.920 --> 05:49.600] I think we missed 7.4, I'm not sure, but in any case, a recent master, if you insert [05:49.600 --> 05:56.920] a text frame, on the options page you get a new checkbox that says decorative, so you [05:56.920 --> 06:04.720] can now say this content here is not important for the document, this is just some whatever [06:04.720 --> 06:10.680] code of arms for your family, or it's just a background picture, or something that is [06:10.680 --> 06:16.600] not really important for the content, it's just decoration. [06:16.600 --> 06:24.280] And that was not, that was not saved, also not saved in ODF, so that actually was a feature [06:24.280 --> 06:28.440] we had to add to be able to, so users could say okay, this is not important, that is not [06:28.440 --> 06:33.560] important, but this is, and then being able to save and reload that. [06:33.560 --> 06:38.240] And some UX improvements on the accessibility checker dialogue, which was the work from [06:38.240 --> 06:45.520] Colabora, good stuff there, also the third one, the online accessibility checker, if [06:45.520 --> 06:53.400] you enable experimental features, then you get on the extras menu, you get some automatic [06:53.400 --> 07:00.880] checking thing, which is this one, automatic accessibility checking, and if you do that, [07:00.880 --> 07:07.360] you get this kind of counter there, like how many more accessibility bugs do I still need [07:07.360 --> 07:14.840] to check or fix, so that part of the toolbar. [07:14.840 --> 07:23.960] And so we made the actual dialogue a little bit nicer to use, so in this case, like not [07:23.960 --> 07:27.960] making it modal, because if it's modal, you can't interact with the document, so you [07:27.960 --> 07:35.240] get a warning, like in this case, no alt text for the image, so you want to kind of select [07:35.240 --> 07:38.680] the image and set the alt text, but for that, you need to close the dialogue, so if you [07:38.680 --> 07:42.720] have more than, let's say, 10 things there, then you'll forget where you were, so it's [07:42.720 --> 07:47.240] much nicer if it's not modal. [07:47.240 --> 07:52.360] And yeah, I also have some rescan buttons, so it's kind of orthogonal to this automatic [07:52.360 --> 08:00.280] online check, right, so that was that, as I said, in a decent shape now, far from done, [08:00.280 --> 08:07.040] the term starts to be usable, future plans is some user experience, so the goal should [08:07.040 --> 08:13.720] be to be on par with Word, so really, not having users click four times every single [08:13.720 --> 08:20.200] image that they need to put an alt text in, which is really annoying, and do something [08:20.200 --> 08:26.520] that is kind of smooth, that is like one click, or even, perhaps, optionally, something like [08:26.520 --> 08:34.800] AI supported, auto image generation, or something like that, presumably, or other great ideas, [08:34.800 --> 08:42.320] but I think what's really, so I think the basics, the, let's say, technology, the engines [08:42.320 --> 08:47.920] there, that's pretty okay, and the focus now should be on the usability, so making what's [08:47.920 --> 08:53.960] implemented actually usable, and I guess, that's it, thank you. [08:53.960 --> 09:00.960] Thank you.