@nativescript-community/text 1.5.42 → 1.5.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.android.js +8 -6
- package/index.android.js.map +1 -1
- package/package.json +2 -2
- package/platforms/android/java/com/nativescript/text/Font.java +1 -2
- package/platforms/android/java/com/nativescript/text/FontSizeSpan.java +71 -0
- package/platforms/android/java/com/nativescript/text/HtmlToSpannedConverter.java +2 -3
- package/platforms/android/java/com/nativescript/text/TextView.java +1 -1
- package/platforms/android/java/com/nativescript/text/URLSpanClickListener.java +1 -1
- package/platforms/android/native-api-usage.json +2 -3
- package/typings/android.d.ts +1 -1
package/index.android.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Color, FormattedString,
|
1
|
+
import { Color, FormattedString, Span, Utils, knownFolders, path, profile } from '@nativescript/core';
|
2
2
|
import { Font } from '@nativescript/core/ui/styling/font';
|
3
3
|
import { getTransformedText } from '@nativescript/core/ui/text-base';
|
4
4
|
import { LightFormattedString } from './index-common';
|
@@ -52,11 +52,13 @@ function spanToNativeString(span, parent, parentView, maxFontSize, index = -1, d
|
|
52
52
|
text = getTransformedText(text, textTransform);
|
53
53
|
}
|
54
54
|
if (!density) {
|
55
|
-
if (!FONT_SIZE_FACTOR) {
|
56
|
-
|
57
|
-
}
|
55
|
+
// if (!FONT_SIZE_FACTOR) {
|
56
|
+
// FONT_SIZE_FACTOR = com.nativescript.text.Font.getFontSizeFactor(Utils.android.getApplicationContext()) / Screen.mainScreen.scale;
|
57
|
+
// }
|
58
58
|
// that means not for canvaslabel
|
59
|
-
density = FONT_SIZE_FACTOR;
|
59
|
+
// density = FONT_SIZE_FACTOR;
|
60
|
+
density = 1;
|
61
|
+
// console.log('text FONT_SIZE_FACTOR', FONT_SIZE_FACTOR, Screen.mainScreen.scale)
|
60
62
|
verticalTextAlignment = span.verticalAlignment || parent?.verticalAlignment;
|
61
63
|
}
|
62
64
|
let backgroundColor = span.backgroundColor || parent?.backgroundColor;
|
@@ -186,7 +188,7 @@ export function createSpannable(span, parentView, parent, maxFontSize) {
|
|
186
188
|
ssb = com.nativescript.text.Font.stringBuilderFromFormattedString(context, fontPath, parentView?.['fontFamily'] || null, `[${details}]`, span._ssb);
|
187
189
|
if (span.tappable) {
|
188
190
|
initializeClickableSpan();
|
189
|
-
ssb.setSpan(new ClickableSpan(span), 0, length, android.text.Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
191
|
+
ssb.setSpan(new ClickableSpan(span), 0, length, 33 /* android.text.Spanned.SPAN_EXCLUSIVE_EXCLUSIVE */);
|
190
192
|
}
|
191
193
|
}
|
192
194
|
return ssb;
|
package/index.android.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.android.js","sourceRoot":"../src/","sources":["index.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAa,eAAe,
|
1
|
+
{"version":3,"file":"index.android.js","sourceRoot":"../src/","sources":["index.android.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@nativescript-community/text",
|
3
|
-
"version": "1.5.
|
3
|
+
"version": "1.5.44",
|
4
4
|
"description": "Expands the capabilities of NativeScript's text property.",
|
5
5
|
"main": "./index",
|
6
6
|
"sideEffects": false,
|
@@ -30,5 +30,5 @@
|
|
30
30
|
},
|
31
31
|
"license": "Apache-2.0",
|
32
32
|
"readmeFilename": "README.md",
|
33
|
-
"gitHead": "
|
33
|
+
"gitHead": "2506a31fa9982b2dc8d3e7d13e9e2d0b4007fa44"
|
34
34
|
}
|
@@ -6,7 +6,6 @@ import android.graphics.Color;
|
|
6
6
|
import android.graphics.Typeface;
|
7
7
|
import android.os.Build;
|
8
8
|
import android.text.SpannableStringBuilder;
|
9
|
-
import android.text.style.AbsoluteSizeSpan;
|
10
9
|
import android.text.style.RelativeSizeSpan;
|
11
10
|
import android.text.style.BackgroundColorSpan;
|
12
11
|
import android.text.style.ForegroundColorSpan;
|
@@ -361,7 +360,7 @@ public class Font {
|
|
361
360
|
|
362
361
|
}
|
363
362
|
if (!Double.isNaN(fontSize)) {
|
364
|
-
ssb.setSpan(new
|
363
|
+
ssb.setSpan(new FontSizeSpan(context, fontSize.floatValue(), true), start, end,
|
365
364
|
android.text.Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
366
365
|
}
|
367
366
|
Double relativeSize = span.optDouble("relativeSize");
|
@@ -0,0 +1,71 @@
|
|
1
|
+
package com.nativescript.text;
|
2
|
+
|
3
|
+
import android.content.Context;
|
4
|
+
import android.text.ParcelableSpan;
|
5
|
+
import android.text.TextPaint;
|
6
|
+
import android.text.TextUtils;
|
7
|
+
import android.text.style.MetricAffectingSpan;
|
8
|
+
import android.util.Log;
|
9
|
+
|
10
|
+
public class FontSizeSpan extends MetricAffectingSpan {
|
11
|
+
|
12
|
+
private final float mSize;
|
13
|
+
private boolean mDip;
|
14
|
+
|
15
|
+
private Context mContext;
|
16
|
+
|
17
|
+
/**
|
18
|
+
* Set the text size to <code>size</code> physical pixels.
|
19
|
+
*/
|
20
|
+
public FontSizeSpan(Context context, float size) {
|
21
|
+
mContext = context;
|
22
|
+
mSize = size;
|
23
|
+
}
|
24
|
+
|
25
|
+
/**
|
26
|
+
* Set the text size to <code>size</code> physical pixels,
|
27
|
+
* or to <code>size</code> device-independent pixels if
|
28
|
+
* <code>dip</code> is true.
|
29
|
+
*/
|
30
|
+
public FontSizeSpan(Context context, float size, boolean dip) {
|
31
|
+
mContext = context;
|
32
|
+
mDip = dip;
|
33
|
+
mSize = size;
|
34
|
+
}
|
35
|
+
|
36
|
+
public float getSize() {
|
37
|
+
return mSize;
|
38
|
+
}
|
39
|
+
|
40
|
+
public boolean getDip() {
|
41
|
+
return mDip;
|
42
|
+
}
|
43
|
+
static float FONT_SIZE_FACTOR = -1.0f;
|
44
|
+
static float SCREEN_DENSITY = -1.0f;
|
45
|
+
private void setTextPaintSize(TextPaint ds) {
|
46
|
+
int flags = ds.getFlags();
|
47
|
+
// dont think we can cache this as it would change when display change on the phone
|
48
|
+
if (FONT_SIZE_FACTOR == -1) {
|
49
|
+
android.util.DisplayMetrics metrics = mContext.getResources().getDisplayMetrics();
|
50
|
+
SCREEN_DENSITY = metrics.density;
|
51
|
+
FONT_SIZE_FACTOR = android.util.TypedValue.applyDimension(android.util.TypedValue.COMPLEX_UNIT_SP, 1, metrics);
|
52
|
+
}
|
53
|
+
if (mDip && (flags & 2048) != 2048) {
|
54
|
+
// this case is for use with TextView
|
55
|
+
ds.setTextSize(mSize * FONT_SIZE_FACTOR);
|
56
|
+
} else {
|
57
|
+
// this case is for StaticLayout drawing in canvas
|
58
|
+
ds.setTextSize(mSize * FONT_SIZE_FACTOR / SCREEN_DENSITY);
|
59
|
+
}
|
60
|
+
}
|
61
|
+
|
62
|
+
@Override
|
63
|
+
public void updateDrawState(TextPaint ds) {
|
64
|
+
setTextPaintSize(ds);
|
65
|
+
}
|
66
|
+
|
67
|
+
@Override
|
68
|
+
public void updateMeasureState(TextPaint ds) {
|
69
|
+
setTextPaintSize(ds);
|
70
|
+
}
|
71
|
+
}
|
@@ -16,7 +16,6 @@ import android.text.Spannable;
|
|
16
16
|
import android.text.SpannableStringBuilder;
|
17
17
|
import android.text.Spanned;
|
18
18
|
import android.text.TextUtils;
|
19
|
-
import android.text.style.AbsoluteSizeSpan;
|
20
19
|
import android.text.style.ForegroundColorSpan;
|
21
20
|
import android.text.style.ImageSpan;
|
22
21
|
import android.text.style.ParagraphStyle;
|
@@ -472,7 +471,7 @@ class HtmlToSpannedConverter extends DefaultHandler {
|
|
472
471
|
needsFontSpan = true;
|
473
472
|
break;
|
474
473
|
case "font-size":
|
475
|
-
fontSize = Float.parseFloat(value.replace("px", "").replace("pt", "").trim())
|
474
|
+
fontSize = Float.parseFloat(value.replace("px", "").replace("pt", "").trim());
|
476
475
|
needsFontSpan = true;
|
477
476
|
break;
|
478
477
|
case "font-weight":
|
@@ -506,7 +505,7 @@ class HtmlToSpannedConverter extends DefaultHandler {
|
|
506
505
|
}
|
507
506
|
}
|
508
507
|
if (fontSize != 0) {
|
509
|
-
result.add(new
|
508
|
+
result.add(new FontSizeSpan(this.context, fontSize, true));
|
510
509
|
}
|
511
510
|
if (color != null) {
|
512
511
|
result.add(new ForegroundColorSpan(Color.parseColor(color)));
|
package/typings/android.d.ts
CHANGED
@@ -50,7 +50,7 @@ declare namespace com {
|
|
50
50
|
|
51
51
|
export class TextView extends androidx.appcompat.widget.AppCompatTextView {
|
52
52
|
urlSpanClickListener: URLSpanClickListener;
|
53
|
-
static attributedStringHasSpan(attributeString: android.text.Spannable, spanClass:
|
53
|
+
static attributedStringHasSpan(attributeString: android.text.Spannable, spanClass: java.lang.Class<any>): boolean;
|
54
54
|
}
|
55
55
|
}
|
56
56
|
}
|