Disability Discrimination Act (DDA) issue on tab index focus for radio buttons
Hi All, We recently had DDA testing on one of our Mendix app. I have an issue below that is high which need to be fixed. I am not sure if anyone noticed or had this issue but any help on this will be really appreciated. Radio buttons Yes/No are not keyboard accessible once a selection is made using keyboard. Focus is lost and keyboard accessibility is broken. If we click on the selected radio using mouse again then focus is back and also accessible via keyboard. This is first time when I tab using keyboard, keyboard is fully accessible. Once I hit space bar to make the selection the radio button is selected but the focus is lost and keyboard accessibility is broken. If I manually click on the selection again using mouse the focus is back and keyboard accessibility works fine again. Update1: After investigating it further I found that the onChange event on radio button that has refresh object is causing this issue. I tried using the radio button list widget as well (downloaded it from the link provided in comments below) but still same issue. If I remove refresh in client on that object in OnChange event then the focus stays and works well after making the selection using keyboard but as soon as I put the refresh in client back then the focus is lost again and I have to use mouse as keyboard accessibility is broken. Update2: Further found that If the radio button is on data view and object is refreshed in clients then it works perfect where as if I use radio button on list view and in the OnChange event object is refreshed in client then focus is lost. Please can anyone help me out? Thanks in advance!
Mohammed Siddiqui - 'Old Account'
I believe your issue is down to the fact that your radio button is in a listivew. When you refresh the dataview the whole list gets refreshed and then the focus on the radio button is lost. What you really want is for new objects to be added to the list but not the whole list to be refreshed.
Are you using the radio button widget from the appstore or the standard radio button that comes with the platform? I consistently use my keyboard only in Mendix and I have never experienced any problems with keyboard accessibility.
The appstore widget is not fully accessible, to many (unnamed) elements so accessibility tools get confused. The widget is on github too, so you could look into improving the structure there: https://github.com/mendix/RadiobuttonList