From 7d39fe684a84b02277153a6dec9eaa58a9934541 Mon Sep 17 00:00:00 2001 From: irengrig Date: Sun, 24 Jan 2010 13:00:31 +0300 Subject: [PATCH] AE: RootsToWorkingCopies.getMatchingCopy (http://ea.jetbrains.com/browser/ea_problems/18340) --- .../idea/svn/config/SvnConfigureProxiesDialog.java | 30 +++++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/plugins/svn4idea/src/org/jetbrains/idea/svn/config/SvnConfigureProxiesDialog.java b/plugins/svn4idea/src/org/jetbrains/idea/svn/config/SvnConfigureProxiesDialog.java index bca5de916a..04f5fd4615 100644 --- a/plugins/svn4idea/src/org/jetbrains/idea/svn/config/SvnConfigureProxiesDialog.java +++ b/plugins/svn4idea/src/org/jetbrains/idea/svn/config/SvnConfigureProxiesDialog.java @@ -16,6 +16,8 @@ package org.jetbrains.idea.svn.config; import com.intellij.openapi.options.ConfigurationException; +import com.intellij.openapi.progress.ProgressIndicator; +import com.intellij.openapi.progress.ProgressManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.Messages; @@ -127,14 +129,28 @@ public class SvnConfigureProxiesDialog extends DialogWrapper implements Validati if(! applyImpl()) { return; } - try { - SvnVcs.getInstance(myProject).createRepository(url).testConnection(); - } catch (SVNException exc) { - Messages.showErrorDialog(myProject, exc.getMessage(), SvnBundle.message("dialog.edit.http.proxies.settings.test.connection.error.title")); - return; + final Ref excRef = new Ref(); + final ProgressManager pm = ProgressManager.getInstance(); + pm.runProcessWithProgressSynchronously(new Runnable() { + public void run() { + final ProgressIndicator pi = pm.getProgressIndicator(); + if (pi != null) { + pi.setText("Connecting to " + url); + } + try { + SvnVcs.getInstance(myProject).createRepository(url).testConnection(); + } catch (SVNException exc) { + excRef.set(exc); + } + } + }, "Test connection", true, myProject); + if (! excRef.isNull()) { + Messages.showErrorDialog(myProject, excRef.get().getMessage(), + SvnBundle.message("dialog.edit.http.proxies.settings.test.connection.error.title")); + } else { + Messages.showInfoMessage(myProject, SvnBundle.message("dialog.edit.http.proxies.settings.test.connection.succes.text"), + SvnBundle.message("dialog.edit.http.proxies.settings.test.connection.succes.title")); } - Messages.showInfoMessage(myProject, SvnBundle.message("dialog.edit.http.proxies.settings.test.connection.succes.text"), - SvnBundle.message("dialog.edit.http.proxies.settings.test.connection.succes.title")); } private boolean valid; -- 2.11.4.GIT