final Timer eventTimer = (Timer)event.getSource();
focusMapLater(mapView, eventTimer);
}
private void focusMapLater(final MapView mapView, final Timer eventTimer) {
if(mapView.isShowing() && Controller.getCurrentController().getMapViewManager().getMapViewComponent() == mapView){
final NodeView selected = mapView.getSelected();
if(selected != null){
final Frame frame = JOptionPane.getFrameForComponent(mapView);
if (frame.isFocused())
selected.requestFocusInWindow();
else
frame.addWindowFocusListener(new WindowAdapter() {
@Override
public void windowGainedFocus(WindowEvent e) {
frame.removeWindowFocusListener(this);
selected.requestFocusInWindow();
retryCount = 2;
eventTimer.start();
}
});
}