1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-20 15:18:08 +02:00

Don't reset all fields when the resetForm argument is an array

correctly set the readonly property in the annotation layer and set the default checkbox value to Off when none is provided.
This commit is contained in:
Calixte Denizet 2023-08-23 16:00:52 -04:00
parent 08f26be7b4
commit 24b480fabe
6 changed files with 72 additions and 6 deletions

View file

@ -2098,4 +2098,60 @@ describe("Interaction", () => {
);
});
});
describe("in issue16863.pdf", () => {
let pages;
beforeAll(async () => {
pages = await loadAndWait("issue16863.pdf", getSelector("334R"));
});
afterAll(async () => {
await closePages(pages);
});
it("must check that checkboxes are correctly resetted", async () => {
await Promise.all(
pages.map(async ([browserName, page]) => {
await page.waitForFunction(
"window.PDFViewerApplication.scriptingReady === true"
);
let readonly = await page.$eval(
getSelector("353R"),
el => el.disabled
);
expect(readonly).withContext(`In ${browserName}`).toEqual(true);
await page.click(getSelector("334R"));
await page.waitForTimeout(10);
readonly = await page.$eval(getSelector("353R"), el => el.disabled);
expect(readonly).withContext(`In ${browserName}`).toEqual(true);
await page.click(getSelector("351R"));
await page.waitForTimeout(10);
readonly = await page.$eval(getSelector("353R"), el => el.disabled);
expect(readonly).withContext(`In ${browserName}`).toEqual(true);
await page.click(getSelector("352R"));
await page.waitForTimeout(10);
readonly = await page.$eval(getSelector("353R"), el => el.disabled);
expect(readonly).withContext(`In ${browserName}`).toEqual(false);
await page.click(getSelector("353R"));
await page.waitForTimeout(10);
let checked = await page.$eval(getSelector("353R"), el => el.checked);
expect(checked).withContext(`In ${browserName}`).toEqual(true);
await page.click(getSelector("334R"));
await page.waitForTimeout(10);
readonly = await page.$eval(getSelector("353R"), el => el.disabled);
expect(readonly).withContext(`In ${browserName}`).toEqual(true);
checked = await page.$eval(getSelector("353R"), el => el.checked);
expect(checked).withContext(`In ${browserName}`).toEqual(false);
})
);
});
});
});

View file

@ -0,0 +1 @@
https://github.com/mozilla/pdf.js/files/12422360/4422-84.pdf

View file

@ -8119,5 +8119,12 @@
"rotation": 0
}
}
},
{
"id": "issue16863",
"file": "pdfs/issue16863.pdf",
"md5": "af8abe281721f92a0d46646969f061de",
"link": true,
"type": "other"
}
]