diff options
author | Roman Birg <roman@cyngn.com> | 2015-04-16 16:54:23 -0700 |
---|---|---|
committer | Abhisek Devkota <ciwrl@cyanogenmod.com> | 2016-02-15 11:53:56 -0800 |
commit | 5614e2fb653bec4eb748d212de699e0353892e2f (patch) | |
tree | 9463f762458b7060c37ac138ef63a0cc39904a0c /src/com/android/settings/LegalSettings.java | |
parent | 994fb0bf6ff5d1179d1fee0460428a7fa63e32e9 (diff) | |
download | packages_apps_Settings-5614e2fb653bec4eb748d212de699e0353892e2f.zip packages_apps_Settings-5614e2fb653bec4eb748d212de699e0353892e2f.tar.gz packages_apps_Settings-5614e2fb653bec4eb748d212de699e0353892e2f.tar.bz2 |
Settings: fix 'CyanogenMod legal' link
No more WebViews in priv-apps, so open it up in the browser.
CYNGNOS-1895
Change-Id: I263ccc0509e275d17512528deb606341d58e7a0d
Signed-off-by: Roman Birg <roman@cyngn.com>
Diffstat (limited to 'src/com/android/settings/LegalSettings.java')
-rw-r--r-- | src/com/android/settings/LegalSettings.java | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/com/android/settings/LegalSettings.java b/src/com/android/settings/LegalSettings.java index cd91d20..a28fae5 100644 --- a/src/com/android/settings/LegalSettings.java +++ b/src/com/android/settings/LegalSettings.java @@ -22,9 +22,14 @@ import android.content.Intent; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.net.Uri; import android.os.Bundle; +import android.os.SystemProperties; +import android.preference.Preference; import android.preference.PreferenceGroup; +import android.preference.PreferenceScreen; import android.provider.SearchIndexableResource; +import android.util.Log; import com.android.internal.logging.MetricsLogger; import com.android.settings.search.BaseSearchIndexProvider; @@ -36,10 +41,13 @@ import java.util.List; public class LegalSettings extends SettingsPreferenceFragment implements Indexable { + private static final String LOG_TAG = "LegalSettings"; private static final String KEY_TERMS = "terms"; private static final String KEY_LICENSE = "license"; private static final String KEY_COPYRIGHT = "copyright"; private static final String KEY_WEBVIEW_LICENSE = "webview_license"; + private static final String PROPERTY_CMLICENSE_URL = "ro.cmlegal.url"; + private static final String KEY_CM_LICENSE = "cmlicense"; public void onCreate(Bundle icicle) { super.onCreate(icicle); @@ -59,6 +67,22 @@ public class LegalSettings extends SettingsPreferenceFragment implements Indexab } @Override + public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) { + if (preference.getKey().equals(KEY_CM_LICENSE)) { + String userCMLicenseUrl = SystemProperties.get(PROPERTY_CMLICENSE_URL); + final Intent intent = new Intent(Intent.ACTION_VIEW); + intent.addCategory(Intent.CATEGORY_DEFAULT); + intent.setData(Uri.parse(userCMLicenseUrl)); + try { + startActivity(intent); + } catch (Exception e) { + Log.e(LOG_TAG, "Unable to start activity " + intent.toString()); + } + } + return super.onPreferenceTreeClick(preferenceScreen, preference); + } + + @Override protected int getMetricsCategory() { return MetricsLogger.ABOUT_LEGAL_SETTINGS; } |