summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardAccountView.java6
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardNavigationManager.java9
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java7
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardPatternView.java6
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPinView.java7
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPukView.java7
6 files changed, 30 insertions, 12 deletions
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAccountView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAccountView.java
index ba695acd58a8..ebca4acd0eac 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAccountView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardAccountView.java
@@ -84,6 +84,9 @@ public class KeyguardAccountView extends LinearLayout implements KeyguardSecurit
protected void onFinishInflate() {
super.onFinishInflate();
+ // We always set a dummy NavigationManager to avoid null checks
+ mSecurityMessageDisplay = new KeyguardNavigationManager(null);
+
mLogin = (EditText) findViewById(R.id.login);
mLogin.setFilters(new InputFilter[] { new LoginFilter.UsernameFilterGeneric() } );
mLogin.addTextChangedListener(this);
@@ -315,7 +318,8 @@ public class KeyguardAccountView extends LinearLayout implements KeyguardSecurit
@Override
public void setSecurityMessageDisplay(SecurityMessageDisplay display) {
- mSecurityMessageDisplay = display;
+ mSecurityMessageDisplay = display;
+ reset();
}
}
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardNavigationManager.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardNavigationManager.java
index 8dc38e7e1bfc..cec2668ff23e 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardNavigationManager.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardNavigationManager.java
@@ -23,16 +23,20 @@ public class KeyguardNavigationManager implements SecurityMessageDisplay {
private TextView mMessageArea;
public KeyguardNavigationManager(TextView messageArea) {
- mMessageArea = messageArea;
- mMessageArea.setSelected(true); // Make marquee work
+ if (messageArea != null) {
+ mMessageArea = messageArea;
+ mMessageArea.setSelected(true); // Make marquee work
+ }
}
public void setMessage(CharSequence msg, boolean important) {
+ if (mMessageArea == null) return;
mMessageArea.setText(msg);
mMessageArea.announceForAccessibility(mMessageArea.getText());
}
public void setMessage(int resId, boolean important) {
+ if (mMessageArea == null) return;
if (resId != 0) {
mMessageArea.setText(resId);
mMessageArea.announceForAccessibility(mMessageArea.getText());
@@ -42,6 +46,7 @@ public class KeyguardNavigationManager implements SecurityMessageDisplay {
}
public void setMessage(int resId, boolean important, Object... formatArgs) {
+ if (mMessageArea == null) return;
if (resId != 0) {
mMessageArea.setText(mMessageArea.getContext().getString(resId, formatArgs));
mMessageArea.announceForAccessibility(mMessageArea.getText());
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java
index 8df6f8e6c10d..3b37d563149b 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPasswordView.java
@@ -109,6 +109,9 @@ public class KeyguardPasswordView extends LinearLayout
@Override
protected void onFinishInflate() {
+ // We always set a dummy NavigationManager to avoid null checks
+ mSecurityMessageDisplay = new KeyguardNavigationManager(null);
+
mLockPatternUtils = new LockPatternUtils(mContext); // TODO: use common one
final int quality = mLockPatternUtils.getKeyguardStoredPasswordQuality();
@@ -366,10 +369,10 @@ public class KeyguardPasswordView extends LinearLayout
public void afterTextChanged(Editable s) {
}
-
@Override
public void setSecurityMessageDisplay(SecurityMessageDisplay display) {
- mSecurityMessageDisplay = display;
+ mSecurityMessageDisplay = display;
+ reset();
}
}
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPatternView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPatternView.java
index 73614813a3ca..79dc2d24f4b9 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPatternView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardPatternView.java
@@ -111,6 +111,9 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
protected void onFinishInflate() {
super.onFinishInflate();
+ // We always set a dummy NavigationManager to avoid null checks
+ mSecurityMessageDisplay = new KeyguardNavigationManager(null);
+
mLockPatternUtils = mLockPatternUtils == null
? new LockPatternUtils(mContext) : mLockPatternUtils;
@@ -371,7 +374,8 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
@Override
public void setSecurityMessageDisplay(SecurityMessageDisplay display) {
- mSecurityMessageDisplay = display;
+ mSecurityMessageDisplay = display;
+ reset();
}
}
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPinView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPinView.java
index 31ae8fae4c3a..7878e461313a 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPinView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPinView.java
@@ -76,6 +76,9 @@ public class KeyguardSimPinView extends LinearLayout
protected void onFinishInflate() {
super.onFinishInflate();
+ // We always set a dummy NavigationManager to avoid null checks
+ mSecurityMessageDisplay = new KeyguardNavigationManager(null);
+
mPinEntry = (EditText) findViewById(R.id.sim_pin_entry);
mPinEntry.setOnEditorActionListener(this);
mPinEntry.addTextChangedListener(this);
@@ -110,9 +113,7 @@ public class KeyguardSimPinView extends LinearLayout
public void reset() {
// start fresh
- if (mSecurityMessageDisplay != null) {
- mSecurityMessageDisplay.setMessage(R.string.kg_sim_pin_instructions, true);
- }
+ mSecurityMessageDisplay.setMessage(R.string.kg_sim_pin_instructions, true);
// make sure that the number of entered digits is consistent when we
// erase the SIM unlock code, including orientation changes.
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPukView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPukView.java
index 4c0d3b71b530..c0eb3819a230 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPukView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSimPukView.java
@@ -107,9 +107,7 @@ public class KeyguardSimPukView extends LinearLayout implements View.OnClickList
mPinText="";
mPukText="";
state = ENTER_PUK;
- if (mSecurityMessageDisplay != null) {
- mSecurityMessageDisplay.setMessage(R.string.kg_puk_enter_puk_hint, true);
- }
+ mSecurityMessageDisplay.setMessage(R.string.kg_puk_enter_puk_hint, true);
mSimPinEntry.requestFocus();
}
}
@@ -132,6 +130,9 @@ public class KeyguardSimPukView extends LinearLayout implements View.OnClickList
protected void onFinishInflate() {
super.onFinishInflate();
+ // We always set a dummy NavigationManager to avoid null checks
+ mSecurityMessageDisplay = new KeyguardNavigationManager(null);
+
mSimPinEntry = (TextView) findViewById(R.id.sim_pin_entry);
mSimPinEntry.setOnEditorActionListener(this);
mSimPinEntry.addTextChangedListener(this);