if ( !SwingUtils.hasFocusOwner ( pane ) )
{
final Component c = pane.getSelectedComponent ();
if ( c.isFocusable () || c instanceof Container && SwingUtils.hasFocusableComponent ( ( Container ) c ) )
{
pane.transferFocus ();
}
else
{
pane.requestFocusInWindow ();
}