Avoid to aria-hide the structure tree (bug 1894849)

If one ancestor of the structure tree has the attribute aria-hidden
then it's invisible for screen readers.
This commit is contained in:
Calixte Denizet 2024-05-03 14:39:37 +02:00
parent 1b811ac113
commit 7742c3eb63
2 changed files with 12 additions and 1 deletions

View File

@ -31,6 +31,18 @@ describe("accessibility", () => {
await Promise.all( await Promise.all(
pages.map(async ([browserName, page]) => { pages.map(async ([browserName, page]) => {
await page.waitForSelector(".structTree"); await page.waitForSelector(".structTree");
const isVisible = await page.evaluate(() => {
let elem = document.querySelector(".structTree");
while (elem) {
if (elem.getAttribute("aria-hidden") === "true") {
return false;
}
elem = elem.parentElement;
}
return true;
});
expect(isVisible).withContext(`In ${browserName}`).toBeTrue();
// Check the headings match up. // Check the headings match up.
const head1 = await page.$eval( const head1 = await page.$eval(

View File

@ -908,7 +908,6 @@ class PDFPageView {
// overflow will be hidden in Firefox. // overflow will be hidden in Firefox.
const canvasWrapper = document.createElement("div"); const canvasWrapper = document.createElement("div");
canvasWrapper.classList.add("canvasWrapper"); canvasWrapper.classList.add("canvasWrapper");
canvasWrapper.setAttribute("aria-hidden", true);
this.#addLayer(canvasWrapper, "canvasWrapper"); this.#addLayer(canvasWrapper, "canvasWrapper");
if ( if (