@Override public void annotate(@NotNull PsiElement element, @NotNull AnnotationHolder holder) { if(element instanceof XmlTag || element instanceof XmlAttribute) { List<SchemaPrefixReference> references = ContainerUtil.findAll(element.getReferences(), SchemaPrefixReference.class); for(SchemaPrefixReference reference : references) { TextRange rangeInElement = reference.getRangeInElement(); if(!rangeInElement.isEmpty()) { TextRange range = rangeInElement.shiftRight(element.getTextRange().getStartOffset()); holder.createInfoAnnotation(range, null).setTextAttributes(XmlHighlighterColors.XML_NS_PREFIX); } } } }
@Override public void annotate(@NotNull PsiElement element, @NotNull AnnotationHolder holder) { if (element instanceof XmlTag || element instanceof XmlAttribute) { List<SchemaPrefixReference> references = ContainerUtil.findAll(element.getReferences(), SchemaPrefixReference.class); for (SchemaPrefixReference reference : references) { TextRange rangeInElement = reference.getRangeInElement(); if (!rangeInElement.isEmpty()) { TextRange range = rangeInElement.shiftRight(element.getTextRange().getStartOffset()); holder.createInfoAnnotation(range, null).setTextAttributes(XmlHighlighterColors.XML_NS_PREFIX); } } } }
@Override @NotNull public TextAttributesKey[] getTokenHighlights(IElementType tokenType) { return SyntaxHighlighterBase.pack(XmlHighlighterColors.HTML_CODE, keys1.get(tokenType)); }
@Override @NotNull public TextAttributesKey[] getTokenHighlights(IElementType tokenType) { return SyntaxHighlighterBase.pack(XmlHighlighterColors.HTML_CODE, pack(keys1.get(tokenType), keys2.get(tokenType))); }
@Override public Map<String, TextAttributesKey> getAdditionalHighlightingTagToDescriptorMap() { return ContainerUtil.newHashMap(Pair.create("np", XmlHighlighterColors.XML_NS_PREFIX), Pair.create("bg", XmlHighlighterColors.XML_TAG)); }
@Override public void run() { checkInstallation(); cleanUpIdePreferences(); if (!Boolean.getBoolean(USE_IDEA_NEW_PROJECT_WIZARDS)) { replaceIdeaNewProjectActions(); } if (!Boolean.getBoolean(USE_IDEA_PROJECT_STRUCTURE)) { replaceProjectStructureActions(); } if (!Boolean.getBoolean(USE_JPS_MAKE_ACTIONS)) { replaceIdeaMakeActions(); } if (!Boolean.getBoolean(USE_IDEA_NEW_FILE_POPUPS)) { hideIdeaNewFilePopupActions(); } try { // Setup JDK and Android SDK if necessary setupSdks(); } catch (Exception e) { LOG.error("Unexpected error while setting up SDKs: ", e); } addExtraBuildActions(); hideMiscActions(); registerAppClosing(); // Always reset the Default scheme to match Android standards // User modifications won't be lost since they are made in a separate scheme (copied off of this default scheme) CodeStyleScheme scheme = CodeStyleSchemes.getInstance().getDefaultScheme(); if (scheme != null) { CodeStyleSettings settings = scheme.getCodeStyleSettings(); if (settings != null) { AndroidCodeStyleSettingsModifier.modify(settings); } } // Modify built-in "Default" color scheme to remove background from XML tags. // "Darcula" and user schemes will not be touched. EditorColorsScheme colorsScheme = EditorColorsManager.getInstance().getScheme(EditorColorsScheme.DEFAULT_SCHEME_NAME); TextAttributes textAttributes = colorsScheme.getAttributes(HighlighterColors.TEXT); TextAttributes xmlTagAttributes = colorsScheme.getAttributes(XmlHighlighterColors.XML_TAG); xmlTagAttributes.setBackgroundColor(textAttributes.getBackgroundColor()); checkAndSetAndroidSdkSources(); }
@Override @NotNull public TextAttributesKey[] getTokenHighlights(IElementType tokenType) { return pack(XmlHighlighterColors.HTML_CODE, pack(keys1.get(tokenType), keys2.get(tokenType))); }
@NotNull public TextAttributesKey[] getTokenHighlights(IElementType tokenType) { return pack(XmlHighlighterColors.HTML_CODE, pack(keys1.get(tokenType), keys2.get(tokenType))); }