[java-intentions] QualifyWithThisFix, QualifySuperArgumentFix, QualifyThisArgumentFix: preview-friendly

Also suppress inspection for batch-only fix in CanBeFinalInspection

GitOrigin-RevId: 057700463f96bff1f33b2e00ab48e9cb357a2383
This commit is contained in:
Tagir Valeev
2022-06-30 08:49:32 +00:00
committed by intellij-monorepo-bot
parent a3af40138a
commit 3b01ccb40d
4 changed files with 23 additions and 0 deletions
@@ -17,17 +17,24 @@
package com.intellij.codeInsight.daemon.impl.quickfix;
import com.intellij.codeInsight.daemon.impl.HighlightInfo;
import com.intellij.codeInsight.intention.FileModifier;
import com.intellij.psi.*;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.refactoring.util.RefactoringChangeUtil;
import com.intellij.util.IncorrectOperationException;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class QualifySuperArgumentFix extends QualifyThisOrSuperArgumentFix {
public QualifySuperArgumentFix(@NotNull PsiExpression expression, @NotNull PsiClass psiClass) {
super(expression, psiClass);
}
@Override
public @Nullable FileModifier getFileModifierForPreview(@NotNull PsiFile target) {
return new QualifySuperArgumentFix(PsiTreeUtil.findSameElementInCopy(myExpression, target), myPsiClass);
}
@Override
protected String getQualifierText() {
return PsiKeyword.SUPER;
@@ -17,6 +17,7 @@
package com.intellij.codeInsight.daemon.impl.quickfix;
import com.intellij.codeInsight.daemon.impl.HighlightInfo;
import com.intellij.codeInsight.intention.FileModifier;
import com.intellij.openapi.util.TextRange;
import com.intellij.psi.*;
import com.intellij.psi.infos.CandidateInfo;
@@ -25,6 +26,7 @@ import com.intellij.psi.util.PsiUtil;
import com.intellij.psi.util.TypeConversionUtil;
import com.intellij.refactoring.util.RefactoringChangeUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.HashSet;
import java.util.Set;
@@ -34,6 +36,11 @@ public class QualifyThisArgumentFix extends QualifyThisOrSuperArgumentFix{
super(expression, psiClass);
}
@Override
public @Nullable FileModifier getFileModifierForPreview(@NotNull PsiFile target) {
return new QualifyThisArgumentFix(PsiTreeUtil.findSameElementInCopy(myExpression, target), myPsiClass);
}
@Override
protected String getQualifierText() {
return PsiKeyword.THIS;
@@ -15,14 +15,17 @@
*/
package com.intellij.codeInsight.daemon.impl.quickfix;
import com.intellij.codeInsight.intention.FileModifier;
import com.intellij.codeInsight.intention.IntentionAction;
import com.intellij.java.analysis.JavaAnalysisBundle;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
import com.intellij.psi.*;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.refactoring.util.RefactoringChangeUtil;
import com.intellij.util.IncorrectOperationException;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class QualifyWithThisFix implements IntentionAction {
private final PsiClass myContainingClass;
@@ -33,6 +36,11 @@ public class QualifyWithThisFix implements IntentionAction {
myExpression = expression;
}
@Override
public @Nullable FileModifier getFileModifierForPreview(@NotNull PsiFile target) {
return new QualifyWithThisFix(myContainingClass, PsiTreeUtil.findSameElementInCopy(myExpression, target));
}
@NotNull
@Override
public String getText() {
@@ -195,6 +195,7 @@ public class CanBeFinalInspection extends GlobalJavaBatchInspectionTool {
}
private static class AcceptSuggested implements LocalQuickFix {
@SafeFieldForPreview
private final RefManager myManager;
AcceptSuggested(final RefManager manager) {