Question

I'm building a Flex app that has to be accessible and meet section 508 guidelines. Some pre-built parts of are making heavy use of DataGroup, DataGrid, and ItemRenderers. I can't get anything that was created with ItemRenderers to even receive keyboard focus, so it seems impossible to have their accessibilityProperties revealed.

Is there a trick to making focus available to an ItemRenderer? Or some alternative I could use?

Was it helpful?

Solution

SOLUTION:

I kind of stumbled across this, and I'm not entirely sure why this works, but the solution is simple. Just add implements="mx.managers.IFocusManagerComponent" into the root tag of the custom ItemRenderer, and then each item in the list will be able to receive focus and expose its accessibilityProperties.

The strange is, the Flex compiler doesn't complain if the custom renderer fails to implement the required IFocusManagerComponent methods. I don't know why, but I would speculate that these methods are implemented somewhere up the code chain, and aren't used unless a component explicity implements IFocusManagerComponent.

The only problem I'm having now is that only the visible items show their accessibilityProperties, which makes sense because ItemRenderers are only created for the visible items on screen, but I should find some way to scroll the list automaticaly if the last visible ItemRenderer loses focus.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top