diff --git a/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java b/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java index 0cb4046e3c38..da9e938ff3a2 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java +++ b/platform/lang-impl/src/com/intellij/refactoring/BaseRefactoringProcessor.java @@ -496,7 +496,12 @@ public abstract class BaseRefactoringProcessor implements Runnable { e.getKey().performOperation(myProject, e.getValue()); } myTransaction.commit(); - app.runWriteAction(() -> performPsiSpoilingRefactoring()); + if (Registry.is("run.refactorings.under.progress")) { + app.runWriteActionWithProgressInDispatchThread(getCommandName(), myProject, null, null, indicator -> performPsiSpoilingRefactoring()); + } + else { + app.runWriteAction(() -> performPsiSpoilingRefactoring()); + } } finally { action.finish();