summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Lucas Dupin <dupin@google.com> 2018-10-10 13:53:20 -0700
committer Lucas Dupin <dupin@google.com> 2018-10-10 13:53:20 -0700
commitc90a6bf698eef75d03f8bf839d0965b9fc0f36de (patch)
treef6637fc8de87e4ff79aeeb4c535fe3dda54dfa99
parent803a52498b022303e725de72f9eb96b16cb3a898 (diff)
Tint lock icon when entering ambient mode
Lock screen might be using the light theme, where icons are black. This would make the auth icon invisible in AOD. Test: manual Bug: 111405682 Change-Id: Ifc992348ea81f3ecadd4b1f02e5aff128b6adf04
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java4
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java1
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java18
3 files changed, 19 insertions, 4 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java
index 9d773edec551..18151d0e794a 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java
@@ -54,10 +54,10 @@ public class KeyguardAffordanceView extends ImageView {
public static final float MAX_ICON_SCALE_AMOUNT = 1.5f;
public static final float MIN_ICON_SCALE_AMOUNT = 0.8f;
+ protected final int mDarkIconColor;
+ protected final int mNormalColor;
private final int mMinBackgroundRadius;
private final Paint mCirclePaint;
- private final int mDarkIconColor;
- private final int mNormalColor;
private final ArgbEvaluator mColorInterpolator;
private final FlingAnimationUtils mFlingAnimationUtils;
private float mCircleRadius;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java
index 538a260b4b8e..ae1353dd220c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java
@@ -561,6 +561,7 @@ public class KeyguardBottomAreaView extends FrameLayout implements View.OnClickL
}
mDarkAmount = darkAmount;
mIndicationArea.setAlpha(1f - darkAmount);
+ mLockIcon.setDarkAmount(darkAmount);
}
private static boolean isSuccessfulLaunch(int result) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java
index 2edc294084cd..d5067b5c7e8c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java
@@ -18,13 +18,14 @@ package com.android.systemui.statusbar.phone;
import android.content.Context;
import android.content.res.Configuration;
+import android.graphics.Color;
+import android.graphics.PorterDuff;
import android.graphics.drawable.AnimatedVectorDrawable;
import android.graphics.drawable.Drawable;
-import android.graphics.drawable.InsetDrawable;
import android.util.AttributeSet;
-import android.view.View;
import android.view.accessibility.AccessibilityNodeInfo;
+import com.android.internal.graphics.ColorUtils;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.systemui.R;
import com.android.systemui.statusbar.KeyguardAffordanceView;
@@ -58,6 +59,7 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
private int mDensity;
private final Runnable mDrawOffTimeout = () -> update(true /* forceUpdate */);
+ private float mDarkAmount;
public LockIcon(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -130,6 +132,7 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
? (AnimatedVectorDrawable) icon
: null;
setImageDrawable(icon, false);
+ updateDarkTint();
if (mHasFaceUnlockIcon) {
announceForAccessibility(getContext().getString(
R.string.accessibility_scanning_face));
@@ -259,4 +262,15 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
return STATE_LOCKED;
}
}
+
+ public void setDarkAmount(float darkAmount) {
+ mDarkAmount = darkAmount;
+ updateDarkTint();
+ }
+
+ private void updateDarkTint() {
+ Drawable drawable = getDrawable().mutate();
+ int color = ColorUtils.blendARGB(Color.TRANSPARENT, Color.WHITE, mDarkAmount);
+ drawable.setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
+ }
}