2 Replies Latest reply on Apr 14, 2011 7:32 AM by Wesley.Petrowski

    Flex Accessibility - Cannot set screen reader order

    Wesley.Petrowski

      I'm having a problem where I'm not able to set up a custom reading order for text in my Flex application. I'm setting the tabIndex property on each text element, which I understand is the proper way to set the reading order for a screen reader.


      <?xml version="1.0" encoding="utf-8"?>
      <mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                 
      xmlns:mx="library://ns.adobe.com/flex/mx" layout="absolute">

       
      <mx:Label x="10" y="10" text="1" tabIndex="2" />
       
      <mx:Label x="10" y="36" text="2" tabIndex="1" />
       
      <mx:Label x="10" y="62" text="3" tabIndex="3" />

      </mx:Application>

       

      For this small test application, the screen reader (JAWS 12) reads "1 2 3" instead of "2 1 3".

       

      Some testing seems to indicate that this is only a problem for my particular configuration. I am compiling the application with Flex SDK 4.1, but using the MX component set only, and the Halo theme. We've got a fairly complex app which started out before Flex 4 was around, so while we have made the jump to compile with the latest SDK, we have not yet upgraded anything to use the Spark component set.

       

      When I make a similar test app using the 4.1 SDK and the Spark components+theme, the reading order is set correctly. Same result if I make a test app and compile using the 3.5 SDK and the MX components - everything works.

       

      It still seems like this should work using the MX components in 4.1 though.  Has anyone run into any similar issues, or have any suggestions that might get this to work?