From 5e845dc4e3f89cf849f6f8f022c8b051443c085f Mon Sep 17 00:00:00 2001 From: "Rustam.Vishnyakov" Date: Fri, 10 Feb 2012 12:20:02 +0400 Subject: [PATCH] inline.tabs.enabled property for formatter backwards compatibility (keeps tabs inside line, not only at start) --- .../src/com/intellij/formatting/InitialInfoBuilder.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/platform/lang-impl/src/com/intellij/formatting/InitialInfoBuilder.java b/platform/lang-impl/src/com/intellij/formatting/InitialInfoBuilder.java index 80be96c9f1a5..68f57acdc8f5 100644 --- a/platform/lang-impl/src/com/intellij/formatting/InitialInfoBuilder.java +++ b/platform/lang-impl/src/com/intellij/formatting/InitialInfoBuilder.java @@ -61,6 +61,8 @@ class InitialInfoBuilder { private LeafBlockWrapper myLastTokenBlock; private SpacingImpl myCurrentSpaceProperty; private ReadOnlyBlockInformationProvider myReadOnlyBlockInformationProvider; + + private final static boolean INLINE_TABS_ENABLED = "true".equalsIgnoreCase(System.getProperty("inline.tabs.enabled")); private InitialInfoBuilder(final FormattingDocumentModel model, final FormatTextRanges affectedRanges, @@ -270,7 +272,9 @@ class InitialInfoBuilder { final int index, Block parentBlock) { - myCurrentWhiteSpace.setForceSkipTabulationsUsage(!myCurrentWhiteSpace.containsLineFeeds()); + if (!INLINE_TABS_ENABLED && !myCurrentWhiteSpace.containsLineFeeds()) { + myCurrentWhiteSpace.setForceSkipTabulationsUsage(true); + } final LeafBlockWrapper info = new LeafBlockWrapper(rootBlock, parent, myCurrentWhiteSpace, myModel, myOptions, myPreviousBlock, readOnly); info.setDebugInfo("target block's class: " + rootBlock.getClass());