Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NVDA not able to read the checkbox/radio button status in case of static non interactive(print form) pdf #13285

Closed
cprabhak1 opened this issue Jan 28, 2022 · 2 comments · Fixed by #13546
Assignees
Milestone

Comments

@cprabhak1
Copy link

Steps to reproduce:

Open a static non interactive pdf containing checkbox. Try to read the state of checkbox using NVDA.

Actual behavior:

NVDA does not read check/not checked

Expected behavior:

NVDA should speak checkbox checked(if checked) or vise versa

System configuration

windows 10, pdf 1.7

NVDA installed/portable/running from source:

NVDA version:

NVDA 2020.4

Windows version:

windows 10

Name and version of other software in use when reproducing the issue:

Adobe Acrobat dc pro

Other information about your system:

Other questions

####Is the issue reproducible for interactive static pdf as well?
No

###Is the issue reproducible on Jaws?
NO
output_non.pdf

Does the issue still occur after restarting your computer?

yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

If NVDA add-ons are disabled, is your problem still occurring?

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

@michaelDCurran
Copy link
Member

Confirmed this is a bug in NVDA.
We are incorrectly ignoring the accRole and accState for checkboxes.
This is a small fix which we will get to soon.

@michaelDCurran
Copy link
Member

Technical:
The checkbox has an Adobe STDName of 'Form'. We incorrectly map this to ROLE_FORM, where as the accRole is actually much more accurate as ROLE_SYSTEM_CHECKBUTTON.
We should remove the 'Form' mapping as it is hiding this and other possible controls.

michaelDCurran added a commit that referenced this issue Mar 28, 2022
…e PDFs (#13546)

Fixes #13285

Summary of the issue:
Non-interactive PDFs can contain form fields such as checkboxes and radio buttons. however, NVDA does not report any meaningful type or state for them at all.
This is due to the fact that NVDA specifically maps the PDF stdName (tag) of 'Form' to NVDA's Form role. Thereby completely overriding any more detailed MSAA role Adobe has provided.
This was most likely due to a mis-understanding of the PDF spec. The <form> tag means form field, not form.

Description of how this pull request fixes the issue:
Remove the mapping of Form stdName to NVDA's Form role. so that NVDA will fall back to using the MSAA role / states provided by Adobe Acrobat.
@nvaccessAuto nvaccessAuto added this to the 2022.2 milestone Mar 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants