[java-highlighting] Restore order of 'implement methods' and 'make abstract'

Fixes IDEA-371881 interface implement became abstract by default

GitOrigin-RevId: 5132319aa2dbccdcaddd718b4b67befc3a82852d
This commit is contained in:
Tagir Valeev
2025-05-09 18:02:40 +00:00
committed by intellij-monorepo-bot
parent 25e7779fcb
commit 439a3ccff8
@@ -847,12 +847,6 @@ public final class DefaultJavaErrorFixProvider extends AbstractJavaErrorFixProvi
private void createClassFixes() {
fix(CLASS_INHERITS_UNRELATED_DEFAULTS, error -> myFactory.createImplementMethodsFix(error.psi()));
fix(CLASS_INHERITS_ABSTRACT_AND_DEFAULT, error -> myFactory.createImplementMethodsFix(error.psi()));
fix(CLASS_NO_ABSTRACT_METHOD, error -> {
if (error.psi() instanceof PsiClass aClass && !(aClass instanceof PsiAnonymousClass) && !aClass.isEnum()) {
return maybeAddModifierFix(aClass, PsiModifier.ABSTRACT);
}
return null;
});
fixes(CLASS_NO_ABSTRACT_METHOD, (error, sink) -> {
PsiMember member = error.psi();
PsiClass aClass = member instanceof PsiEnumConstant enumConstant ?
@@ -870,6 +864,12 @@ public final class DefaultJavaErrorFixProvider extends AbstractJavaErrorFixProvi
sink.accept(addModifierFix(anyMethodToImplement, PsiModifier.PUBLIC));
}
});
fix(CLASS_NO_ABSTRACT_METHOD, error -> {
if (error.psi() instanceof PsiClass aClass && !(aClass instanceof PsiAnonymousClass) && !aClass.isEnum()) {
return maybeAddModifierFix(aClass, PsiModifier.ABSTRACT);
}
return null;
});
fix(CLASS_REFERENCE_LIST_DUPLICATE,
error -> myFactory.createRemoveDuplicateExtendsAction(HighlightNamesUtil.formatClass(error.context())));
multi(CLASS_REFERENCE_LIST_INNER_PRIVATE, error -> List.of(