Loading res/values/strings.xml +28 −0 Original line number Original line Diff line number Diff line Loading @@ -5507,6 +5507,34 @@ <!-- Help URLs for some screens. Not specified here. Specified in product overlays --><skip/> <!-- Help URLs for some screens. Not specified here. Specified in product overlays --><skip/> <!-- Help menu label [CHAR LIMIT=20] --> <!-- Help menu label [CHAR LIMIT=20] --> <string name="help_label">Help & feedback</string> <string name="help_label">Help & feedback</string> <!-- Help URI, Default [DO NOT TRANSLATE] --> <string name="help_uri_default" translatable="false"></string> <!-- Help URI, Dashboard [DO NOT TRANSLATE] --> <string name="help_uri_dashboard" translatable="false"></string> <!-- Help URI, Android beam [DO NOT TRANSLATE] --> <string name="help_uri_beam" translatable="false"></string> <!-- Help URI, Display [DO NOT TRANSLATE] --> <string name="help_uri_display" translatable="false"></string> <!-- Help URI, Wallpaper [DO NOT TRANSLATE] --> <string name="help_uri_wallpaper" translatable="false"></string> <!-- Help URI, Interruptions [DO NOT TRANSLATE] --> <string name="help_uri_interruptions" translatable="false"></string> <!-- Help URI, Other sounds [DO NOT TRANSLATE] --> <string name="help_uri_other_sounds" translatable="false"></string> <!-- Help URI, Notifications [DO NOT TRANSLATE] --> <string name="help_uri_notifications" translatable="false"></string> <!-- Help URI, Apps [DO NOT TRANSLATE] --> <string name="help_uri_apps" translatable="false"></string> <!-- Help URI, Storage [DO NOT TRANSLATE] --> <string name="help_uri_storage" translatable="false"></string> <!-- Help URI, Accessibility [DO NOT TRANSLATE] --> <string name="help_uri_accessibility" translatable="false"></string> <!-- Help URI, Printing [DO NOT TRANSLATE] --> <string name="help_uri_printing" translatable="false"></string> <!-- Help URI, About phone [DO NOT TRANSLATE] --> <string name="help_uri_about" translatable="false"></string> <!-- Help URL, WiFi [DO NOT TRANSLATE] --> <!-- Help URL, WiFi [DO NOT TRANSLATE] --> <string name="help_url_wifi" translatable="false"></string> <string name="help_url_wifi" translatable="false"></string> <!-- Help URL, Bluetooth [DO NOT TRANSLATE] --> <!-- Help URL, Bluetooth [DO NOT TRANSLATE] --> Loading src/com/android/settings/DeviceInfoSettings.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -89,6 +89,11 @@ public class DeviceInfoSettings extends SettingsPreferenceFragment implements In return MetricsLogger.DEVICEINFO; return MetricsLogger.DEVICEINFO; } } @Override protected int getHelpResource() { return R.string.help_uri_about; } @Override @Override public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) { super.onCreate(icicle); super.onCreate(icicle); Loading src/com/android/settings/DisplaySettings.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -422,6 +422,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements return false; return false; } } @Override protected int getHelpResource() { return R.string.help_uri_display; } public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = new BaseSearchIndexProvider() { new BaseSearchIndexProvider() { @Override @Override Loading src/com/android/settings/HelpUtils.java +36 −11 Original line number Original line Diff line number Diff line Loading @@ -24,8 +24,10 @@ import android.content.pm.PackageManager.NameNotFoundException; import android.net.Uri; import android.net.Uri; import android.text.TextUtils; import android.text.TextUtils; import android.util.Log; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.MenuItem; import java.net.URISyntaxException; import java.util.Locale; import java.util.Locale; /** /** Loading @@ -33,7 +35,9 @@ import java.util.Locale; * browser to a particular URL, while taking into account the preferred language and app version. * browser to a particular URL, while taking into account the preferred language and app version. */ */ public class HelpUtils { public class HelpUtils { private final static String TAG = HelpUtils.class.getName(); private final static String TAG = HelpUtils.class.getSimpleName(); private static final int MENU_HELP = Menu.FIRST + 100; /** /** * Help URL query parameter key for the preferred language. * Help URL query parameter key for the preferred language. Loading @@ -53,6 +57,16 @@ public class HelpUtils { /** Static helper that is not instantiable*/ /** Static helper that is not instantiable*/ private HelpUtils() { } private HelpUtils() { } public static boolean prepareHelpMenuItem(Context context, Menu menu, String helpUri) { MenuItem helpItem = menu.add(0, MENU_HELP, 0, R.string.help_label); return prepareHelpMenuItem(context, helpItem, helpUri); } public static boolean prepareHelpMenuItem(Context context, Menu menu, int helpUriResource) { MenuItem helpItem = menu.add(0, MENU_HELP, 0, R.string.help_label); return prepareHelpMenuItem(context, helpItem, context.getString(helpUriResource)); } /** /** * Prepares the help menu item by doing the following. * Prepares the help menu item by doing the following. * - If the string corresponding to the helpUrlResourceId is empty or null, then the help menu * - If the string corresponding to the helpUrlResourceId is empty or null, then the help menu Loading @@ -77,22 +91,15 @@ public class HelpUtils { * @return returns whether the help menu item has been made visible. * @return returns whether the help menu item has been made visible. */ */ public static boolean prepareHelpMenuItem(Context context, MenuItem helpMenuItem, public static boolean prepareHelpMenuItem(Context context, MenuItem helpMenuItem, String helpUrlString) { String helpUriString) { if (TextUtils.isEmpty(helpUrlString)) { if (TextUtils.isEmpty(helpUriString)) { // The help url string is empty or null, so set the help menu item to be invisible. // The help url string is empty or null, so set the help menu item to be invisible. helpMenuItem.setVisible(false); helpMenuItem.setVisible(false); // return that the help menu item is not visible (i.e. false) // return that the help menu item is not visible (i.e. false) return false; return false; } else { } else { // The help url string exists, so first add in some extra query parameters. Intent intent = getHelpIntent(context, helpUriString); final Uri fullUri = uriWithAddedParameters(context, Uri.parse(helpUrlString)); // Then, create an intent that will be fired when the user // selects this help menu item. Intent intent = new Intent(Intent.ACTION_VIEW, fullUri); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); // Set the intent to the help menu item, show the help menu item in the overflow // Set the intent to the help menu item, show the help menu item in the overflow // menu, and make it visible. // menu, and make it visible. Loading @@ -111,6 +118,24 @@ public class HelpUtils { } } } } private static Intent getHelpIntent(Context context, String helpUriString) { // Try to handle as Intent Uri, otherwise just treat as Uri. try { return Intent.parseUri(helpUriString, Intent.URI_ANDROID_APP_SCHEME | Intent.URI_INTENT_SCHEME); } catch (URISyntaxException e) { } // The help url string exists, so first add in some extra query parameters. final Uri fullUri = uriWithAddedParameters(context, Uri.parse(helpUriString)); // Then, create an intent that will be fired when the user // selects this help menu item. Intent intent = new Intent(Intent.ACTION_VIEW, fullUri); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); return intent; } /** /** * Adds two query parameters into the Uri, namely the language code and the version code * Adds two query parameters into the Uri, namely the language code and the version code * of the app's package as gotten via the context. * of the app's package as gotten via the context. Loading src/com/android/settings/SettingsPreferenceFragment.java +6 −8 Original line number Original line Diff line number Diff line Loading @@ -50,14 +50,13 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF private static final String TAG = "SettingsPreferenceFragment"; private static final String TAG = "SettingsPreferenceFragment"; private static final int MENU_HELP = Menu.FIRST + 100; private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 600; private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 600; private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted"; private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted"; private SettingsDialogFragment mDialogFragment; private SettingsDialogFragment mDialogFragment; private String mHelpUrl; private String mHelpUri; // Cache the content resolver for async callbacks // Cache the content resolver for async callbacks private ContentResolver mContentResolver; private ContentResolver mContentResolver; Loading Loading @@ -93,7 +92,7 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF // Prepare help url and enable menu if necessary // Prepare help url and enable menu if necessary int helpResource = getHelpResource(); int helpResource = getHelpResource(); if (helpResource != 0) { if (helpResource != 0) { mHelpUrl = getResources().getString(helpResource); mHelpUri = getResources().getString(helpResource); } } } } Loading Loading @@ -125,7 +124,7 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF @Override @Override public void onActivityCreated(Bundle savedInstanceState) { public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); super.onActivityCreated(savedInstanceState); if (!TextUtils.isEmpty(mHelpUrl)) { if (!TextUtils.isEmpty(mHelpUri)) { setHasOptionsMenu(true); setHasOptionsMenu(true); } } } } Loading Loading @@ -278,14 +277,13 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF * @return the resource id for the help url * @return the resource id for the help url */ */ protected int getHelpResource() { protected int getHelpResource() { return 0; return R.string.help_uri_default; } } @Override @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { if (mHelpUrl != null && getActivity() != null) { if (mHelpUri != null && getActivity() != null) { MenuItem helpItem = menu.add(0, MENU_HELP, 0, R.string.help_label); HelpUtils.prepareHelpMenuItem(getActivity(), menu, mHelpUri); HelpUtils.prepareHelpMenuItem(getActivity(), helpItem, mHelpUrl); } } } } Loading Loading
res/values/strings.xml +28 −0 Original line number Original line Diff line number Diff line Loading @@ -5507,6 +5507,34 @@ <!-- Help URLs for some screens. Not specified here. Specified in product overlays --><skip/> <!-- Help URLs for some screens. Not specified here. Specified in product overlays --><skip/> <!-- Help menu label [CHAR LIMIT=20] --> <!-- Help menu label [CHAR LIMIT=20] --> <string name="help_label">Help & feedback</string> <string name="help_label">Help & feedback</string> <!-- Help URI, Default [DO NOT TRANSLATE] --> <string name="help_uri_default" translatable="false"></string> <!-- Help URI, Dashboard [DO NOT TRANSLATE] --> <string name="help_uri_dashboard" translatable="false"></string> <!-- Help URI, Android beam [DO NOT TRANSLATE] --> <string name="help_uri_beam" translatable="false"></string> <!-- Help URI, Display [DO NOT TRANSLATE] --> <string name="help_uri_display" translatable="false"></string> <!-- Help URI, Wallpaper [DO NOT TRANSLATE] --> <string name="help_uri_wallpaper" translatable="false"></string> <!-- Help URI, Interruptions [DO NOT TRANSLATE] --> <string name="help_uri_interruptions" translatable="false"></string> <!-- Help URI, Other sounds [DO NOT TRANSLATE] --> <string name="help_uri_other_sounds" translatable="false"></string> <!-- Help URI, Notifications [DO NOT TRANSLATE] --> <string name="help_uri_notifications" translatable="false"></string> <!-- Help URI, Apps [DO NOT TRANSLATE] --> <string name="help_uri_apps" translatable="false"></string> <!-- Help URI, Storage [DO NOT TRANSLATE] --> <string name="help_uri_storage" translatable="false"></string> <!-- Help URI, Accessibility [DO NOT TRANSLATE] --> <string name="help_uri_accessibility" translatable="false"></string> <!-- Help URI, Printing [DO NOT TRANSLATE] --> <string name="help_uri_printing" translatable="false"></string> <!-- Help URI, About phone [DO NOT TRANSLATE] --> <string name="help_uri_about" translatable="false"></string> <!-- Help URL, WiFi [DO NOT TRANSLATE] --> <!-- Help URL, WiFi [DO NOT TRANSLATE] --> <string name="help_url_wifi" translatable="false"></string> <string name="help_url_wifi" translatable="false"></string> <!-- Help URL, Bluetooth [DO NOT TRANSLATE] --> <!-- Help URL, Bluetooth [DO NOT TRANSLATE] --> Loading
src/com/android/settings/DeviceInfoSettings.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -89,6 +89,11 @@ public class DeviceInfoSettings extends SettingsPreferenceFragment implements In return MetricsLogger.DEVICEINFO; return MetricsLogger.DEVICEINFO; } } @Override protected int getHelpResource() { return R.string.help_uri_about; } @Override @Override public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) { super.onCreate(icicle); super.onCreate(icicle); Loading
src/com/android/settings/DisplaySettings.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -422,6 +422,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements return false; return false; } } @Override protected int getHelpResource() { return R.string.help_uri_display; } public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = new BaseSearchIndexProvider() { new BaseSearchIndexProvider() { @Override @Override Loading
src/com/android/settings/HelpUtils.java +36 −11 Original line number Original line Diff line number Diff line Loading @@ -24,8 +24,10 @@ import android.content.pm.PackageManager.NameNotFoundException; import android.net.Uri; import android.net.Uri; import android.text.TextUtils; import android.text.TextUtils; import android.util.Log; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.MenuItem; import java.net.URISyntaxException; import java.util.Locale; import java.util.Locale; /** /** Loading @@ -33,7 +35,9 @@ import java.util.Locale; * browser to a particular URL, while taking into account the preferred language and app version. * browser to a particular URL, while taking into account the preferred language and app version. */ */ public class HelpUtils { public class HelpUtils { private final static String TAG = HelpUtils.class.getName(); private final static String TAG = HelpUtils.class.getSimpleName(); private static final int MENU_HELP = Menu.FIRST + 100; /** /** * Help URL query parameter key for the preferred language. * Help URL query parameter key for the preferred language. Loading @@ -53,6 +57,16 @@ public class HelpUtils { /** Static helper that is not instantiable*/ /** Static helper that is not instantiable*/ private HelpUtils() { } private HelpUtils() { } public static boolean prepareHelpMenuItem(Context context, Menu menu, String helpUri) { MenuItem helpItem = menu.add(0, MENU_HELP, 0, R.string.help_label); return prepareHelpMenuItem(context, helpItem, helpUri); } public static boolean prepareHelpMenuItem(Context context, Menu menu, int helpUriResource) { MenuItem helpItem = menu.add(0, MENU_HELP, 0, R.string.help_label); return prepareHelpMenuItem(context, helpItem, context.getString(helpUriResource)); } /** /** * Prepares the help menu item by doing the following. * Prepares the help menu item by doing the following. * - If the string corresponding to the helpUrlResourceId is empty or null, then the help menu * - If the string corresponding to the helpUrlResourceId is empty or null, then the help menu Loading @@ -77,22 +91,15 @@ public class HelpUtils { * @return returns whether the help menu item has been made visible. * @return returns whether the help menu item has been made visible. */ */ public static boolean prepareHelpMenuItem(Context context, MenuItem helpMenuItem, public static boolean prepareHelpMenuItem(Context context, MenuItem helpMenuItem, String helpUrlString) { String helpUriString) { if (TextUtils.isEmpty(helpUrlString)) { if (TextUtils.isEmpty(helpUriString)) { // The help url string is empty or null, so set the help menu item to be invisible. // The help url string is empty or null, so set the help menu item to be invisible. helpMenuItem.setVisible(false); helpMenuItem.setVisible(false); // return that the help menu item is not visible (i.e. false) // return that the help menu item is not visible (i.e. false) return false; return false; } else { } else { // The help url string exists, so first add in some extra query parameters. Intent intent = getHelpIntent(context, helpUriString); final Uri fullUri = uriWithAddedParameters(context, Uri.parse(helpUrlString)); // Then, create an intent that will be fired when the user // selects this help menu item. Intent intent = new Intent(Intent.ACTION_VIEW, fullUri); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); // Set the intent to the help menu item, show the help menu item in the overflow // Set the intent to the help menu item, show the help menu item in the overflow // menu, and make it visible. // menu, and make it visible. Loading @@ -111,6 +118,24 @@ public class HelpUtils { } } } } private static Intent getHelpIntent(Context context, String helpUriString) { // Try to handle as Intent Uri, otherwise just treat as Uri. try { return Intent.parseUri(helpUriString, Intent.URI_ANDROID_APP_SCHEME | Intent.URI_INTENT_SCHEME); } catch (URISyntaxException e) { } // The help url string exists, so first add in some extra query parameters. final Uri fullUri = uriWithAddedParameters(context, Uri.parse(helpUriString)); // Then, create an intent that will be fired when the user // selects this help menu item. Intent intent = new Intent(Intent.ACTION_VIEW, fullUri); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); return intent; } /** /** * Adds two query parameters into the Uri, namely the language code and the version code * Adds two query parameters into the Uri, namely the language code and the version code * of the app's package as gotten via the context. * of the app's package as gotten via the context. Loading
src/com/android/settings/SettingsPreferenceFragment.java +6 −8 Original line number Original line Diff line number Diff line Loading @@ -50,14 +50,13 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF private static final String TAG = "SettingsPreferenceFragment"; private static final String TAG = "SettingsPreferenceFragment"; private static final int MENU_HELP = Menu.FIRST + 100; private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 600; private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 600; private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted"; private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted"; private SettingsDialogFragment mDialogFragment; private SettingsDialogFragment mDialogFragment; private String mHelpUrl; private String mHelpUri; // Cache the content resolver for async callbacks // Cache the content resolver for async callbacks private ContentResolver mContentResolver; private ContentResolver mContentResolver; Loading Loading @@ -93,7 +92,7 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF // Prepare help url and enable menu if necessary // Prepare help url and enable menu if necessary int helpResource = getHelpResource(); int helpResource = getHelpResource(); if (helpResource != 0) { if (helpResource != 0) { mHelpUrl = getResources().getString(helpResource); mHelpUri = getResources().getString(helpResource); } } } } Loading Loading @@ -125,7 +124,7 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF @Override @Override public void onActivityCreated(Bundle savedInstanceState) { public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); super.onActivityCreated(savedInstanceState); if (!TextUtils.isEmpty(mHelpUrl)) { if (!TextUtils.isEmpty(mHelpUri)) { setHasOptionsMenu(true); setHasOptionsMenu(true); } } } } Loading Loading @@ -278,14 +277,13 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF * @return the resource id for the help url * @return the resource id for the help url */ */ protected int getHelpResource() { protected int getHelpResource() { return 0; return R.string.help_uri_default; } } @Override @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { if (mHelpUrl != null && getActivity() != null) { if (mHelpUri != null && getActivity() != null) { MenuItem helpItem = menu.add(0, MENU_HELP, 0, R.string.help_label); HelpUtils.prepareHelpMenuItem(getActivity(), menu, mHelpUri); HelpUtils.prepareHelpMenuItem(getActivity(), helpItem, mHelpUrl); } } } } Loading