CreateTypeParameterFromUsage: ignore when identifier is in call

IDEA-192775
This commit is contained in:
Roman.Ivanov
2018-05-30 11:01:20 +07:00
parent a9343d976c
commit a591f4e58e
2 changed files with 9 additions and 1 deletions
@@ -161,7 +161,8 @@ public class CreateTypeParameterFromUsageFix extends BaseIntentionAction {
static Context from(@NotNull PsiJavaCodeReferenceElement element, boolean findFirstOnly) {
if (!PsiUtil.isLanguageLevel5OrHigher(element)) return null;
if (element.isQualified()) return null;
if (element.getParent() instanceof PsiJavaCodeReferenceElement) return null;
PsiElement parent = element.getParent();
if (parent instanceof PsiMethodCallExpression || parent instanceof PsiJavaCodeReferenceElement) return null;
List<PsiNameIdentifierOwner> candidates = collectParentClassesAndMethodsUntilStatic(element, findFirstOnly);
if (candidates.isEmpty()) return null;
String name = element.getReferenceName();
@@ -0,0 +1,7 @@
// "Create type parameter 'method'" "false"
class SampleTestCase extends TestCase {
public void testStringsNotEqual() {
method<caret>();
}
}