From 71beb2c312fe120f49664c57b97db8dfd3c787a8 Mon Sep 17 00:00:00 2001 From: "Maxim.Mossienko" Date: Tue, 23 Nov 2010 19:47:37 +0300 Subject: [PATCH] IDEA-60499 Parameter Info not displayed when no closing paren --- .../lang/parameterInfo/ParameterInfoUtils.java | 10 ++++++++-- 1 file changed, 8 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 38461c9dcf82..4b570cb3c2a7 100644 --- a/platform/lang-api/src/com/intellij/lang/parameterInfo/ParameterInfoUtils.java +++ b/platform/lang-api/src/com/intellij/lang/parameterInfo/ParameterInfoUtils.java @@ -20,6 +20,7 @@ import com.intellij.lang.ASTNode; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; +import com.intellij.psi.PsiWhiteSpace; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.util.text.CharArrayUtil; @@ -34,10 +35,15 @@ import java.util.Set; public class ParameterInfoUtils { public static final String DEFAULT_PARAMETER_CLOSE_CHARS = ",){}"; - public static T findParentOfType (PsiFile file, int offset, Class parentClass) { + public static @Nullable T findParentOfType (PsiFile file, int offset, Class parentClass) { PsiElement element = file.findElementAt(offset); if (element == null) return null; - return PsiTreeUtil.getParentOfType(element, parentClass); + + T parentOfType = PsiTreeUtil.getParentOfType(element, parentClass); + if (element instanceof PsiWhiteSpace) { + parentOfType = PsiTreeUtil.getParentOfType(PsiTreeUtil.prevLeaf(element), parentClass); + } + return parentOfType; } public static int getCurrentParameterIndex(ASTNode argList, int offset, IElementType delimiterType) {