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

Commit 0a4f9004 authored by Adam Cohen's avatar Adam Cohen
Browse files

Only showing important security messages in status area (issue 7341795)

Change-Id: Ie2fcd4dd7130b4684223d0442f50e76435f61768
parent 8ec3ff8d
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -137,8 +137,9 @@ public class KeyguardAccountView extends LinearLayout implements KeyguardSecurit
        mLogin.setText("");
        mPassword.setText("");
        mLogin.requestFocus();
        mSecurityMessageDisplay.setMessage(mLockPatternUtils.isPermanentlyLocked() ?
                R.string.kg_login_too_many_attempts : R.string.kg_login_instructions);
        boolean permLocked = mLockPatternUtils.isPermanentlyLocked();
        mSecurityMessageDisplay.setMessage(permLocked ? R.string.kg_login_too_many_attempts :
            R.string.kg_login_instructions, permLocked ? true : false);
    }

    /** {@inheritDoc} */
@@ -178,7 +179,7 @@ public class KeyguardAccountView extends LinearLayout implements KeyguardSecurit
                    // dismiss keyguard
                    mCallback.dismiss(true);
                } else {
                    mSecurityMessageDisplay.setMessage(R.string.kg_login_invalid_input);
                    mSecurityMessageDisplay.setMessage(R.string.kg_login_invalid_input, true);
                    mPassword.setText("");
                    mCallback.reportFailedUnlockAttempt();
                }
+3 −6
Original line number Diff line number Diff line
@@ -16,11 +16,8 @@

package com.android.internal.policy.impl.keyguard;

import android.view.View;
import android.widget.TextView;

import com.android.internal.R;

public class KeyguardNavigationManager implements SecurityMessageDisplay {

    private TextView mMessageArea;
@@ -30,12 +27,12 @@ public class KeyguardNavigationManager implements SecurityMessageDisplay {
        mMessageArea.setSelected(true); // Make marquee work
    }

    public void setMessage(CharSequence msg) {
    public void setMessage(CharSequence msg, boolean important) {
        mMessageArea.setText(msg);
        mMessageArea.announceForAccessibility(mMessageArea.getText());
    }

    public void setMessage(int resId) {
    public void setMessage(int resId, boolean important) {
        if (resId != 0) {
            mMessageArea.setText(resId);
            mMessageArea.announceForAccessibility(mMessageArea.getText());
@@ -44,7 +41,7 @@ public class KeyguardNavigationManager implements SecurityMessageDisplay {
        }
    }

    public void setMessage(int resId, Object... formatArgs) {
    public void setMessage(int resId, boolean important, Object... formatArgs) {
        if (resId != 0) {
            mMessageArea.setText(mMessageArea.getContext().getString(resId, formatArgs));
            mMessageArea.announceForAccessibility(mMessageArea.getText());
+3 −3
Original line number Diff line number Diff line
@@ -102,7 +102,7 @@ public class KeyguardPasswordView extends LinearLayout

    private void resetState() {
        mSecurityMessageDisplay.setMessage(
                mIsAlpha ? R.string.kg_password_instructions : R.string.kg_pin_instructions);
                mIsAlpha ? R.string.kg_password_instructions : R.string.kg_pin_instructions, false);
        mPasswordEntry.setEnabled(true);
        mKeyboardView.setEnabled(true);
    }
@@ -287,7 +287,7 @@ public class KeyguardPasswordView extends LinearLayout
                handleAttemptLockout(deadline);
            }
            mSecurityMessageDisplay.setMessage(
                    mIsAlpha ? R.string.kg_wrong_password : R.string.kg_wrong_pin);
                    mIsAlpha ? R.string.kg_wrong_password : R.string.kg_wrong_pin, true);
        }
        mPasswordEntry.setText("");
    }
@@ -303,7 +303,7 @@ public class KeyguardPasswordView extends LinearLayout
            public void onTick(long millisUntilFinished) {
                int secondsRemaining = (int) (millisUntilFinished / 1000);
                mSecurityMessageDisplay.setMessage(
                        R.string.kg_too_many_failed_attempts_countdown, secondsRemaining);
                        R.string.kg_too_many_failed_attempts_countdown, true, secondsRemaining);
            }

            @Override
+4 −4
Original line number Diff line number Diff line
@@ -182,7 +182,7 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
        if (deadline != 0) {
            handleAttemptLockout(deadline);
        } else {
            mSecurityMessageDisplay.setMessage(R.string.kg_pattern_instructions);
            mSecurityMessageDisplay.setMessage(R.string.kg_pattern_instructions, false);
        }

        // the footer depends on how many total attempts the user has failed
@@ -254,7 +254,7 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
                    long deadline = mLockPatternUtils.setLockoutAttemptDeadline();
                    handleAttemptLockout(deadline);
                } else {
                    mSecurityMessageDisplay.setMessage(R.string.kg_wrong_pattern);
                    mSecurityMessageDisplay.setMessage(R.string.kg_wrong_pattern, true);
                    mLockPatternView.postDelayed(mCancelPatternRunnable, PATTERN_CLEAR_TIMEOUT_MS);
                }
            }
@@ -327,13 +327,13 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
            public void onTick(long millisUntilFinished) {
                final int secondsRemaining = (int) (millisUntilFinished / 1000);
                mSecurityMessageDisplay.setMessage(
                        R.string.kg_too_many_failed_attempts_countdown, secondsRemaining);
                        R.string.kg_too_many_failed_attempts_countdown, true, secondsRemaining);
            }

            @Override
            public void onFinish() {
                mLockPatternView.setEnabled(true);
                mSecurityMessageDisplay.setMessage(R.string.kg_pattern_instructions);
                mSecurityMessageDisplay.setMessage(R.string.kg_pattern_instructions, false);
                // TODO mUnlockIcon.setVisibility(View.VISIBLE);
                mFailedPatternAttemptsSinceLastTimeout = 0;
                if (mEnableFallback) {
+4 −3
Original line number Diff line number Diff line
@@ -111,7 +111,7 @@ public class KeyguardSimPinView extends LinearLayout
    public void reset() {
        // start fresh
        if (mSecurityMessageDisplay != null) {
            mSecurityMessageDisplay.setMessage(R.string.kg_sim_pin_instructions);
            mSecurityMessageDisplay.setMessage(R.string.kg_sim_pin_instructions, true);
        }

        // make sure that the number of entered digits is consistent when we
@@ -193,7 +193,7 @@ public class KeyguardSimPinView extends LinearLayout
    private void checkPin() {
        if (mPinEntry.getText().length() < 4) {
            // otherwise, display a message to the user, and don't submit.
            mSecurityMessageDisplay.setMessage(R.string.kg_invalid_sim_pin_hint);
            mSecurityMessageDisplay.setMessage(R.string.kg_invalid_sim_pin_hint, true);
            mPinEntry.setText("");
            mCallback.userActivity(0);
            return;
@@ -216,7 +216,8 @@ public class KeyguardSimPinView extends LinearLayout
                                KeyguardUpdateMonitor.getInstance(getContext()).reportSimUnlocked();
                                mCallback.dismiss(true);
                            } else {
                                mSecurityMessageDisplay.setMessage(R.string.kg_password_wrong_pin_code);
                                mSecurityMessageDisplay.setMessage
                                    (R.string.kg_password_wrong_pin_code, true);
                                mPinEntry.setText("");
                            }
                            mCallback.userActivity(0);
Loading