Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fix 2575838: Update emergency button in AccountUnlockScreen DO NOT MERGE

AccountUnlockScreen wasn't registered to receive updates from
UpdateMonitor.  It now correctly updates the Emergency call button
to allow the user to return to the call in progress (InCallScreen).

Tested on WVGA device with keyboard:
- hitting Home during call, observing state, and pressing button to return to call.
- hitting Home while not in call to ensure it still invokes EmergencyDialer.
- above in various keyboard states.

Marked DO NOT MERGE since this will require manual merge to master due to framework restructuring.

Change-Id: Idf6bb25438336616e6453e7afe0e79f227af98d3
  • Loading branch information...
commit d1ecfc2de1059504cfbe35eebe42c4cda8461af6 1 parent eeb2497
Jim Miller authored
View
10 phone/com/android/internal/policy/impl/AccountUnlockScreen.java
@@ -29,7 +29,6 @@
import android.content.Intent;
import android.content.res.Configuration;
import android.graphics.Rect;
-import android.telephony.TelephonyManager;
import android.text.Editable;
import android.text.InputFilter;
import android.text.LoginFilter;
@@ -65,6 +64,7 @@
private final KeyguardScreenCallback mCallback;
private final LockPatternUtils mLockPatternUtils;
+ private KeyguardUpdateMonitor mUpdateMonitor;
private TextView mTopHeader;
private TextView mInstructions;
@@ -81,9 +81,11 @@
/**
* AccountUnlockScreen constructor.
* @param configuration
+ * @param updateMonitor
*/
public AccountUnlockScreen(Context context,Configuration configuration,
- KeyguardScreenCallback callback, LockPatternUtils lockPatternUtils) {
+ KeyguardUpdateMonitor updateMonitor, KeyguardScreenCallback callback,
+ LockPatternUtils lockPatternUtils) {
super(context);
mCallback = callback;
mLockPatternUtils = lockPatternUtils;
@@ -111,6 +113,9 @@ public AccountUnlockScreen(Context context,Configuration configuration,
mEmergencyCall = (Button) findViewById(R.id.emergencyCall);
mEmergencyCall.setOnClickListener(this);
mLockPatternUtils.updateEmergencyCallButtonState(mEmergencyCall);
+
+ mUpdateMonitor = updateMonitor;
+ mUpdateMonitor.registerInfoCallback(this);
}
public void afterTextChanged(Editable s) {
@@ -154,6 +159,7 @@ public void cleanUp() {
if (mCheckingDialog != null) {
mCheckingDialog.hide();
}
+ mUpdateMonitor.removeCallback(this);
}
/** {@inheritDoc} */
View
1  phone/com/android/internal/policy/impl/LockPatternKeyguardView.java
@@ -601,6 +601,7 @@ View createUnlockScreenFor(UnlockMode unlockMode) {
unlockView = new AccountUnlockScreen(
mContext,
mConfiguration,
+ mUpdateMonitor,
mKeyguardScreenCallback,
mLockPatternUtils);
} catch (IllegalStateException e) {
Please sign in to comment.
Something went wrong with that request. Please try again.