From 9e271e188755522f05484b4e78dd43d274dd48e2 Mon Sep 17 00:00:00 2001 From: peter Date: Mon, 1 Oct 2012 18:09:08 +0200 Subject: [PATCH] no need to commit documents in live template macros => no need to calculate their lookup items in EDT (IDEA-92139) --- .../intellij/codeInsight/template/macro/ArrayVariableMacro.java | 1 - .../codeInsight/template/macro/CastToLeftSideTypeMacro.java | 1 - .../codeInsight/template/macro/ComponentTypeOfMacro.java | 1 - .../codeInsight/template/macro/CurrentPackageMacro.java | 1 - .../intellij/codeInsight/template/macro/ExpectedTypeMacro.java | 1 - .../codeInsight/template/macro/GuessElementTypeMacro.java | 2 -- .../codeInsight/template/macro/IterableComponentTypeMacro.java | 1 - .../codeInsight/template/macro/IterableVariableMacro.java | 1 - .../src/com/intellij/codeInsight/template/macro/MacroUtil.java | 2 -- .../intellij/codeInsight/template/macro/RightSideTypeMacro.java | 1 - .../codeInsight/template/macro/SuggestIndexNameMacro.java | 2 -- .../codeInsight/template/macro/TypeOfVariableMacro.java | 1 - .../codeInsight/template/macro/VariableOfTypeMacro.java | 2 -- 13 files changed, 17 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/ArrayVariableMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/ArrayVariableMacro.java index 4cb5d30a4db1..e6dc1cf396be 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/ArrayVariableMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/ArrayVariableMacro.java @@ -37,7 +37,6 @@ public class ArrayVariableMacro extends VariableTypeMacroBase { Project project = context.getProject(); final int offset = context.getStartOffset(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); final ArrayList array = new ArrayList(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); PsiElement place = file.findElementAt(offset); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/CastToLeftSideTypeMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/CastToLeftSideTypeMacro.java index 7de2d71c22ac..86d652c4add9 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/CastToLeftSideTypeMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/CastToLeftSideTypeMacro.java @@ -43,7 +43,6 @@ public class CastToLeftSideTypeMacro extends Macro { public Result calculateResult(@NotNull Expression[] params, ExpressionContext context) { int offset = context.getStartOffset(); Project project = context.getProject(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); PsiElement element = file.findElementAt(offset); element = PsiTreeUtil.getParentOfType(element, PsiAssignmentExpression.class, PsiVariable.class); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/ComponentTypeOfMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/ComponentTypeOfMacro.java index 653553c75bdb..13466f3ea1eb 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/ComponentTypeOfMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/ComponentTypeOfMacro.java @@ -61,7 +61,6 @@ public class ComponentTypeOfMacro extends Macro { final Result result = params[0].calculateResult(context); if (result == null) return null; - PsiDocumentManager.getInstance(context.getProject()).commitAllDocuments(); if (result instanceof PsiTypeResult) { PsiType type = ((PsiTypeResult) result).getType(); if (type instanceof PsiArrayType) { diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/CurrentPackageMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/CurrentPackageMacro.java index ea899e6b8863..e97913953d87 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/CurrentPackageMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/CurrentPackageMacro.java @@ -44,7 +44,6 @@ class CurrentPackageMacro extends Macro { Project project = context.getProject(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); if (!(file instanceof PsiJavaFile)) return new TextResult (""); - PsiDocumentManager.getInstance(project).commitDocument(context.getEditor().getDocument()); return new TextResult (((PsiJavaFile)file).getPackageName()); } diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/ExpectedTypeMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/ExpectedTypeMacro.java index 7166bb320136..6fb96b43d4af 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/ExpectedTypeMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/ExpectedTypeMacro.java @@ -69,7 +69,6 @@ public class ExpectedTypeMacro extends Macro { if (params.length != 0) return null; final Project project = context.getProject(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiType[] types = null; final int offset = context.getTemplateStartOffset(); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/GuessElementTypeMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/GuessElementTypeMacro.java index f119e10fd479..e4cce1f223bb 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/GuessElementTypeMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/GuessElementTypeMacro.java @@ -23,7 +23,6 @@ import com.intellij.codeInsight.template.*; import com.intellij.codeInsight.template.impl.JavaTemplateUtil; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.TextRange; -import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiExpression; import com.intellij.psi.PsiType; import com.intellij.psi.PsiWildcardType; @@ -70,7 +69,6 @@ public class GuessElementTypeMacro extends Macro { if (result == null) return null; Project project = context.getProject(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiExpression expr = MacroUtil.resultToPsiExpression(result, context); if (expr == null) return null; diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableComponentTypeMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableComponentTypeMacro.java index 36cc92b448b0..045b4363b756 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableComponentTypeMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableComponentTypeMacro.java @@ -45,7 +45,6 @@ public class IterableComponentTypeMacro extends Macro { if (result == null) return null; Project project = context.getProject(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiExpression expr = MacroUtil.resultToPsiExpression(result, context); if (expr == null) return null; diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableVariableMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableVariableMacro.java index d90dc7daad31..ad23f255f47b 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableVariableMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/IterableVariableMacro.java @@ -53,7 +53,6 @@ public class IterableVariableMacro extends VariableTypeMacroBase { Project project = context.getProject(); final int offset = context.getStartOffset(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); assert file != null; PsiElement place = file.findElementAt(offset); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/MacroUtil.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/MacroUtil.java index 6a8912aba347..116f0756b2dc 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/MacroUtil.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/MacroUtil.java @@ -44,7 +44,6 @@ public class MacroUtil { String text = result.toString(); if (text == null) return null; PsiManager manager = PsiManager.getInstance(project); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); //-1: Hack to deal with stupid resolve PsiElement place = file != null ? file.findElementAt(context.getStartOffset()) : null; @@ -72,7 +71,6 @@ public class MacroUtil { String text = result.toString(); if (text == null) return null; PsiManager manager = PsiManager.getInstance(project); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); //-1: Hack to deal with resolve algorithm PsiElement place = file != null ? file.findElementAt(context.getStartOffset()) : null; diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/RightSideTypeMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/RightSideTypeMacro.java index f42c3efdba23..991481d53f86 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/RightSideTypeMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/RightSideTypeMacro.java @@ -39,7 +39,6 @@ public class RightSideTypeMacro extends Macro { public Result calculateResult(@NotNull Expression[] params, ExpressionContext context) { int offset = context.getStartOffset(); Project project = context.getProject(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); PsiElement element = file.findElementAt(offset); element = PsiTreeUtil.getParentOfType(element, PsiAssignmentExpression.class, PsiVariable.class); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/SuggestIndexNameMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/SuggestIndexNameMacro.java index 3785f1eae281..68013d643869 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/SuggestIndexNameMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/SuggestIndexNameMacro.java @@ -42,8 +42,6 @@ public class SuggestIndexNameMacro extends Macro { final Project project = context.getProject(); final int offset = context.getStartOffset(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); - PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument()); PsiElement place = file.findElementAt(offset); PsiVariable[] vars = MacroUtil.getVariablesVisibleAt(place, ""); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/TypeOfVariableMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/TypeOfVariableMacro.java index b04f6cf71470..833358f0404a 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/TypeOfVariableMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/TypeOfVariableMacro.java @@ -41,7 +41,6 @@ public class TypeOfVariableMacro extends Macro { if (params.length == 0) return null; final Project project = context.getProject(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); Result result = params[0].calculateQuickResult(context); if (result instanceof PsiElementResult) { final PsiElement element = ((PsiElementResult)result).getElement(); diff --git a/java/java-impl/src/com/intellij/codeInsight/template/macro/VariableOfTypeMacro.java b/java/java-impl/src/com/intellij/codeInsight/template/macro/VariableOfTypeMacro.java index 16fb2dfd587d..307191463964 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/macro/VariableOfTypeMacro.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/macro/VariableOfTypeMacro.java @@ -72,8 +72,6 @@ public class VariableOfTypeMacro extends Macro { Project project = context.getProject(); final int offset = context.getStartOffset(); - PsiDocumentManager.getInstance(project).commitAllDocuments(); - final ArrayList array = new ArrayList(); PsiType type = MacroUtil.resultToPsiType(result, context); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(context.getEditor().getDocument());