OneNote Accessibility Testing update

  • We finally got to perform our focus week on accessibility. One of the tools we used is called "MSAA." This stands for MicroSoft Active Accessibility. It's a shared source tool you can download an older version of it if you want from codeplex or the newer SDK from the Microsoft site. The older version is a little simpler to explain, and I'll refer to it for that reason.

  • I'll describe one level of testing we did and what effect it will have on using OneNote. Suppose you are using a screen reader to access the software. You want to insert a table on a page. I'll assume you can use the shortcut keys to click the Table menu and Insert Table. You'll get this dialog:

  • There are 2 values you want to set - the number of columns and rows. OneNote needs to let you know some information about the dialog before you can type the numbers you want.

  • First, we need to let you know where focus on the dialog is. MSAA will show us the text exposed to screen readers in the "Accessible Name" property. For the first text box, OneNote exposes the text name "Number of Columns" which is what a screen reader will use. Next, you need to know how to change the number of columns. We could have used a dropdown control with values in it, but we chose a text field in which you can type. The Accessible name for this field is "editable text," and this is what a screen reader will use. Lastly, the state of the control needs to be known. This can be several values (selectable, focusable, in focus, read only, etc…) but the value needs to exist.

  • You can use the Windows Narrator to test this yourself, by the way. Under Programs \ Accessories \ Ease of Access is Narrator. Start it and the screen reader will begin telling you the state of your UI.

  • If you actually started Narrator, you will notice it takes a while to read through all the information needed to let you know the state of the screen. We use the MSAA tool to more quickly verify the three properties (Name, role and state) exist and are correct. Other controls will have more properties they need to expose, and even with this control we need one more property: the value actually typed into the box.

  • If you start the MSAA tool, you'll get a window similar to the following:

  • If you drag the cross hairs over the number of columns text box, your UI should show you the values OneNote exposes on that control. (Ignore the red errors above - I cancelled those tests). The screen reader will call this control "Number of Columns" let us know it is "editable text," that we can tab to it and change the value and finally, what the actual value is.

  • We go through every "piece" of UI in OneNote to make sure they work properly. We have to verify the properties exist so screen readers can use them. Any time we change the UI, we also verify these accessible properties.

  • Have fun using the MSAA tool and using Narrator. It really gives you a different perspective on computer use.

  • Questions, comments, concerns and criticisms always welcome,

  • John