final Component component = event.getComponent();
final Window windowAncestor = SwingUtilities.getWindowAncestor(component);
if(windowAncestor.isFocused())
editor.focusInputField(true);
else{
windowAncestor.addWindowFocusListener(new WindowFocusListener() {
public void windowLostFocus(WindowEvent e) {
}
public void windowGainedFocus(WindowEvent e) {
windowAncestor.removeWindowFocusListener(this);