MCPcopy Create free account
hub / github.com/M66B/FairEmail / clone

Method clone

app/src/main/java/eu/faircode/email/StyleHelper.java:1663–1688  ·  view source on GitHub ↗
(Object span, Class<T> type, Context context)

Source from the content-addressed store, hash-verified

1661 }
1662
1663 static <T extends ParagraphStyle> T clone(Object span, Class<T> type, Context context) {
1664 if (QuoteSpan.class.isAssignableFrom(type)) {
1665 QuoteSpan q = (QuoteSpan) span;
1666 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P)
1667 return (T) new QuoteSpan(q.getColor());
1668 else
1669 return (T) new QuoteSpan(q.getColor(), q.getStripeWidth(), q.getGapWidth());
1670 } else if (NumberSpan.class.isAssignableFrom(type)) {
1671 NumberSpan n = (NumberSpan) span;
1672 int bulletGap = context.getResources().getDimensionPixelSize(R.dimen.bullet_gap_size);
1673 int bulletIndent = context.getResources().getDimensionPixelSize(R.dimen.bullet_indent_size);
1674 int colorAccent = Helper.resolveColor(context, androidx.appcompat.R.attr.colorAccent);
1675 return (T) new NumberSpan(bulletIndent, bulletGap, colorAccent, n.getTextSize(), n.getLevel(), n.getIndex() + 1);
1676 } else if (BulletSpanEx.class.isAssignableFrom(type)) {
1677 BulletSpanEx b = (BulletSpanEx) span;
1678 int bulletIndent = context.getResources().getDimensionPixelSize(R.dimen.bullet_indent_size);
1679 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) {
1680 int colorAccent = Helper.resolveColor(context, androidx.appcompat.R.attr.colorAccent);
1681 int bulletGap = context.getResources().getDimensionPixelSize(R.dimen.bullet_gap_size);
1682 return (T) new BulletSpanEx(bulletIndent, bulletGap, colorAccent, b.getLevel());
1683 } else
1684 return (T) new BulletSpanEx(bulletIndent, b.getGapWidth(), b.getColor(), b.getBulletRadius(), b.getLevel());
1685
1686 } else
1687 throw new IllegalArgumentException(type.getName());
1688 }
1689
1690 static Integer getMaxListLevel(Editable edit, int start, int end) {
1691 Integer maxLevel = null;

Callers 2

afterTextChangedMethod · 0.95
setSpanMethod · 0.95

Calls 8

resolveColorMethod · 0.95
getTextSizeMethod · 0.95
getLevelMethod · 0.95
getIndexMethod · 0.95
getLevelMethod · 0.95
getNameMethod · 0.65
getColorMethod · 0.45
getResourcesMethod · 0.45

Tested by

no test coverage detected