summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Adam Cohen <adamcohen@google.com> 2012-09-28 18:13:14 -0700
committer Adam Cohen <adamcohen@google.com> 2012-09-28 19:28:41 -0700
commit9654329008bfde134de63df06dc15ac0271a0d4c (patch)
tree90698c4ce177ff68cedfd93fc58297ad174539f9
parent42517367947047dd6cf7bd014e0c6d2db030af4e (diff)
Getting rid of blue outline in user switcher, instead brighten the user
Change-Id: I4817615cc28eb1fea35ecb5c3d69c4298c9cf2cf
-rw-r--r--core/res/res/drawable/kg_avatar_overlay.xml20
-rw-r--r--core/res/res/layout/keyguard_multi_user_avatar.xml4
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserAvatar.java31
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserSelectorView.java4
4 files changed, 24 insertions, 35 deletions
diff --git a/core/res/res/drawable/kg_avatar_overlay.xml b/core/res/res/drawable/kg_avatar_overlay.xml
deleted file mode 100644
index 781c1df6ac65..000000000000
--- a/core/res/res/drawable/kg_avatar_overlay.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:state_pressed="true"
- android:drawable="@drawable/activity_picker_bg_activated" />
-</selector> \ No newline at end of file
diff --git a/core/res/res/layout/keyguard_multi_user_avatar.xml b/core/res/res/layout/keyguard_multi_user_avatar.xml
index 23f9b6d45507..a3621c05029c 100644
--- a/core/res/res/layout/keyguard_multi_user_avatar.xml
+++ b/core/res/res/layout/keyguard_multi_user_avatar.xml
@@ -22,9 +22,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="125dp"
android:layout_height="125dp"
- android:background="#550000ff"
- android:gravity="center_horizontal"
- android:foreground="@drawable/kg_avatar_overlay">
+ android:gravity="center_horizontal">
<ImageView
android:id="@+id/keyguard_user_avatar"
android:scaleType="centerCrop"
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserAvatar.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserAvatar.java
index 759068ddbec7..8c1dfe19977b 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserAvatar.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserAvatar.java
@@ -45,6 +45,9 @@ class KeyguardMultiUserAvatar extends FrameLayout {
private boolean mInit = true;
private KeyguardMultiUserSelectorView mUserSelector;
+ boolean mPressedStateLocked = false;
+ boolean mTempPressedStateHolder = false;
+
public static KeyguardMultiUserAvatar fromXml(int resId, Context context,
KeyguardMultiUserSelectorView userSelector, UserInfo info) {
KeyguardMultiUserAvatar icon = (KeyguardMultiUserAvatar)
@@ -135,25 +138,33 @@ class KeyguardMultiUserAvatar extends FrameLayout {
}
}
- boolean mLockDrawableState = false;
-
- public void lockDrawableState() {
- mLockDrawableState = true;
+ public void lockPressedState() {
+ mPressedStateLocked = true;
}
- public void resetDrawableState() {
- mLockDrawableState = false;
+ public void resetPressedState() {
+ mPressedStateLocked = false;
post(new Runnable() {
@Override
public void run() {
- refreshDrawableState();
+ KeyguardMultiUserAvatar.this.setPressed(mTempPressedStateHolder);
}
});
}
- protected void drawableStateChanged() {
- if (!mLockDrawableState) {
- super.drawableStateChanged();
+ @Override
+ public void setPressed(boolean pressed) {
+ if (!mPressedStateLocked) {
+ super.setPressed(pressed);
+ if (pressed) {
+ mUserImage.setColorFilter(Color.argb(0, INACTIVE_COLOR,
+ INACTIVE_COLOR, INACTIVE_COLOR));
+ } else if (!mActive) {
+ mUserImage.setColorFilter(Color.argb(INACTIVE_ALPHA, INACTIVE_COLOR,
+ INACTIVE_COLOR, INACTIVE_COLOR));
+ }
+ } else {
+ mTempPressedStateHolder = pressed;
}
}
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserSelectorView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserSelectorView.java
index e4096b9d7097..3b45c227b2b9 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserSelectorView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMultiUserSelectorView.java
@@ -111,7 +111,7 @@ public class KeyguardMultiUserSelectorView extends FrameLayout implements View.O
return;
} else {
// Reset the previously active user to appear inactive
- avatar.lockDrawableState();
+ avatar.lockPressedState();
mCallback.hideSecurityView(FADE_OUT_ANIMATION_DURATION);
mActiveUserAvatar.setActive(false, true, SWITCH_ANIMATION_DURATION, new Runnable() {
@Override
@@ -120,7 +120,7 @@ public class KeyguardMultiUserSelectorView extends FrameLayout implements View.O
ActivityManagerNative.getDefault().switchUser(avatar.getUserInfo().id);
WindowManagerGlobal.getWindowManagerService().lockNow();
// Set the new active user, and make it appear active
- avatar.resetDrawableState();
+ avatar.resetPressedState();
mCallback.showSecurityView();
mActiveUserAvatar = avatar;
mActiveUserAvatar.setActive(true, false, 0, null);