diff --git a/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt b/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt index 05283b10b7d6..8f99cbcdd0f4 100644 --- a/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt +++ b/platform/lang-impl/src/com/intellij/codeInspection/incorrectFormatting/IncorrectFormattingFix.kt @@ -6,6 +6,7 @@ import com.intellij.codeInsight.intention.preview.IntentionPreviewInfo.EMPTY import com.intellij.codeInspection.LocalQuickFix import com.intellij.codeInspection.ProblemDescriptor import com.intellij.lang.LangBundle +import com.intellij.modcommand.* import com.intellij.openapi.editor.RangeMarker import com.intellij.openapi.project.Project import com.intellij.profile.codeInspection.InspectionProjectProfileManager @@ -47,13 +48,14 @@ class ReplaceQuickFix(val replacements: List>) : @ApiStatus.Internal -object ReformatQuickFix : LocalQuickFix { +object ReformatQuickFix : ModCommandQuickFix() { override fun getFamilyName(): @Nls String = LangBundle.message("inspection.incorrect.formatting.fix.reformat") - override fun applyFix(project: Project, descriptor: ProblemDescriptor) { - val innerFile = descriptor.psiElement.containingFile - val file = innerFile.viewProvider.run { getPsi(baseLanguage) } - CodeStyleManager.getInstance(project).reformatText(file, 0, file.textLength) + override fun perform(project: Project, descriptor: ProblemDescriptor): ModCommand { + return ModCommand.psiUpdate(descriptor.psiElement.containingFile) { mutableFile: PsiFile, _: ModPsiUpdater -> + val file = mutableFile.viewProvider.getPsi(mutableFile.viewProvider.baseLanguage) + CodeStyleManager.getInstance(project).reformatText(file, 0, file.textLength) + } } }