Expandable indent storing additional block, which indent is used as min indent marker...
authorYaroslav Lepenkin <yaroslav.lepenkin@jetbrains.com>
Wed, 17 Jun 2015 09:53:37 +0000 (12:53 +0300)
committerYaroslav Lepenkin <yaroslav.lepenkin@jetbrains.com>
Wed, 2 Sep 2015 09:35:07 +0000 (12:35 +0300)
commit03a72e58c33bc50c82441568dd094a3bfba488c5
tree1f7c8f43845edcf0277d1f50a76aa92453765ebd
parent6c3ee1c84b970771bffc203b981918dc58116f3f
Expandable indent storing additional block, which indent is used as min indent marker for all children of blocks corresponding to particular expandable indent.

If all blocks corresponding to current expandable indent has no linefeeds in their whitespaces, if one of these blocks has child which has indent less or equal than min marker indent, than indent is expanded.

Total summary:
Indent is expanded, if any of blocks with these indent is located on new line, or when there is some block's children with indent less or equal than min marker indent.
java/java-impl/src/com/intellij/psi/formatter/java/AbstractJavaBlock.java
platform/lang-api/src/com/intellij/formatting/Indent.java
platform/lang-api/src/com/intellij/formatting/IndentFactory.java
platform/lang-impl/src/com/intellij/formatting/ExpandableIndent.java
platform/lang-impl/src/com/intellij/formatting/FormatProcessor.java
platform/lang-impl/src/com/intellij/formatting/FormatterImpl.java
platform/lang-impl/src/com/intellij/formatting/InitialInfoBuilder.java