Steps to reproduce:
- In Firefox, open this test case:
data:text/html,<div contenteditable><ul><li>test
- Press control+home to move to ensure the cursor is within the list item.
- Press enter.
Actual behavior:
NVDA should switch to focus mode.
Expected behavior:
It doesn't.
System configuration
NVDA installed/portable/running from source:
Installed
NVDA version:
alpha-25262,a55f9a62
Windows version:
Windows 11 Version 21H2 (OS Build 22000.613)
Name and version of other software in use when reproducing the issue:
Firefox Nightly 101 (but this is not specific to Nightly)
Other questions
Have you tried any other versions of NVDA? If so, please report their behaviors.
NVDA 2021.3.5, same problem
Other info
I believe I've tracked this down to this line of code which removes the editable state if the readonly state is present. This was introduced in 0569e73, PR #7935. The problem is that for lists and list items, the readonly state is used to differentiate between an interactive list box and a non-interactive list. It's possible to have an editable list, in which case Firefox exposes both the readonly and editable states.
This doesn't happen in Chrome because Chrome doesn't expose the readonly state on editable lists. Interestingly, NVDA has to work around this lack of the readonly state for editable lists in Chrome.
I think NVDA should not remove the readonly state for lists and list items which have the editable state.
CC @michaelDCurran, who authored the regressing pull request.
Steps to reproduce:
data:text/html,<div contenteditable><ul><li>testActual behavior:
NVDA should switch to focus mode.
Expected behavior:
It doesn't.
System configuration
NVDA installed/portable/running from source:
Installed
NVDA version:
alpha-25262,a55f9a62
Windows version:
Windows 11 Version 21H2 (OS Build 22000.613)
Name and version of other software in use when reproducing the issue:
Firefox Nightly 101 (but this is not specific to Nightly)
Other questions
Have you tried any other versions of NVDA? If so, please report their behaviors.
NVDA 2021.3.5, same problem
Other info
I believe I've tracked this down to this line of code which removes the editable state if the readonly state is present. This was introduced in 0569e73, PR #7935. The problem is that for lists and list items, the readonly state is used to differentiate between an interactive list box and a non-interactive list. It's possible to have an editable list, in which case Firefox exposes both the readonly and editable states.
This doesn't happen in Chrome because Chrome doesn't expose the readonly state on editable lists. Interestingly, NVDA has to work around this lack of the readonly state for editable lists in Chrome.
I think NVDA should not remove the readonly state for lists and list items which have the editable state.
CC @michaelDCurran, who authored the regressing pull request.