diff --git a/src/com/android/settings/overlay/SupportFeatureProvider.java b/src/com/android/settings/overlay/SupportFeatureProvider.java
index f211c12..506d1bc 100644
--- a/src/com/android/settings/overlay/SupportFeatureProvider.java
+++ b/src/com/android/settings/overlay/SupportFeatureProvider.java
@@ -18,6 +18,7 @@
 
 import android.accounts.Account;
 import android.annotation.IntDef;
+import android.annotation.StringRes;
 import android.app.Activity;
 import android.content.Context;
 import android.content.Intent;
@@ -141,5 +142,6 @@
     /**
      * Returns the string for the disclaimer in the Support dialog
      */
-    String getDisclaimerString();
+    @StringRes
+    int getDisclaimerStringResId();
 }
diff --git a/src/com/android/settings/support/SupportDisclaimerDialogFragment.java b/src/com/android/settings/support/SupportDisclaimerDialogFragment.java
index 6ccd23a..f7149f7 100644
--- a/src/com/android/settings/support/SupportDisclaimerDialogFragment.java
+++ b/src/com/android/settings/support/SupportDisclaimerDialogFragment.java
@@ -25,7 +25,6 @@
 import android.os.Bundle;
 import android.text.Spannable;
 import android.text.TextPaint;
-import android.text.method.LinkMovementMethod;
 import android.text.style.URLSpan;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -67,11 +66,10 @@
         final View content = LayoutInflater.from(builder.getContext())
                 .inflate(R.layout.support_disclaimer_content, null);
         final TextView disclaimer = (TextView) content.findViewById(R.id.support_disclaimer_text);
-        disclaimer.setMovementMethod(LinkMovementMethod.getInstance());
         final Activity activity = getActivity();
         final SupportFeatureProvider supportFeatureProvider =
                 FeatureFactory.getFactory(activity).getSupportFeatureProvider(activity);
-        disclaimer.setText(supportFeatureProvider.getDisclaimerString());
+        disclaimer.setText(supportFeatureProvider.getDisclaimerStringResId());
         stripUnderlines((Spannable) disclaimer.getText());
         return builder
                 .setView(content)
