Fixed crashes in Android 2.x due to accesibility code

This commit is contained in:
David A. Velasco 2015-03-30 14:38:26 +02:00
parent 9177f1487a
commit 4fbce341be
2 changed files with 13 additions and 5 deletions

View file

@ -1393,9 +1393,9 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener {
actionBar.setDisplayShowTitleEnabled(!noRoot);
if (!noRoot) {
actionBar.setTitle(getString(R.string.default_display_name_for_root_folder));
View actionBarView = getWindow().getDecorView().findViewById(actionBarTitleId);
if (actionBarView != null) { // it's null in Android 2.x (at least)
actionBarView.setContentDescription(getString(R.string.default_display_name_for_root_folder));
View actionBarTitleView = getWindow().getDecorView().findViewById(actionBarTitleId);
if (actionBarTitleView != null) { // it's null in Android 2.x
actionBarTitleView.setContentDescription(getString(R.string.default_display_name_for_root_folder));
}
}
actionBar.setNavigationMode(!noRoot ? ActionBar.NAVIGATION_MODE_STANDARD : ActionBar.NAVIGATION_MODE_LIST);
@ -1406,7 +1406,11 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener {
actionBar.setDisplayShowTitleEnabled(true);
actionBar.setTitle(chosenFile.getFileName());
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
getWindow().getDecorView().findViewById(actionBarTitleId).setContentDescription(chosenFile.getFileName());
View actionBarTitleView = getWindow().getDecorView().findViewById(actionBarTitleId);
if (actionBarTitleView != null) { // it's null in Android 2.x
getWindow().getDecorView().findViewById(actionBarTitleId).
setContentDescription(chosenFile.getFileName());
}
}
}

View file

@ -119,7 +119,11 @@ public class Preferences extends SherlockPreferenceActivity
// For adding content description tag to a title field in the action bar
int actionBarTitleId = getResources().getIdentifier("action_bar_title", "id", "android");
getWindow().getDecorView().findViewById(actionBarTitleId).setContentDescription(getString(R.string.actionbar_settings));
View actionBarTitleView = getWindow().getDecorView().findViewById(actionBarTitleId);
if (actionBarTitleView != null) { // it's null in Android 2.x
getWindow().getDecorView().findViewById(actionBarTitleId).
setContentDescription(getString(R.string.actionbar_settings));
}
// Load the accounts category for adding the list of accounts
mAccountsPrefCategory = (PreferenceCategory) findPreference("accounts_category");