From d05064b8503465f9e3d6ad278cbc51deec827c69 Mon Sep 17 00:00:00 2001 From: Jorim Jaggi Date: Thu, 20 Nov 2014 21:35:33 +0100 Subject: [PATCH] Tint SIM images in PIN/PUK screen Bug: 18147652 Change-Id: Ic077a80883782c228dce0d4537e4c7e5e3caf2b4 --- packages/Keyguard/res/layout/keyguard_sim_pin_view.xml | 1 + packages/Keyguard/res/layout/keyguard_sim_puk_view.xml | 1 + .../src/com/android/keyguard/KeyguardSimPinView.java | 10 ++++++++++ .../src/com/android/keyguard/KeyguardSimPukView.java | 10 ++++++++++ 4 files changed, 22 insertions(+) diff --git a/packages/Keyguard/res/layout/keyguard_sim_pin_view.xml b/packages/Keyguard/res/layout/keyguard_sim_pin_view.xml index 4f35daf1b23ba..c702c8dc69e46 100644 --- a/packages/Keyguard/res/layout/keyguard_sim_pin_view.xml +++ b/packages/Keyguard/res/layout/keyguard_sim_pin_view.xml @@ -30,6 +30,7 @@ android:contentDescription="@string/keyguard_accessibility_pin_unlock"> diff --git a/packages/Keyguard/res/layout/keyguard_sim_puk_view.xml b/packages/Keyguard/res/layout/keyguard_sim_puk_view.xml index 41484e223a330..f6edd83c1031d 100644 --- a/packages/Keyguard/res/layout/keyguard_sim_puk_view.xml +++ b/packages/Keyguard/res/layout/keyguard_sim_puk_view.xml @@ -30,6 +30,7 @@ android:gravity="center_horizontal"> diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java index d8feaf8ae03f9..5b210363b0018 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPinView.java @@ -22,11 +22,13 @@ import com.android.internal.telephony.IccCardConstants.State; import com.android.internal.telephony.PhoneConstants; import android.content.Context; +import android.content.res.ColorStateList; import android.content.res.Resources; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.app.Dialog; import android.app.ProgressDialog; +import android.graphics.Color; import android.os.RemoteException; import android.os.ServiceManager; import android.telephony.SubscriptionInfo; @@ -35,6 +37,7 @@ import android.telephony.TelephonyManager; import android.util.AttributeSet; import android.util.Log; import android.view.WindowManager; +import android.widget.ImageView; /** * Displays a PIN pad for unlocking. @@ -49,6 +52,7 @@ public class KeyguardSimPinView extends KeyguardPinBasedInputView { private AlertDialog mRemainingAttemptsDialog; private int mSubId; + private ImageView mSimImageView; KeyguardUpdateMonitorCallback mUpdateMonitorCallback = new KeyguardUpdateMonitorCallback() { @Override @@ -75,14 +79,19 @@ public class KeyguardSimPinView extends KeyguardPinBasedInputView { int count = TelephonyManager.getDefault().getSimCount(); Resources rez = getResources(); final String msg; + int color = Color.WHITE; if (count < 2) { msg = rez.getString(R.string.kg_sim_pin_instructions); } else { SubscriptionInfo info = monitor.getSubscriptionInfoForSubId(mSubId); CharSequence displayName = info != null ? info.getDisplayName() : ""; // don't crash msg = rez.getString(R.string.kg_sim_pin_instructions_multi, displayName); + if (info != null) { + color = info.getIconTint(); + } } mSecurityMessageDisplay.setMessage(msg, true); + mSimImageView.setImageTintList(ColorStateList.valueOf(color)); } } @@ -122,6 +131,7 @@ public class KeyguardSimPinView extends KeyguardPinBasedInputView { if (mEcaView instanceof EmergencyCarrierArea) { ((EmergencyCarrierArea) mEcaView).setCarrierTextVisible(true); } + mSimImageView = (ImageView) findViewById(R.id.keyguard_sim); } @Override diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java index c5d940c9950f0..d31074a3de572 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardSimPukView.java @@ -17,11 +17,13 @@ package com.android.keyguard; import android.content.Context; +import android.content.res.ColorStateList; import android.content.res.Resources; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.app.ProgressDialog; +import android.graphics.Color; import android.os.RemoteException; import android.os.ServiceManager; import android.telephony.SubscriptionInfo; @@ -30,6 +32,7 @@ import android.telephony.TelephonyManager; import android.util.AttributeSet; import android.util.Log; import android.view.WindowManager; +import android.widget.ImageView; import com.android.internal.telephony.ITelephony; import com.android.internal.telephony.IccCardConstants; @@ -52,6 +55,7 @@ public class KeyguardSimPukView extends KeyguardPinBasedInputView { private StateMachine mStateMachine = new StateMachine(); private AlertDialog mRemainingAttemptsDialog; private int mSubId; + private ImageView mSimImageView; KeyguardUpdateMonitorCallback mUpdateMonitorCallback = new KeyguardUpdateMonitorCallback() { @Override @@ -118,14 +122,19 @@ public class KeyguardSimPukView extends KeyguardPinBasedInputView { int count = TelephonyManager.getDefault().getSimCount(); Resources rez = getResources(); final String msg; + int color = Color.WHITE; if (count < 2) { msg = rez.getString(R.string.kg_puk_enter_puk_hint); } else { SubscriptionInfo info = monitor.getSubscriptionInfoForSubId(mSubId); CharSequence displayName = info != null ? info.getDisplayName() : ""; msg = rez.getString(R.string.kg_puk_enter_puk_hint_multi, displayName); + if (info != null) { + color = info.getIconTint(); + } } mSecurityMessageDisplay.setMessage(msg, true); + mSimImageView.setImageTintList(ColorStateList.valueOf(color)); } mPasswordEntry.requestFocus(); } @@ -172,6 +181,7 @@ public class KeyguardSimPukView extends KeyguardPinBasedInputView { if (mEcaView instanceof EmergencyCarrierArea) { ((EmergencyCarrierArea) mEcaView).setCarrierTextVisible(true); } + mSimImageView = (ImageView) findViewById(R.id.keyguard_sim); } @Override