mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEADEV-434: Followup. To work as well with KEEP_SIMPLE_BLOCKS_IN_ONE_LINE=true
This commit is contained in:
@@ -11,6 +11,8 @@ import com.intellij.openapi.editor.ex.EditorEx;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.codeStyle.CodeStyleManager;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.util.IncorrectOperationException;
|
||||
import com.intellij.util.text.CharArrayUtil;
|
||||
@@ -113,8 +115,12 @@ public class SmartEnterProcessor {
|
||||
caretOffset = CharArrayUtil.shiftBackward(chars, caretOffset - 1, " \t") + 1;
|
||||
if (CharArrayUtil.regionMatches(chars, caretOffset - "{}".length(), "{}")) {
|
||||
commit();
|
||||
final CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(myProject);
|
||||
final boolean old = settings.KEEP_SIMPLE_BLOCKS_IN_ONE_LINE;
|
||||
settings.KEEP_SIMPLE_BLOCKS_IN_ONE_LINE = false;
|
||||
PsiElement elt = PsiTreeUtil.getParentOfType(myPsiFile.findElementAt(caretOffset - 1), PsiCodeBlock.class);
|
||||
reformat(elt);
|
||||
settings.KEEP_SIMPLE_BLOCKS_IN_ONE_LINE = old;
|
||||
myEditor.getCaretModel().moveToOffset(caretOffset - 1);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user