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

Commit 09e8303f authored by Xiyuan Xia's avatar Xiyuan Xia Committed by Android (Google) Code Review
Browse files

Merge "Clear security message on user input" into mnc-dev

parents a0f6b87b 09eb0337
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -174,9 +174,16 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout
        }.start();
    }

    protected void onUserInput() {
        if (mCallback != null) {
            mCallback.userActivity();
        }
        mSecurityMessageDisplay.setMessage("", false);
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        mCallback.userActivity();
        onUserInput();
        return false;
    }

+14 −0
Original line number Diff line number Diff line
@@ -88,24 +88,33 @@ class KeyguardMessageArea extends TextView {
            }
        }

        @Override
        public void setMessage(CharSequence msg, boolean important) {
            if (!TextUtils.isEmpty(msg) && important) {
                mMessageArea.mMessage = msg;
                mMessageArea.securityMessageChanged();
            } else {
                mMessageArea.clearMessage();
            }
        }

        @Override
        public void setMessage(int resId, boolean important) {
            if (resId != 0 && important) {
                mMessageArea.mMessage = mMessageArea.getContext().getResources().getText(resId);
                mMessageArea.securityMessageChanged();
            } else {
                mMessageArea.clearMessage();
            }
        }

        @Override
        public void setMessage(int resId, boolean important, Object... formatArgs) {
            if (resId != 0 && important) {
                mMessageArea.mMessage = mMessageArea.getContext().getString(resId, formatArgs);
                mMessageArea.securityMessageChanged();
            } else {
                mMessageArea.clearMessage();
            }
        }

@@ -176,6 +185,11 @@ class KeyguardMessageArea extends TextView {
                (SystemClock.uptimeMillis() + ANNOUNCEMENT_DELAY));
    }

    public void clearMessage() {
        mHandler.removeCallbacks(mClearMessageRunnable);
        mHandler.post(mClearMessageRunnable);
    }

    /**
     * Update the status lines based on these rules:
     * AlarmStatus: Alarm state always gets it's own line.
+6 −14
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.Context;
import android.graphics.Rect;
import android.text.Editable;
import android.text.InputType;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.text.method.TextKeyListener;
import android.util.AttributeSet;
@@ -138,20 +139,6 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView
        // Set selected property on so the view can send accessibility events.
        mPasswordEntry.setSelected(true);

        mPasswordEntry.addTextChangedListener(new TextWatcher() {
            public void onTextChanged(CharSequence s, int start, int before, int count) {
            }

            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            }

            public void afterTextChanged(Editable s) {
                if (mCallback != null) {
                    mCallback.userActivity();
                }
            }
        });

        mPasswordEntry.requestFocus();

        // If there's more than one IME, enable the IME switcher button
@@ -293,6 +280,11 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView

    @Override
    public void afterTextChanged(Editable s) {
        // Poor man's user edit detection, assuming empty text is programmatic and everything else
        // is from the user.
        if (!TextUtils.isEmpty(s)) {
            onUserInput();
        }
    }

    @Override
+1 −0
Original line number Diff line number Diff line
@@ -208,6 +208,7 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit

        public void onPatternStart() {
            mLockPatternView.removeCallbacks(mCancelPatternRunnable);
            mSecurityMessageDisplay.setMessage("", false);
        }

        public void onPatternCleared() {
+8 −1
Original line number Diff line number Diff line
@@ -148,7 +148,14 @@ public abstract class KeyguardPinBasedInputView extends KeyguardAbsKeyInputView
        // Poke the wakelock any time the text is selected or modified
        mPasswordEntry.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                mCallback.userActivity();
                onUserInput();
            }
        });

        mPasswordEntry.setUserActivityListener(new PasswordTextView.UserActivityListener() {
            @Override
            public void onUserActivity() {
                onUserInput();
            }
        });

Loading