[ 
https://issues.apache.org/jira/browse/FLEX-33772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Cosma Colanicchia updated FLEX-33772:
-------------------------------------

    Attachment: TestFocus-patched-revised.air
                FocusManager-revised.patch

I attached a revised patch that fixes the modified behavior and improve 
performances.

However, I wasn't able to completely avoid the initial full loop: the code 
complexity to maintain current behavior was increasing too much, and it was 
required to always force a full loop for the main logic (could not break out 
early). 

Instead, I just revised the first loop to immediately check if the element is 
actually part of the group, and only then call isEnabledAndVisible. This should 
drastically reduce the number of invocations to that method - combined with the 
fact that the second loop is able to break out after only a few iterations in 
the typical cases, probably overall performance should still be improved by the 
patch in the average cases (no research done here, any contribution is welcome).


> Incorrect tab focus behavior (closed loops) when using focus groups (such as 
> RadioButton components)
> ----------------------------------------------------------------------------------------------------
>
>                 Key: FLEX-33772
>                 URL: https://issues.apache.org/jira/browse/FLEX-33772
>             Project: Apache Flex
>          Issue Type: Bug
>          Components: Focus Manager
>    Affects Versions: Apache Flex 4.11.0
>            Reporter: Cosma Colanicchia
>            Assignee: Alex Harui
>            Priority: Minor
>              Labels: patch
>         Attachments: FocusManager.patch, FocusManager.patch, 
> FocusManager-revised.patch, TestFocus-current.air, TestFocus.mxml, 
> TestFocus-patched.air, TestFocus-patched-revised.air, 
> TestFocus-screenshot.png, TestFocus-updated.mxml
>
>
> When additional components that are not part of the focus group are 
> positioned between two group elements, it may be impossible to move the focus 
> away from the group using the keyboard.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to