Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ecaced9a authored by Jim Miller's avatar Jim Miller
Browse files

Manual merge of Idf6bb25438336616e6453e7afe0e79f227af98d3

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.

Change-Id: Ic4480ff69ff4479557ddb7f76c751b005b1c60bf
parent 5c14f2d0
Loading
Loading
Loading
Loading
+8 −2
Original line number Original line Diff line number Diff line
@@ -29,7 +29,6 @@ import android.content.Context;
import android.content.Intent;
import android.content.Intent;
import android.content.res.Configuration;
import android.content.res.Configuration;
import android.graphics.Rect;
import android.graphics.Rect;
import android.telephony.TelephonyManager;
import android.text.Editable;
import android.text.Editable;
import android.text.InputFilter;
import android.text.InputFilter;
import android.text.LoginFilter;
import android.text.LoginFilter;
@@ -65,6 +64,7 @@ public class AccountUnlockScreen extends RelativeLayout implements KeyguardScree


    private final KeyguardScreenCallback mCallback;
    private final KeyguardScreenCallback mCallback;
    private final LockPatternUtils mLockPatternUtils;
    private final LockPatternUtils mLockPatternUtils;
    private KeyguardUpdateMonitor mUpdateMonitor;


    private TextView mTopHeader;
    private TextView mTopHeader;
    private TextView mInstructions;
    private TextView mInstructions;
@@ -81,9 +81,11 @@ public class AccountUnlockScreen extends RelativeLayout implements KeyguardScree
    /**
    /**
     * AccountUnlockScreen constructor.
     * AccountUnlockScreen constructor.
     * @param configuration
     * @param configuration
     * @param updateMonitor
     */
     */
    public AccountUnlockScreen(Context context,Configuration configuration,
    public AccountUnlockScreen(Context context,Configuration configuration,
            KeyguardScreenCallback callback, LockPatternUtils lockPatternUtils) {
            KeyguardUpdateMonitor updateMonitor, KeyguardScreenCallback callback,
            LockPatternUtils lockPatternUtils) {
        super(context);
        super(context);
        mCallback = callback;
        mCallback = callback;
        mLockPatternUtils = lockPatternUtils;
        mLockPatternUtils = lockPatternUtils;
@@ -111,6 +113,9 @@ public class AccountUnlockScreen extends RelativeLayout implements KeyguardScree
        mEmergencyCall = (Button) findViewById(R.id.emergencyCall);
        mEmergencyCall = (Button) findViewById(R.id.emergencyCall);
        mEmergencyCall.setOnClickListener(this);
        mEmergencyCall.setOnClickListener(this);
        mLockPatternUtils.updateEmergencyCallButtonState(mEmergencyCall);
        mLockPatternUtils.updateEmergencyCallButtonState(mEmergencyCall);

        mUpdateMonitor = updateMonitor;
        mUpdateMonitor.registerInfoCallback(this);
    }
    }


    public void afterTextChanged(Editable s) {
    public void afterTextChanged(Editable s) {
@@ -154,6 +159,7 @@ public class AccountUnlockScreen extends RelativeLayout implements KeyguardScree
        if (mCheckingDialog != null) {
        if (mCheckingDialog != null) {
            mCheckingDialog.hide();
            mCheckingDialog.hide();
        }
        }
        mUpdateMonitor.removeCallback(this);
    }
    }


    /** {@inheritDoc} */
    /** {@inheritDoc} */
+1 −0
Original line number Original line Diff line number Diff line
@@ -601,6 +601,7 @@ public class LockPatternKeyguardView extends KeyguardViewBase {
                unlockView = new AccountUnlockScreen(
                unlockView = new AccountUnlockScreen(
                        mContext,
                        mContext,
                        mConfiguration,
                        mConfiguration,
                        mUpdateMonitor,
                        mKeyguardScreenCallback,
                        mKeyguardScreenCallback,
                        mLockPatternUtils);
                        mLockPatternUtils);
            } catch (IllegalStateException e) {
            } catch (IllegalStateException e) {