From 3dcdd384bfb52e12101b17c9f3bdec803d1899c6 Mon Sep 17 00:00:00 2001 From: "Maxim.Mossienko" Date: Thu, 17 Mar 2011 21:16:05 +0300 Subject: [PATCH] IDEA-61225 flex: bogus parameter popup inside if() statement inside anonymous function --- .../intellij/lang/parameterInfo/ParameterInfoUtils.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/platform/lang-api/src/com/intellij/lang/parameterInfo/ParameterInfoUtils.java b/platform/lang-api/src/com/intellij/lang/parameterInfo/ParameterInfoUtils.java index 23ed36f8326e..c7fa172d2bb5 100644 --- a/platform/lang-api/src/com/intellij/lang/parameterInfo/ParameterInfoUtils.java +++ b/platform/lang-api/src/com/intellij/lang/parameterInfo/ParameterInfoUtils.java @@ -37,12 +37,17 @@ public class ParameterInfoUtils { @Nullable public static T findParentOfType (PsiFile file, int offset, Class parentClass) { + return findParentOfTypeWithStopElements(file, offset, parentClass); + } + + @Nullable + public static T findParentOfTypeWithStopElements (PsiFile file, int offset, Class parentClass, @NotNull Class... stopAt) { PsiElement element = file.findElementAt(offset); if (element == null) return null; - T parentOfType = PsiTreeUtil.getParentOfType(element, parentClass); + T parentOfType = PsiTreeUtil.getParentOfType(element, parentClass, true, stopAt); if (element instanceof PsiWhiteSpace) { - parentOfType = PsiTreeUtil.getParentOfType(PsiTreeUtil.prevLeaf(element), parentClass); + parentOfType = PsiTreeUtil.getParentOfType(PsiTreeUtil.prevLeaf(element), parentClass, true, stopAt); } return parentOfType; }