mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[formatter] formatAroundRange must use file indents
This commit is contained in:
@@ -18,8 +18,8 @@ package com.intellij.formatting;
|
||||
|
||||
import com.intellij.openapi.application.Application;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
import com.intellij.openapi.util.TextRange;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
|
||||
import com.intellij.util.IncorrectOperationException;
|
||||
@@ -113,8 +113,10 @@ public abstract class FormatterEx{
|
||||
final CommonCodeStyleSettings.IndentOptions indentOptions,
|
||||
final TextRange rangeToAdjust);
|
||||
|
||||
public abstract void formatAroundRange(final FormattingModel model, final CodeStyleSettings settings,
|
||||
final TextRange textRange, final FileType fileType);
|
||||
public abstract void formatAroundRange(final FormattingModel model,
|
||||
final CodeStyleSettings settings,
|
||||
final PsiFile file,
|
||||
final TextRange textRange);
|
||||
|
||||
public abstract void adjustTextRange(FormattingModel model,
|
||||
CodeStyleSettings settings,
|
||||
|
||||
@@ -22,7 +22,6 @@ import com.intellij.openapi.application.Application;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
import com.intellij.openapi.progress.ProgressManager;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Computable;
|
||||
@@ -393,17 +392,17 @@ public class FormatterImpl extends FormatterEx
|
||||
}
|
||||
|
||||
@Override
|
||||
public void formatAroundRange(final FormattingModel model,
|
||||
final CodeStyleSettings settings,
|
||||
final TextRange textRange,
|
||||
final FileType fileType) {
|
||||
public void formatAroundRange(FormattingModel model,
|
||||
CodeStyleSettings settings,
|
||||
PsiFile file,
|
||||
TextRange textRange) {
|
||||
disableFormatting();
|
||||
try {
|
||||
validateModel(model);
|
||||
final FormattingDocumentModel documentModel = model.getDocumentModel();
|
||||
final Block block = model.getRootBlock();
|
||||
final FormatProcessor processor = buildProcessorAndWrapBlocks(
|
||||
documentModel, block, settings, settings.getIndentOptions(fileType), null
|
||||
documentModel, block, settings, settings.getIndentOptionsByFile(file), null
|
||||
);
|
||||
LeafBlockWrapper tokenBlock = processor.getFirstTokenBlock();
|
||||
while (tokenBlock != null) {
|
||||
|
||||
+1
-1
@@ -319,7 +319,7 @@ public class CodeStyleManagerImpl extends CodeStyleManager {
|
||||
final FormattingModelBuilder builder = LanguageFormatting.INSTANCE.forContext(containingFile);
|
||||
if (builder != null) {
|
||||
final FormattingModel model = CoreFormatterUtil.buildModel(builder, containingFile, getSettings(), FormattingMode.REFORMAT);
|
||||
FormatterEx.getInstanceEx().formatAroundRange(model, getSettings(), textRange, containingFile.getFileType());
|
||||
FormatterEx.getInstanceEx().formatAroundRange(model, getSettings(), containingFile, textRange);
|
||||
}
|
||||
|
||||
adjustLineIndent(containingFile, textRange);
|
||||
|
||||
Reference in New Issue
Block a user