Merge "Animate owner info during wake-up transition" into pi-dev
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java
index 49dba68..41df196 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java
@@ -282,6 +282,7 @@
mClockView.setPivotX(mClockView.getWidth() / 2);
mClockView.setPivotY(0);
mLastLayoutHeight = getHeight();
+ layoutOwnerInfo();
}
@Override
@@ -418,9 +419,11 @@
if (mLogoutView != null) {
mLogoutView.setAlpha(dark ? 0 : 1);
}
+
if (mOwnerInfo != null) {
boolean hasText = !TextUtils.isEmpty(mOwnerInfo.getText());
- mOwnerInfo.setVisibility(hasText && mDarkAmount != 1 ? VISIBLE : GONE);
+ mOwnerInfo.setVisibility(hasText ? VISIBLE : GONE);
+ layoutOwnerInfo();
}
final int blendedTextColor = ColorUtils.blendARGB(mTextColor, Color.WHITE, mDarkAmount);
@@ -430,6 +433,20 @@
mClockSeparator.setBackgroundColor(blendedTextColor);
}
+ private void layoutOwnerInfo() {
+ if (mOwnerInfo != null && mOwnerInfo.getVisibility() != GONE) {
+ // Animate owner info during wake-up transition
+ mOwnerInfo.setAlpha(1f - mDarkAmount);
+
+ float ratio = mDarkAmount;
+ // Calculate how much of it we should crop in order to have a smooth transition
+ int collapsed = mOwnerInfo.getTop() - mOwnerInfo.getPaddingTop();
+ int expanded = mOwnerInfo.getBottom() + mOwnerInfo.getPaddingBottom();
+ int toRemove = (int) ((expanded - collapsed) * ratio);
+ setBottom(getMeasuredHeight() - toRemove);
+ }
+ }
+
public void setPulsing(boolean pulsing, boolean animate) {
mPulsing = pulsing;
mKeyguardSlice.setPulsing(pulsing, animate);