From 4bbaab8774710d96fecf8711b6f9ed45d99437ea Mon Sep 17 00:00:00 2001 From: Pavel Dolgov Date: Tue, 16 Apr 2019 15:51:21 +0300 Subject: [PATCH] Java: Use 'enum' keyword for enums in quick doc. Don't show 'final' and 'static' in that case - JLS 8.9 (IDEA-175215) --- .../codeInsight/javadoc/JavaDocInfoGenerator.java | 3 ++- .../src/com/intellij/psi/util/PsiFormatUtil.java | 14 ++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java b/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java index a1321011ecde..1b21bd888e38 100644 --- a/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java +++ b/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java @@ -467,7 +467,8 @@ public class JavaDocInfoGenerator { boolean generateLink = place == SignaturePlace.Javadoc; generateAnnotations(buffer, aClass, place, true); generateModifiers(buffer, aClass, false); - buffer.append(LangBundle.message(aClass.isInterface() ? "java.terms.interface" : "java.terms.class")); + buffer.append(LangBundle.message(aClass.isInterface() ? "java.terms.interface" + : aClass.isEnum() ? "java.terms.enum" : "java.terms.class")); buffer.append(' '); String refText = JavaDocUtil.getReferenceText(aClass.getProject(), aClass); if (refText == null) { diff --git a/java/java-psi-api/src/com/intellij/psi/util/PsiFormatUtil.java b/java/java-psi-api/src/com/intellij/psi/util/PsiFormatUtil.java index e72b0abecb82..4d607097f7b9 100644 --- a/java/java-psi-api/src/com/intellij/psi/util/PsiFormatUtil.java +++ b/java/java-psi-api/src/com/intellij/psi/util/PsiFormatUtil.java @@ -286,7 +286,12 @@ public class PsiFormatUtil extends PsiFormatUtilBase { if (!BitUtil.isSet(options, SHOW_REDUNDANT_MODIFIERS) ? list.hasExplicitModifier(PsiModifier.STATIC) - : list.hasModifierProperty(PsiModifier.STATIC)) appendModifier(buffer, PsiModifier.STATIC); + : list.hasModifierProperty(PsiModifier.STATIC)) { + if (!BitUtil.isSet(options, JAVADOC_MODIFIERS_ONLY) || + !(element instanceof PsiClass && ((PsiClass)element).isEnum())) { + appendModifier(buffer, PsiModifier.STATIC); + } + } boolean isInterface = element instanceof PsiClass && ((PsiClass)element).isInterface(); if (!isInterface && //cls modifier list @@ -296,7 +301,12 @@ public class PsiFormatUtil extends PsiFormatUtilBase { if (!BitUtil.isSet(options, SHOW_REDUNDANT_MODIFIERS) ? list.hasExplicitModifier(PsiModifier.FINAL) - : list.hasModifierProperty(PsiModifier.FINAL)) appendModifier(buffer, PsiModifier.FINAL); + : list.hasModifierProperty(PsiModifier.FINAL)) { + if (!BitUtil.isSet(options, JAVADOC_MODIFIERS_ONLY) || + !(element instanceof PsiClass && ((PsiClass)element).isEnum())) { + appendModifier(buffer, PsiModifier.FINAL); + } + } if (list.hasModifierProperty(PsiModifier.NATIVE) && !BitUtil.isSet(options, JAVADOC_MODIFIERS_ONLY)) { appendModifier(buffer, PsiModifier.NATIVE);