(Object span, Class<T> type, Context context)
| 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; |
no test coverage detected