mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-09 20:42:52 +07:00
cs: availability tweaks
This commit is contained in:
+4
-2
@@ -189,7 +189,7 @@ public class JavaChangeSignatureDetector implements LanguageChangeSignatureDetec
|
||||
@Override
|
||||
public boolean isChangeSignatureAvailable(PsiElement element, ChangeInfo currentInfo) {
|
||||
if (currentInfo instanceof JavaChangeInfo) {
|
||||
return Comparing.equal(currentInfo.getMethod(), element);
|
||||
return element instanceof PsiIdentifier && Comparing.equal(currentInfo.getMethod(), element.getParent());
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -197,6 +197,7 @@ public class JavaChangeSignatureDetector implements LanguageChangeSignatureDetec
|
||||
@Nullable
|
||||
@Override
|
||||
public TextRange getHighlightingRange(PsiElement element) {
|
||||
element = element.getParent();
|
||||
if (element instanceof PsiMethod) {
|
||||
final PsiCodeBlock body = ((PsiMethod)element).getBody();
|
||||
return new TextRange(element.getTextRange().getStartOffset(), body == null ? element.getTextRange().getEndOffset() : body.getTextRange().getStartOffset() - 1);
|
||||
@@ -206,7 +207,8 @@ public class JavaChangeSignatureDetector implements LanguageChangeSignatureDetec
|
||||
|
||||
@Override
|
||||
public boolean wasBanned(PsiElement element, @NotNull ChangeInfo bannedInfo) {
|
||||
return Comparing.equal(PsiTreeUtil.getParentOfType(element, PsiMethod.class), bannedInfo.getMethod());
|
||||
final PsiMethod method = PsiTreeUtil.getParentOfType(element, PsiMethod.class);
|
||||
return method != null && isInsideMethodSignature(element, method) && Comparing.equal(method, bannedInfo.getMethod());
|
||||
}
|
||||
|
||||
private static boolean isInsideMethodSignature(PsiElement element, @NotNull PsiMethod method) {
|
||||
|
||||
Reference in New Issue
Block a user