safe delete unused static imports (IDEA-62051)

This commit is contained in:
anna
2010-12-28 14:37:20 +03:00
parent f51c0206a0
commit 8ada522a72
6 changed files with 22 additions and 2 deletions
@@ -393,7 +393,7 @@ public class JavaSafeDeleteProcessor implements SafeDeleteProcessorDelegate {
for (PsiReference reference : references) {
final PsiElement element = reference.getElement();
if (!isInside(element, allElementsToDelete) && !isInside(element, overridingMethods)) {
usages.add(new SafeDeleteReferenceJavaDeleteUsageInfo(element, psiMethod, false));
usages.add(new SafeDeleteReferenceJavaDeleteUsageInfo(element, psiMethod, PsiTreeUtil.getParentOfType(element, PsiImportStaticStatement.class) != null));
}
}
@@ -612,7 +612,7 @@ public class JavaSafeDeleteProcessor implements SafeDeleteProcessorDelegate {
else {
TextRange range = reference.getRangeInElement();
usages.add(new SafeDeleteReferenceJavaDeleteUsageInfo(reference.getElement(), psiField, range.getStartOffset(),
range.getEndOffset(), false, false));
range.getEndOffset(), false, PsiTreeUtil.getParentOfType(element, PsiImportStaticStatement.class) != null));
}
}
@@ -0,0 +1,3 @@
public class A {
}
@@ -0,0 +1,4 @@
public class A {
static void b<caret>ar() {}
}
@@ -0,0 +1,4 @@
import static A.bar;
class B {
}
@@ -77,6 +77,11 @@ public class SafeDeleteTest extends MultiFileTestCase {
doTest("UserFlags");
}
public void testSafeDeleteStaticImports() throws Exception {
myDoCompare = false;
doTest("A");
}
public void testRemoveOverridersInspiteOfUnsafeUsages() throws Exception {
myDoCompare = false;
try {