diff options
| author | Tor Norbye <tnorbye@google.com> | 2011-10-04 09:42:44 -0700 |
|---|---|---|
| committer | Tor Norbye <tnorbye@google.com> | 2011-10-04 09:49:24 -0700 |
| commit | 6ebe3b1efa485d9183fb9ce58f8958886fa5be6d (patch) | |
| tree | 4c7e2648d104b53115888eb96607065b20a0e8d3 | |
| parent | ad272174e7bac4a2b285ae239db2914bd5538809 (diff) | |
| download | sdk-6ebe3b1efa485d9183fb9ce58f8958886fa5be6d.zip sdk-6ebe3b1efa485d9183fb9ce58f8958886fa5be6d.tar.gz sdk-6ebe3b1efa485d9183fb9ce58f8958886fa5be6d.tar.bz2 | |
Formatting fix: ensure no double blank new lines between elements
Change-Id: Id41a5543b4e4639eb8c9943463587168c90f9ff4
2 files changed, 27 insertions, 0 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinter.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinter.java index f473671..e2c0780 100644 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinter.java +++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinter.java @@ -690,6 +690,10 @@ public class XmlPrettyPrinter { } private boolean newlineBeforeElementOpen(Element element, int depth) { + if (hasBlankLineAbove()) { + return false; + } + if (mPrefs.removeEmptyLines || depth <= 0) { return false; } @@ -797,6 +801,10 @@ public class XmlPrettyPrinter { } private boolean newlineAfterElementClose(Element element, int depth) { + if (hasBlankLineAbove()) { + return false; + } + return element.getParentNode().getNodeType() == Node.ELEMENT_NODE && !keepElementAsSingleLine(depth - 1, (Element) element.getParentNode()); } diff --git a/eclipse/plugins/com.android.ide.eclipse.tests/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinterTest.java b/eclipse/plugins/com.android.ide.eclipse.tests/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinterTest.java index 7436b2f..3664e70 100644 --- a/eclipse/plugins/com.android.ide.eclipse.tests/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinterTest.java +++ b/eclipse/plugins/com.android.ide.eclipse.tests/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlPrettyPrinterTest.java @@ -25,6 +25,7 @@ import org.w3c.dom.NodeList; import junit.framework.TestCase; +@SuppressWarnings("javadoc") public class XmlPrettyPrinterTest extends TestCase { @Override protected void setUp() throws Exception { @@ -533,4 +534,22 @@ public class XmlPrettyPrinterTest extends TestCase { "\n" + "</foo>"); } + + public void testCommentHandling2() throws Exception { + checkFormat( + XmlFormatPreferences.create(), XmlFormatStyle.LAYOUT, + "<foo >\n" + + " <!-- multi -->\n" + + "\n" + + " <bar />\n" + + "</foo>", + + "<foo >\n" + + "\n" + + " <!-- multi -->\n" + + "\n" + + " <bar />\n" + + "\n" + + "</foo>"); + } } |
