summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings')
-rw-r--r--src/com/android/settings/AccessibilitySettings.java4
-rw-r--r--src/com/android/settings/ChooseLockPassword.java13
-rw-r--r--src/com/android/settings/ChooseLockPattern.java7
-rw-r--r--src/com/android/settings/ConfirmLockPassword.java2
-rw-r--r--src/com/android/settings/ConfirmLockPattern.java5
-rw-r--r--src/com/android/settings/LocalePicker.java5
-rw-r--r--src/com/android/settings/applications/InstalledAppDetails.java2
7 files changed, 29 insertions, 9 deletions
diff --git a/src/com/android/settings/AccessibilitySettings.java b/src/com/android/settings/AccessibilitySettings.java
index 266621f..d64a092 100644
--- a/src/com/android/settings/AccessibilitySettings.java
+++ b/src/com/android/settings/AccessibilitySettings.java
@@ -282,7 +282,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
Bundle extras = mDisplayMagnificationPreferenceScreen.getExtras();
extras.putString(EXTRA_TITLE, getString(
R.string.accessibility_screen_magnification_title));
- extras.putString(EXTRA_SUMMARY, getString(
+ extras.putCharSequence(EXTRA_SUMMARY, getActivity().getResources().getText(
R.string.accessibility_screen_magnification_summary));
extras.putBoolean(EXTRA_CHECKED, Settings.Secure.getInt(getContentResolver(),
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, 0) == 1);
@@ -1005,7 +1005,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
getActivity().getActionBar().setTitle(title);
}
// Summary.
- String summary = arguments.getString(EXTRA_SUMMARY);
+ CharSequence summary = arguments.getCharSequence(EXTRA_SUMMARY);
mSummaryPreference.setSummary(summary);
}
}
diff --git a/src/com/android/settings/ChooseLockPassword.java b/src/com/android/settings/ChooseLockPassword.java
index 4657be5..aab4ba6 100644
--- a/src/com/android/settings/ChooseLockPassword.java
+++ b/src/com/android/settings/ChooseLockPassword.java
@@ -40,6 +40,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
+import android.view.accessibility.AccessibilityEvent;
import android.view.inputmethod.EditorInfo;
import android.widget.Button;
import android.widget.TextView;
@@ -272,8 +273,15 @@ public class ChooseLockPassword extends PreferenceActivity {
}
protected void updateStage(Stage stage) {
+ final Stage previousStage = mUiStage;
mUiStage = stage;
updateUi();
+
+ // If the stage changed, announce the header for accessibility. This
+ // is a no-op when accessibility is disabled.
+ if (previousStage != stage) {
+ mHeaderText.announceForAccessibility(mHeaderText.getText());
+ }
}
/**
@@ -378,8 +386,8 @@ public class ChooseLockPassword extends PreferenceActivity {
errorMsg = validatePassword(pin);
if (errorMsg == null) {
mFirstPin = pin;
- updateStage(Stage.NeedToConfirm);
mPasswordEntry.setText("");
+ updateStage(Stage.NeedToConfirm);
}
} else if (mUiStage == Stage.NeedToConfirm) {
if (mFirstPin.equals(pin)) {
@@ -389,11 +397,11 @@ public class ChooseLockPassword extends PreferenceActivity {
mLockPatternUtils.saveLockPassword(pin, mRequestedQuality, isFallback);
getActivity().finish();
} else {
- updateStage(Stage.ConfirmWrong);
CharSequence tmp = mPasswordEntry.getText();
if (tmp != null) {
Selection.setSelection((Spannable) tmp, 0, tmp.length());
}
+ updateStage(Stage.ConfirmWrong);
}
}
if (errorMsg != null) {
@@ -415,6 +423,7 @@ public class ChooseLockPassword extends PreferenceActivity {
private void showError(String msg, final Stage next) {
mHeaderText.setText(msg);
+ mHeaderText.announceForAccessibility(mHeaderText.getText());
Message mesg = mHandler.obtainMessage(MSG_SHOW_ERROR, next);
mHandler.removeMessages(MSG_SHOW_ERROR);
mHandler.sendMessageDelayed(mesg, ERROR_MESSAGE_TIMEOUT);
diff --git a/src/com/android/settings/ChooseLockPattern.java b/src/com/android/settings/ChooseLockPattern.java
index 180eee1..295e8ea 100644
--- a/src/com/android/settings/ChooseLockPattern.java
+++ b/src/com/android/settings/ChooseLockPattern.java
@@ -429,6 +429,7 @@ public class ChooseLockPattern extends PreferenceActivity {
* @param stage
*/
protected void updateStage(Stage stage) {
+ final Stage previousStage = mUiStage;
mUiStage = stage;
@@ -493,6 +494,12 @@ public class ChooseLockPattern extends PreferenceActivity {
case ChoiceConfirmed:
break;
}
+
+ // If the stage changed, announce the header for accessibility. This
+ // is a no-op when accessibility is disabled.
+ if (previousStage != stage) {
+ mHeaderText.announceForAccessibility(mHeaderText.getText());
+ }
}
diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java
index 1229046..96839ba 100644
--- a/src/com/android/settings/ConfirmLockPassword.java
+++ b/src/com/android/settings/ConfirmLockPassword.java
@@ -35,6 +35,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
+import android.view.accessibility.AccessibilityEvent;
import android.view.inputmethod.EditorInfo;
import android.widget.Button;
import android.widget.TextView;
@@ -173,6 +174,7 @@ public class ConfirmLockPassword extends PreferenceActivity {
private void showError(int msg) {
mHeaderText.setText(msg);
+ mHeaderText.announceForAccessibility(mHeaderText.getText());
mPasswordEntry.setText(null);
mHandler.postDelayed(new Runnable() {
public void run() {
diff --git a/src/com/android/settings/ConfirmLockPattern.java b/src/com/android/settings/ConfirmLockPattern.java
index 2892930..dd375cc 100644
--- a/src/com/android/settings/ConfirmLockPattern.java
+++ b/src/com/android/settings/ConfirmLockPattern.java
@@ -180,7 +180,6 @@ public class ConfirmLockPattern extends PreferenceActivity {
}
private void updateStage(Stage stage) {
-
switch (stage) {
case NeedToUnlock:
if (mHeaderText != null) {
@@ -220,6 +219,10 @@ public class ConfirmLockPattern extends PreferenceActivity {
mLockPatternView.setEnabled(false); // appearance of being disabled
break;
}
+
+ // Always announce the header for accessibility. This is a no-op
+ // when accessibility is disabled.
+ mHeaderTextView.announceForAccessibility(mHeaderTextView.getText());
}
private Runnable mClearPatternRunnable = new Runnable() {
diff --git a/src/com/android/settings/LocalePicker.java b/src/com/android/settings/LocalePicker.java
index 1272ddc..0afa4d5 100644
--- a/src/com/android/settings/LocalePicker.java
+++ b/src/com/android/settings/LocalePicker.java
@@ -17,9 +17,7 @@
package com.android.settings;
import android.app.Dialog;
-import android.content.Context;
import android.os.Bundle;
-import android.os.UserManager;
import android.util.Log;
import com.android.settings.SettingsPreferenceFragment.SettingsDialogFragment;
@@ -78,11 +76,12 @@ public class LocalePicker extends com.android.internal.app.LocalePicker
mDialogFragment.show(getActivity().getFragmentManager(), Integer.toString(dialogId));
}
- public Dialog onCreateDialog(int dialogId) {
+ public Dialog onCreateDialog(final int dialogId) {
return Utils.buildGlobalChangeWarningDialog(getActivity(),
R.string.global_locale_change_title,
new Runnable() {
public void run() {
+ removeDialog(dialogId);
getActivity().onBackPressed();
LocalePicker.updateLocale(mTargetLocale);
}
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index 7690b7e..1cdb4dc 100644
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -464,7 +464,7 @@ public class InstalledAppDetails extends Fragment
showIt = false;
} else if ((mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
showIt = false;
- } else if (mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
+ } else if (mPackageInfo == null || mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
showIt = false;
} else if (UserHandle.myUserId() != 0) {
showIt = false;