diff --git a/ui/html-view/html-view.android.ts b/ui/html-view/html-view.android.ts
index fdca0da27..8ac93fe1f 100644
--- a/ui/html-view/html-view.android.ts
+++ b/ui/html-view/html-view.android.ts
@@ -10,6 +10,14 @@ function onHtmlPropertyChanged(data: dependencyObservable.PropertyChangeData) {
}
if (types.isString(data.newValue)) {
+ // 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
+ var mask = 15;
+ if (data.newValue.search(/= 0) {
+ mask = 0;
+ }
+ view.android.setAutoLinkMask(mask);
view.android.setText(android.text.Html.fromHtml(data.newValue));
} else {
view.android.setText("");
@@ -30,5 +38,10 @@ export class HtmlView extends common.HtmlView {
public _createUI() {
this._android = new android.widget.TextView(this._context);
+ // This makes the html vwork
+ this._android.setLinksClickable(true);
+ this._android.setMovementMethod(android.text.method.LinkMovementMethod.getInstance());
+
}
+
}
\ No newline at end of file
diff --git a/ui/html-view/html-view.ios.ts b/ui/html-view/html-view.ios.ts
index 79001ff2d..ba42724e3 100644
--- a/ui/html-view/html-view.ios.ts
+++ b/ui/html-view/html-view.ios.ts
@@ -27,21 +27,24 @@ function onHtmlPropertyChanged(data: dependencyObservable.PropertyChangeData) {
global.moduleMerge(common, exports);
export class HtmlView extends common.HtmlView {
- private _ios: UILabel;
+ private _ios: UITextView;
constructor(options?: definition.Options) {
super(options);
+ this._ios = UITextView.new();
- this._ios = new UILabel();
- this._ios.userInteractionEnabled = true;
- this._ios.numberOfLines = 0;
+ this._ios.scrollEnabled = false;
+ this._ios.editable = false;
+ this._ios.selectable = true;
+ this._ios.userInteractionEnabled = true;
+ this._ios.dataDetectorTypes = UIDataDetectorTypes.UIDataDetectorTypeAll;
}
- get ios(): UILabel {
+ get ios(): UITextView {
return this._ios;
}
- get _nativeView(): UILabel {
+ get _nativeView(): UITextView {
return this._ios;
}