import {
HtmlViewBase, htmlProperty
} from "./html-view-common";
export * from "./html-view-common";
export class HtmlView extends HtmlViewBase {
nativeView: android.widget.TextView;
public createNativeView() {
const textView = new android.widget.TextView(this._context);
// This makes the html work
textView.setLinksClickable(true);
textView.setMovementMethod(android.text.method.LinkMovementMethod.getInstance());
return textView;
}
[htmlProperty.getDefault](): string {
return "";
}
[htmlProperty.setNative](value: string) {
// If the data.newValue actually has a in it; we need to disable autolink mask
// it internally disables the coloring, but then the links won't work.. So to support both
// styles of links (html and just text based) we have to manually enable/disable the autolink mask
let mask = 15;
if (value.search(/= 0) {
mask = 0;
}
this.nativeView.setAutoLinkMask(mask);
this.nativeView.setText(android.text.Html.fromHtml(value));
}
}