diff --git a/java/java-impl/src/com/intellij/codeInsight/ExternalAnnotationsManagerImpl.java b/java/java-impl/src/com/intellij/codeInsight/ExternalAnnotationsManagerImpl.java index 64be3b97d738..ce867c9cb712 100644 --- a/java/java-impl/src/com/intellij/codeInsight/ExternalAnnotationsManagerImpl.java +++ b/java/java-impl/src/com/intellij/codeInsight/ExternalAnnotationsManagerImpl.java @@ -113,7 +113,7 @@ public class ExternalAnnotationsManagerImpl extends ReadableExternalAnnotationsM LOG.assertTrue(!application.isWriteAccessAllowed()); final Project project = myPsiManager.getProject(); - final PsiFile containingFile = listOwner.getContainingFile(); + final PsiFile containingFile = listOwner.getOriginalElement().getContainingFile(); if (!(containingFile instanceof PsiJavaFile)) { notifyAfterAnnotationChanging(listOwner, annotationFQName, false); return; @@ -456,7 +456,7 @@ public class ExternalAnnotationsManagerImpl extends ReadableExternalAnnotationsM @NotNull public AnnotationPlace chooseAnnotationsPlace(@NotNull final PsiElement element) { ApplicationManager.getApplication().assertIsDispatchThread(); - if (!element.isPhysical()) return AnnotationPlace.IN_CODE; //element just created + if (!element.isPhysical() && !(element.getOriginalElement() instanceof PsiCompiledElement)) return AnnotationPlace.IN_CODE; //element just created if (!element.getManager().isInProject(element)) return AnnotationPlace.EXTERNAL; final Project project = myPsiManager.getProject();