project wizard: start loading templates list only when dialog is shown

Otherwise the task is called with non-modal modality state and its 'onFinished' method is called only after closing the dialog (IDEA-175643).
This commit is contained in:
nik
2017-07-12 11:09:10 +03:00
parent 861a66d048
commit 7088a9426d
@@ -57,6 +57,7 @@ import com.intellij.util.Function;
import com.intellij.util.PlatformUtils;
import com.intellij.util.containers.*;
import com.intellij.util.ui.UIUtil;
import com.intellij.util.ui.update.UiNotifyConnector;
import gnu.trove.THashMap;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -595,6 +596,10 @@ public class ProjectTypeStep extends ModuleWizardStep implements SettingsStep, D
}
void loadRemoteTemplates(final ChooseTemplateStep chooseTemplateStep) {
UiNotifyConnector.doWhenFirstShown(myPanel, () -> startLoadingRemoteTemplates(chooseTemplateStep));
}
private void startLoadingRemoteTemplates(ChooseTemplateStep chooseTemplateStep) {
myTemplatesList.setPaintBusy(true);
chooseTemplateStep.getTemplateList().setPaintBusy(true);
ProgressManager.getInstance().run(new Task.Backgroundable(myContext.getProject(), "Loading Templates") {