ablerman
ablerman

Reputation: 1543

Flex Panel doesn't call focusInHandler() when it gets focus

I want to be notified when a FLex Panel gets or loses focus. I've overridden the focusInHandler() and the focusOutHandler(), but they don't get called when I click on the panel.

The panels style changes indicating that it has the focus, but the handler doesn't get called.

What am I missing?

Upvotes: 2

Views: 954

Answers (2)

bug-a-lot
bug-a-lot

Reputation: 2454

Containers (and implicitly panels) aren't really focusable. Meaning that simply clicking on an empty container won't give it focus, and in consequence, won't trigger the event handler for "focusIn". In order for a container to "gain" focus, a child of that container, that implements IFocusManagerComponent interface, has to gain focus.

So if you want your panel to trigger the "focusIn" event when clicking on it, you should focus a focusable child of that panel on mouse click.

Upvotes: 3

danjarvis
danjarvis

Reputation: 10190

Have you tried to explicitly listen for that event:

myPanel.addEventListener(FocusEvent.FOCUS_IN, myEventHandler);

and made sure that it was getting called?

Upvotes: 0

Related Questions