diff options
author | Robert Greenwalt <robdroid@android.com> | 2010-04-19 12:22:48 -0700 |
---|---|---|
committer | Robert Greenwalt <robdroid@android.com> | 2010-04-19 12:22:48 -0700 |
commit | 4c3b2f0cf062b38a6e380cc15ff8dc9abdca518b (patch) | |
tree | 11147ea1f71db3ee37224b3142a876eeb4450dd6 | |
parent | ea87b6d75cf04051b327c89338951c7d1377c16f (diff) | |
download | packages_apps_settings-4c3b2f0cf062b38a6e380cc15ff8dc9abdca518b.zip packages_apps_settings-4c3b2f0cf062b38a6e380cc15ff8dc9abdca518b.tar.gz packages_apps_settings-4c3b2f0cf062b38a6e380cc15ff8dc9abdca518b.tar.bz2 |
Fix the tethering help page.
It worked with language+country resources but for some resources it's just language.
Added a check to see if we had lanugage+country before deciding which to use.
bug:2605981
Change-Id: Icb667a51f0c376f5188e3a43f264e236cd265468
-rw-r--r-- | src/com/android/settings/TetherSettings.java | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/src/com/android/settings/TetherSettings.java b/src/com/android/settings/TetherSettings.java index 79b081f..56305d5 100644 --- a/src/com/android/settings/TetherSettings.java +++ b/src/com/android/settings/TetherSettings.java @@ -26,6 +26,7 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; +import android.content.res.AssetManager; import android.net.ConnectivityManager; import android.os.Environment; import android.preference.CheckBoxPreference; @@ -36,6 +37,7 @@ import android.provider.Settings; import android.util.Log; import android.webkit.WebView; +import java.io.InputStream; import java.util.ArrayList; import java.util.Locale; @@ -49,7 +51,8 @@ public class TetherSettings extends PreferenceActivity { private static final String TETHERING_HELP = "tethering_help"; private static final String USB_HELP_MODIFIER = "usb_"; private static final String WIFI_HELP_MODIFIER = "wifi_"; - private static final String HELP_URL = "file:///android_asset/html/%y_%z/tethering_%xhelp.html"; + private static final String HELP_URL = "file:///android_asset/html/%y%z/tethering_%xhelp.html"; + private static final String HELP_PATH = "html/%y%z/tethering_help.html"; private static final int DIALOG_TETHER_HELP = 1; @@ -100,9 +103,26 @@ public class TetherSettings extends PreferenceActivity { protected Dialog onCreateDialog(int id) { if (id == DIALOG_TETHER_HELP) { Locale locale = Locale.getDefault(); - String url = HELP_URL.replace("%y", locale.getLanguage().toLowerCase()); - url = url.replace("%z", locale.getCountry().toLowerCase()); + // check for the full language + country resource, if not there, try just language + AssetManager am = getAssets(); + String path = HELP_PATH.replace("%y", locale.getLanguage().toLowerCase()); + path = path.replace("%z", "_"+locale.getCountry().toLowerCase()); + boolean useCountry = true; + InputStream is = null; + try { + is = am.open(path); + } catch (Exception e) { + useCountry = false; + } finally { + if (is != null) { + try { + is.close(); + } catch (Exception e) {} + } + } + String url = HELP_URL.replace("%y", locale.getLanguage().toLowerCase()); + url = url.replace("%z", (useCountry ? "_"+locale.getCountry().toLowerCase() : "")); if ((mUsbRegexs.length != 0) && (mWifiRegexs.length == 0)) { url = url.replace("%x", USB_HELP_MODIFIER); } else if ((mWifiRegexs.length != 0) && (mUsbRegexs.length == 0)) { @@ -112,6 +132,7 @@ public class TetherSettings extends PreferenceActivity { // is to use this anyway so no check is needed url = url.replace("%x", ""); } + mView.loadUrl(url); return new AlertDialog.Builder(this) |