Make privacy policy link clickable in sync settings.

Bug: 19361223
Change-Id: I83128d771bf5214a446afd6a3d5244a184d0a4a8
main
Chieu Nguyen 2015-03-05 15:22:22 -08:00
parent 38b9bffa3f
commit c4f6a8dcd4
1 changed files with 15 additions and 1 deletions

View File

@ -22,6 +22,7 @@ import static com.android.inputmethod.latin.settings.LocalSettingsConstants.PREF
import android.app.AlertDialog; import android.app.AlertDialog;
import android.content.Context; import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.DialogInterface.OnShowListener;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.res.Resources; import android.content.res.Resources;
import android.os.AsyncTask; import android.os.AsyncTask;
@ -32,7 +33,9 @@ import android.preference.Preference.OnPreferenceClickListener;
import android.preference.SwitchPreference; import android.preference.SwitchPreference;
import android.preference.TwoStatePreference; import android.preference.TwoStatePreference;
import android.text.TextUtils; import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.widget.ListView; import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import com.android.inputmethod.annotations.UsedForTesting; import com.android.inputmethod.annotations.UsedForTesting;
@ -363,7 +366,8 @@ public final class AccountsSettingsFragment extends SubScreenFragment {
/** /**
* Listens to events when user clicks on "Enable sync" feature. * Listens to events when user clicks on "Enable sync" feature.
*/ */
class EnableSyncClickListener implements Preference.OnPreferenceClickListener { class EnableSyncClickListener implements OnShowListener, Preference.OnPreferenceClickListener {
// TODO(cvnguyen): Write tests.
@Override @Override
public boolean onPreferenceClick(final Preference preference) { public boolean onPreferenceClick(final Preference preference) {
final TwoStatePreference syncPreference = (TwoStatePreference) preference; final TwoStatePreference syncPreference = (TwoStatePreference) preference;
@ -393,9 +397,19 @@ public final class AccountsSettingsFragment extends SubScreenFragment {
}) })
.setNegativeButton(R.string.cloud_sync_cancel, null) .setNegativeButton(R.string.cloud_sync_cancel, null)
.create(); .create();
optInDialog.setOnShowListener(this);
optInDialog.show(); optInDialog.show();
} }
return true; return true;
} }
@Override
public void onShow(DialogInterface dialog) {
TextView messageView = (TextView) ((AlertDialog) dialog).findViewById(
android.R.id.message);
if (messageView != null) {
messageView.setMovementMethod(LinkMovementMethod.getInstance());
}
}
} }
} }