make class abstract too on making method abstract (IDEA-23358)

This commit is contained in:
Bas Leijdekkers
2017-01-24 14:41:56 +01:00
parent 2de8befce8
commit acc75fbbff
2 changed files with 9 additions and 2 deletions
@@ -197,6 +197,13 @@ public class ModifierFix extends LocalQuickFixAndIntentionActionOnPsiElement {
ApplicationManager.getApplication().runWriteAction(() -> {
changeModifierList(modifierList);
if (myShouldHave && owner instanceof PsiMethod && PsiModifier.ABSTRACT.equals(myModifier)) {
final PsiMethod method = (PsiMethod)owner;
final PsiClass aClass = method.getContainingClass();
if (aClass != null && !aClass.hasModifierProperty(PsiModifier.ABSTRACT)) {
changeModifierList(aClass.getModifierList());
}
}
UndoUtil.markPsiFileForUndo(containingFile);
});
}
@@ -1,6 +1,6 @@
// "Make 'f' abstract" "true"
import java.io.*;
class a {
<caret>public abstract void f();
abstract class a {
public abstract void f();
}