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

Commit 1e4a4bdb authored by Jason Chang's avatar Jason Chang
Browse files

[SystemUI] To plumb down ColorStateList all the way down instead of int colors...

[SystemUI] To plumb down ColorStateList all the way down instead of int colors in KeyguardHostView.java and its collaborative files.

To plumb down ColorStateList all the way down instead of int colors in KeyguardHostView.java and its collaborative files.

Bug: 79721803
Test: manually test for UI
Change-Id: I69df1a13db5153ca36cf39f7b818d6c3d27ee107
parent 5cbad094
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import static com.android.internal.util.LatencyTracker.ACTION_CHECK_CREDENTIAL;
import static com.android.internal.util.LatencyTracker.ACTION_CHECK_CREDENTIAL_UNLOCKED;

import android.content.Context;
import android.content.res.ColorStateList;
import android.os.AsyncTask;
import android.os.CountDownTimer;
import android.os.SystemClock;
@@ -293,8 +294,8 @@ public abstract class KeyguardAbsKeyInputView extends LinearLayout
    }

    @Override
    public void showMessage(CharSequence message, int color) {
        mSecurityMessageDisplay.setNextMessageColor(color);
    public void showMessage(CharSequence message, ColorStateList colorState) {
        mSecurityMessageDisplay.setNextMessageColor(colorState);
        mSecurityMessageDisplay.setMessage(message);
    }

+4 −3
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;
import android.content.res.Resources;
import android.content.res.ColorStateList;
import android.graphics.Canvas;
import android.media.AudioManager;
import android.os.SystemClock;
@@ -175,12 +176,12 @@ public class KeyguardHostView extends FrameLayout implements SecurityCallback {
        mSecurityContainer.showPromptReason(reason);
    }

    public void showMessage(CharSequence message, int color) {
        mSecurityContainer.showMessage(message, color);
    public void showMessage(CharSequence message, ColorStateList colorState) {
        mSecurityContainer.showMessage(message, colorState);
    }

    public void showErrorMessage(CharSequence message) {
        showMessage(message, Utils.getColorErrorDefaultColor(mContext));
        showMessage(message, Utils.getColorError(mContext));
    }

    /**
+11 −10
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.keyguard;

import android.content.Context;
import android.content.res.ColorStateList;
import android.os.Handler;
import android.os.Looper;
import android.os.SystemClock;
@@ -42,10 +43,10 @@ class KeyguardMessageArea extends TextView implements SecurityMessageDisplay {
    private static final int DEFAULT_COLOR = -1;

    private final Handler mHandler;
    private final int mDefaultColor;
    private final ColorStateList mDefaultColorState;

    private CharSequence mMessage;
    private int mNextMessageColor = DEFAULT_COLOR;
    private ColorStateList mNextMessageColorState = ColorStateList.valueOf(DEFAULT_COLOR);

    private KeyguardUpdateMonitorCallback mInfoCallback = new KeyguardUpdateMonitorCallback() {
        public void onFinishedGoingToSleep(int why) {
@@ -71,13 +72,13 @@ class KeyguardMessageArea extends TextView implements SecurityMessageDisplay {
        monitor.registerCallback(mInfoCallback);
        mHandler = new Handler(Looper.myLooper());

        mDefaultColor = getCurrentTextColor();
        mDefaultColorState = getTextColors();
        update();
    }

    @Override
    public void setNextMessageColor(int color) {
        mNextMessageColor = color;
    public void setNextMessageColor(ColorStateList colorState) {
        mNextMessageColorState = colorState;
    }

    @Override
@@ -139,12 +140,12 @@ class KeyguardMessageArea extends TextView implements SecurityMessageDisplay {
        CharSequence status = mMessage;
        setVisibility(TextUtils.isEmpty(status) ? INVISIBLE : VISIBLE);
        setText(status);
        int color = mDefaultColor;
        if (mNextMessageColor != DEFAULT_COLOR) {
            color = mNextMessageColor;
            mNextMessageColor = DEFAULT_COLOR;
        ColorStateList colorState = mDefaultColorState;
        if (mNextMessageColorState.getDefaultColor() != DEFAULT_COLOR) {
            colorState = mNextMessageColorState;
            mNextMessageColorState = ColorStateList.valueOf(DEFAULT_COLOR);
        }
        setTextColor(color);
        setTextColor(colorState);
    }


+3 −2
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ import static com.android.internal.util.LatencyTracker.ACTION_CHECK_CREDENTIAL;
import static com.android.internal.util.LatencyTracker.ACTION_CHECK_CREDENTIAL_UNLOCKED;

import android.content.Context;
import android.content.res.ColorStateList;
import android.graphics.Rect;
import android.os.AsyncTask;
import android.os.CountDownTimer;
@@ -404,8 +405,8 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
    }

    @Override
    public void showMessage(CharSequence message, int color) {
        mSecurityMessageDisplay.setNextMessageColor(color);
    public void showMessage(CharSequence message, ColorStateList colorState) {
        mSecurityMessageDisplay.setNextMessageColor(colorState);
        mSecurityMessageDisplay.setMessage(message);
    }

+3 −2
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.app.Activity;
import android.app.AlertDialog;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
import android.content.res.ColorStateList;
import android.os.UserHandle;
import androidx.annotation.VisibleForTesting;
import android.util.AttributeSet;
@@ -537,9 +538,9 @@ public class KeyguardSecurityContainer extends FrameLayout implements KeyguardSe
        }
    }

    public void showMessage(CharSequence message, int color) {
    public void showMessage(CharSequence message, ColorStateList colorState) {
        if (mCurrentSecuritySelection != SecurityMode.None) {
            getSecurityView(mCurrentSecuritySelection).showMessage(message, color);
            getSecurityView(mCurrentSecuritySelection).showMessage(message, colorState);
        }
    }

Loading