File tree Expand file tree Collapse file tree 4 files changed +41
-0
lines changed
src/main/java/fr/adrienbrault/idea/symfony2plugin Expand file tree Collapse file tree 4 files changed +41
-0
lines changed Original file line number Diff line number Diff line change 11package fr .adrienbrault .idea .symfony2plugin .config .xml ;
22
3+ import com .intellij .ide .highlighter .XmlFileType ;
4+ import com .intellij .openapi .vfs .VirtualFile ;
35import com .intellij .patterns .*;
46import com .intellij .psi .PsiElement ;
57import com .intellij .psi .PsiFile ;
@@ -797,4 +799,25 @@ public static PsiElementPattern.Capture<PsiElement> getXmlTagNameLeafStartPatter
797799 .afterLeaf (PlatformPatterns .psiElement (XmlTokenType .XML_START_TAG_START ))
798800 .withParent (XmlTag .class );
799801 }
802+
803+ public static boolean isXmlFileExtension (@ NotNull PsiFile psiFile ) {
804+ if (psiFile .getFileType () != XmlFileType .INSTANCE ) {
805+ return false ;
806+ }
807+
808+ String filename = psiFile .getName ();
809+
810+ int i = filename .lastIndexOf ('.' );
811+ String extension = null ;
812+ if (i > 0 ) {
813+ extension = filename .substring (i + 1 ).toLowerCase ();
814+ }
815+
816+ if ("xml" .equalsIgnoreCase (extension )) {
817+ return true ;
818+ }
819+
820+ VirtualFile virtualFile = psiFile .getVirtualFile ();
821+ return virtualFile == null || !"xml" .equalsIgnoreCase (virtualFile .getExtension ());
822+ }
800823}
Original file line number Diff line number Diff line change 66import com .intellij .patterns .XmlPatterns ;
77import com .intellij .patterns .XmlTagPattern ;
88import com .intellij .psi .PsiElement ;
9+ import com .intellij .psi .PsiFile ;
910import com .intellij .psi .xml .XmlTag ;
1011import fr .adrienbrault .idea .symfony2plugin .Symfony2ProjectComponent ;
1112import fr .adrienbrault .idea .symfony2plugin .config .xml .XmlHelper ;
@@ -33,6 +34,11 @@ public void collectSlowLineMarkers(@NotNull List<? extends PsiElement> psiElemen
3334 return ;
3435 }
3536
37+ PsiFile containingFile = psiElements .get (0 ).getContainingFile ();
38+ if (containingFile == null || !XmlHelper .isXmlFileExtension (containingFile )) {
39+ return ;
40+ }
41+
3642 LazyDecoratedParentServiceValues lazyDecoratedParentServiceValues = null ;
3743
3844 for (PsiElement psiElement : psiElements ) {
Original file line number Diff line number Diff line change 55import com .intellij .codeInsight .navigation .NavigationGutterIconBuilder ;
66import com .intellij .openapi .project .Project ;
77import com .intellij .psi .PsiElement ;
8+ import com .intellij .psi .PsiFile ;
89import com .intellij .psi .xml .XmlAttributeValue ;
910import com .intellij .psi .xml .XmlTokenType ;
1011import com .jetbrains .php .lang .psi .elements .PhpClass ;
1112import fr .adrienbrault .idea .symfony2plugin .Symfony2Icons ;
1213import fr .adrienbrault .idea .symfony2plugin .Symfony2ProjectComponent ;
14+ import fr .adrienbrault .idea .symfony2plugin .config .xml .XmlHelper ;
1315import fr .adrienbrault .idea .symfony2plugin .doctrine .metadata .util .DoctrineMetadataUtil ;
1416import org .apache .commons .lang .StringUtils ;
1517import org .jetbrains .annotations .NotNull ;
@@ -41,6 +43,11 @@ public void collectSlowLineMarkers(@NotNull List<? extends PsiElement> psiElemen
4143 return ;
4244 }
4345
46+ PsiFile containingFile = psiElements .get (0 ).getContainingFile ();
47+ if (containingFile == null || !XmlHelper .isXmlFileExtension (containingFile )) {
48+ return ;
49+ }
50+
4451 for (PsiElement psiElement : psiElements ) {
4552 if (psiElement .getNode ().getElementType () != XmlTokenType .XML_ATTRIBUTE_VALUE_TOKEN ) {
4653 continue ;
Original file line number Diff line number Diff line change @@ -31,6 +31,11 @@ public void collectSlowLineMarkers(@NotNull List<? extends PsiElement> psiElemen
3131 return ;
3232 }
3333
34+ PsiFile containingFile = psiElements .get (0 ).getContainingFile ();
35+ if (containingFile == null || !XmlHelper .isXmlFileExtension (containingFile )) {
36+ return ;
37+ }
38+
3439 for (PsiElement psiElement : psiElements ) {
3540 if (XmlHelper .getXmlTagNameLeafStartPattern ().accepts (psiElement )) {
3641 attachRouteActions (psiElement , lineMarkerInfos );
You can’t perform that action at this time.
0 commit comments