summaryrefslogtreecommitdiff
path: root/java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java')
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java36
1 files changed, 20 insertions, 16 deletions
diff --git a/java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java b/java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java
index 609a981b7bf4..2998ec6b0f07 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeMigration/TypeMigrationProcessor.java
@@ -88,28 +88,32 @@ public class TypeMigrationProcessor extends BaseRefactoringProcessor {
final Editor editor,
final TypeMigrationRules rules,
final PsiElement root) {
+ final PsiFile containingFile = root.getContainingFile();
final TypeMigrationProcessor processor = new TypeMigrationProcessor(project, root, rules) {
@Override
public void performRefactoring(final UsageInfo[] usages) {
super.performRefactoring(usages);
- ApplicationManager.getApplication().invokeLater(new Runnable() {
- public void run() {
- final List<PsiElement> result = new ArrayList<PsiElement>();
- for (UsageInfo usage : usages) {
- final PsiElement element = usage.getElement();
- if (element instanceof PsiMethod) {
- result.add(((PsiMethod)element).getReturnTypeElement());
- }
- else if (element instanceof PsiVariable) {
- result.add(((PsiVariable)element).getTypeElement());
- }
- else if (element != null) {
- result.add(element);
+ if (editor != null) {
+ ApplicationManager.getApplication().invokeLater(new Runnable() {
+ public void run() {
+ final List<PsiElement> result = new ArrayList<PsiElement>();
+ for (UsageInfo usage : usages) {
+ final PsiElement element = usage.getElement();
+ if (element == null || containingFile != element.getContainingFile()) continue;
+ if (element instanceof PsiMethod) {
+ result.add(((PsiMethod)element).getReturnTypeElement());
+ }
+ else if (element instanceof PsiVariable) {
+ result.add(((PsiVariable)element).getTypeElement());
+ }
+ else {
+ result.add(element);
+ }
}
+ RefactoringUtil.highlightAllOccurrences(project, PsiUtilCore.toPsiElementArray(result), editor);
}
- if (editor != null) RefactoringUtil.highlightAllOccurrences(project, PsiUtilCore.toPsiElementArray(result), editor);
- }
- });
+ });
+ }
}
};
processor.run();