mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-61225 flex: bogus parameter popup inside if() statement inside anonymous function
This commit is contained in:
@@ -37,12 +37,17 @@ public class ParameterInfoUtils {
|
||||
|
||||
@Nullable
|
||||
public static <T extends PsiElement> T findParentOfType (PsiFile file, int offset, Class<T> parentClass) {
|
||||
return findParentOfTypeWithStopElements(file, offset, parentClass);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static <T extends PsiElement> T findParentOfTypeWithStopElements (PsiFile file, int offset, Class<T> parentClass, @NotNull Class<? extends PsiElement>... 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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user