fix navigate to 0-offset for PomTargetPsiElements

This commit is contained in:
Gregory Shrago
2009-11-16 23:44:47 +03:00
parent 44fbf87e45
commit dcdfd28029
@@ -19,6 +19,7 @@ package com.intellij.ide.util;
import com.intellij.openapi.fileEditor.OpenFileDescriptor;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.pom.Navigatable;
import com.intellij.pom.PomTargetPsiElement;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile;
import com.intellij.psi.util.PsiUtilBase;
@@ -33,6 +34,9 @@ public class EditSourceUtil {
if (!canNavigate(element)) {
return null;
}
if (element instanceof PomTargetPsiElement) {
return ((PomTargetPsiElement)element).getTarget();
}
final PsiElement navigationElement = element.getNavigationElement();
final int offset = navigationElement instanceof PsiFile ? -1 : navigationElement.getTextOffset();
final VirtualFile virtualFile = PsiUtilBase.getVirtualFile(navigationElement);