Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I ended up writing my own FocusManager which does what I need. It turned out to be easier than I initially thought. I'm sorry to say that I can't post the code here, but I'll give you a short description of what I did and hope that it helps:</p> <ul> <li>I implemented the <em>fl.managers.IFocusManager</em> interface, but I didn't entirely respect the way the old manager worked</li> <li>The constructor of my CustomFocusManager requires an array of the tabbable children as parameter, and the children have to be in the order that they will appear in the loop. In this way I did not have to care about the type of the children (is it tabbable or not?) or ask myself if tabIndexes exist or not. </li> <li>I ignored the <em>tabIndex</em> properties</li> <li>I created a new interface called <em>IFocusManagerContainer</em>, inspired from the Flex interface with the same name</li> <li>I created a static class similar to Flex's SystemManager which knows when to activate/deactivate the FocusManagers depending on the children found on the stage.</li> </ul> <p>I took a peek into the <em>mx.managers.FocusManager</em> code, and from what I saw, most of their effort was put into handling all the possible cases where the FocusManager might be used, this is why it's so long and complicated. I can only assume that <em>fl.managers.FocusManagers</em> looks similar. I bet that mine still has a lot of problems, and it isn't as portable as the ones from Adobe, but it's very simple and it does what I need it to do. </p> <p>I would still like to see some guidelines on how to correctly use the existing FocusManager. </p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload