private boolean performSearch() {
    final String text = getCoordinateText();
    if (myProgressIcon.isRunning() || StringUtil.isEmptyOrSpaces(text) || myCoordinates.containsKey(text)) {
      return false;
    }
    myProgressIcon.resume();
    JarRepositoryManager.searchArtifacts(myProject, text, (pairs) -> {
      try {
        if (myProgressIcon.isDisposed()) {
          return;
        }
        myProgressIcon.suspend(); // finished
        final int prevSize = myCoordinates.size();
        for (Pair<RepositoryArtifactDescription, RemoteRepositoryDescription> pair : pairs) {
          final RepositoryArtifactDescription artifact = pair.first;
          myCoordinates.put(artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getVersion(), artifact);
        }
        updateComboboxSelection(prevSize != myCoordinates.size());
      }
      finally {
        setOKActionEnabled(true);
      }
    });
    return true;
  }
private boolean performSearch()