Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 0 additions & 29 deletions .idea/codeStyles/Project.xml

This file was deleted.

2 changes: 1 addition & 1 deletion HtmlSpanner/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'net.sourceforge.htmlcleaner:htmlcleaner:2.16'
implementation 'com.osbcp.cssparser:cssparser:1.5'
implementation 'io.reactivex:rxjava:1.2.10'
implementation 'io.reactivex:rxjava:1.3.8'
implementation 'io.reactivex:rxandroid:1.2.1'
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ public class TableHandler extends TagNodeHandler {
private int textColor = Color.BLACK;

private static final int PADDING = 5;
private boolean hasHeader;

/**
* Sets how wide the table should be.
Expand Down Expand Up @@ -116,6 +117,7 @@ private void readNode(Object node, Table table) {
}

if (tagNode.getName().equals("th")) {
hasHeader = true;
Spanned result = this.getSpanner().fromTagNode(tagNode, null);
table.addCell(result);
return;
Expand Down Expand Up @@ -192,11 +194,12 @@ public void handleTagNode(TagNode node, SpannableStringBuilder builder,
List<Spanned> row = table.getRows().get(i);
builder.append("\uFFFC");

TableRowDrawable drawable = new TableRowDrawable(row, table.isDrawBorder());
TableRowDrawable drawable = new TableRowDrawable(row, table.isDrawBorder(), i == 0 && hasHeader ? Alignment.ALIGN_CENTER : Alignment.ALIGN_NORMAL);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),
drawable.getIntrinsicHeight());

builder.setSpan(new ImageSpan(drawable), start + i, builder.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
int index = i == 0 ? start : builder.length() - 1;
builder.setSpan(new ImageSpan(drawable), index, builder.length(),Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
builder.append("\n");
}

Expand All @@ -205,7 +208,7 @@ public void handleTagNode(TagNode node, SpannableStringBuilder builder,
the last row would appear detached.
*/
builder.append("\uFFFC");
Drawable drawable = new TableRowDrawable(new ArrayList<Spanned>(), table.isDrawBorder());
Drawable drawable = new TableRowDrawable(new ArrayList<Spanned>(), table.isDrawBorder(), Alignment.ALIGN_NORMAL);
drawable.setBounds(0, 0, tableWidth, 1);

builder.setSpan(new ImageSpan(drawable), builder.length() -1, builder.length(),
Expand All @@ -231,15 +234,17 @@ public Alignment getAlignment() {
*/
private class TableRowDrawable extends Drawable {

private final Alignment alignment;
private List<Spanned> tableRow;

private int rowHeight;
private boolean paintBorder;

public TableRowDrawable(List<Spanned> tableRow, boolean paintBorder) {
public TableRowDrawable(List<Spanned> tableRow, boolean paintBorder, Alignment alignment) {
this.tableRow = tableRow;
this.rowHeight = calculateRowHeight(tableRow);
this.paintBorder = paintBorder;
this.alignment = alignment;
}

@Override
Expand Down Expand Up @@ -271,7 +276,7 @@ public void draw(Canvas canvas) {

StaticLayout layout = new StaticLayout(tableRow.get(i),
getTextPaint(), (columnWidth - 2 * PADDING),
Alignment.ALIGN_NORMAL, 1f, 0f, true);
alignment, 1f, 0f, true);

canvas.translate(offset + PADDING, 0);
layout.draw(canvas);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,6 @@ public void drawBackground(Canvas c, Paint p,
p.setStrokeWidth( strokeWidth );
right -= strokeWidth;

p.setStyle(Paint.Style.STROKE);

if ( start <= this.start ) {
Log.d("BorderSpan", "Drawing first line");
c.drawLine(left, top, right, top, p);
Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
ext.kotlin_version = '1.2.51'
ext.kotlin_version = '1.3.31'
repositories {
google()
jcenter()
Expand Down