Fix missing subsequent table-blocks spacing

This commit is contained in:
Dimitry Ivanov 2019-08-24 13:22:44 +03:00
parent 6a06e56c1c
commit b3e7749c7a
2 changed files with 14 additions and 6 deletions

View File

@ -8,7 +8,7 @@ android.enableJetifier=true
android.enableBuildCache=true android.enableBuildCache=true
android.buildCacheDir=build/pre-dex-cache android.buildCacheDir=build/pre-dex-cache
VERSION_NAME=4.1.0 VERSION_NAME=4.1.1-SNAPSHOT
GROUP=io.noties.markwon GROUP=io.noties.markwon
POM_DESCRIPTION=Markwon markdown for Android POM_DESCRIPTION=Markwon markdown for Android

View File

@ -6,6 +6,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import org.commonmark.ext.gfm.tables.TableBlock;
import org.commonmark.ext.gfm.tables.TableBody; import org.commonmark.ext.gfm.tables.TableBody;
import org.commonmark.ext.gfm.tables.TableCell; import org.commonmark.ext.gfm.tables.TableCell;
import org.commonmark.ext.gfm.tables.TableHead; import org.commonmark.ext.gfm.tables.TableHead;
@ -115,19 +116,26 @@ public class TablePlugin extends AbstractMarkwonPlugin {
void configure(@NonNull MarkwonVisitor.Builder builder) { void configure(@NonNull MarkwonVisitor.Builder builder) {
builder builder
.on(TableBody.class, new MarkwonVisitor.NodeVisitor<TableBody>() { // @since 4.1.1-SNAPSHOT we use TableBlock instead of TableBody to add new lines
.on(TableBlock.class, new MarkwonVisitor.NodeVisitor<TableBlock>() {
@Override @Override
public void visit(@NonNull MarkwonVisitor visitor, @NonNull TableBody tableBody) { public void visit(@NonNull MarkwonVisitor visitor, @NonNull TableBlock tableBlock) {
visitor.visitChildren(tableBody); visitor.visitChildren(tableBlock);
tableRows = 0;
if (visitor.hasNext(tableBody)) { if (visitor.hasNext(tableBlock)) {
visitor.ensureNewLine(); visitor.ensureNewLine();
visitor.forceNewLine(); visitor.forceNewLine();
} }
} }
}) })
.on(TableBody.class, new MarkwonVisitor.NodeVisitor<TableBody>() {
@Override
public void visit(@NonNull MarkwonVisitor visitor, @NonNull TableBody tableBody) {
visitor.visitChildren(tableBody);
tableRows = 0;
}
})
.on(TableRow.class, new MarkwonVisitor.NodeVisitor<TableRow>() { .on(TableRow.class, new MarkwonVisitor.NodeVisitor<TableRow>() {
@Override @Override
public void visit(@NonNull MarkwonVisitor visitor, @NonNull TableRow tableRow) { public void visit(@NonNull MarkwonVisitor visitor, @NonNull TableRow tableRow) {