Merge "Set Visibility on ClockSwitch Animation" into tm-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
00020dbde2
@@ -209,6 +209,7 @@ public class KeyguardClockSwitch extends RelativeLayout {
|
||||
|
||||
if (!animate) {
|
||||
out.setAlpha(0f);
|
||||
out.setVisibility(INVISIBLE);
|
||||
in.setAlpha(1f);
|
||||
in.setVisibility(VISIBLE);
|
||||
mStatusArea.setTranslationY(statusAreaYTranslation);
|
||||
@@ -224,7 +225,10 @@ public class KeyguardClockSwitch extends RelativeLayout {
|
||||
direction * -mClockSwitchYAmount));
|
||||
mClockOutAnim.addListener(new AnimatorListenerAdapter() {
|
||||
public void onAnimationEnd(Animator animation) {
|
||||
mClockOutAnim = null;
|
||||
if (mClockOutAnim == animation) {
|
||||
out.setVisibility(INVISIBLE);
|
||||
mClockOutAnim = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -238,7 +242,9 @@ public class KeyguardClockSwitch extends RelativeLayout {
|
||||
mClockInAnim.setStartDelay(CLOCK_OUT_MILLIS / 2);
|
||||
mClockInAnim.addListener(new AnimatorListenerAdapter() {
|
||||
public void onAnimationEnd(Animator animation) {
|
||||
mClockInAnim = null;
|
||||
if (mClockInAnim == animation) {
|
||||
mClockInAnim = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -251,7 +257,9 @@ public class KeyguardClockSwitch extends RelativeLayout {
|
||||
mStatusAreaAnim.setInterpolator(Interpolators.FAST_OUT_SLOW_IN);
|
||||
mStatusAreaAnim.addListener(new AnimatorListenerAdapter() {
|
||||
public void onAnimationEnd(Animator animation) {
|
||||
mStatusAreaAnim = null;
|
||||
if (mStatusAreaAnim == animation) {
|
||||
mStatusAreaAnim = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
mStatusAreaAnim.start();
|
||||
|
||||
@@ -346,10 +346,6 @@ public class KeyguardClockSwitchController extends ViewController<KeyguardClockS
|
||||
int clockHeight = clock.getLargeClock().getView().getHeight();
|
||||
return frameHeight / 2 + clockHeight / 2 + mKeyguardLargeClockTopMargin / -2;
|
||||
} else {
|
||||
// This is only called if we've never shown the large clock as the frame is inflated
|
||||
// with 'gone', but then the visibility is never set when it is animated away by
|
||||
// KeyguardClockSwitch, instead it is removed from the view hierarchy.
|
||||
// TODO(b/261755021): Cleanup Large Frame Visibility
|
||||
int clockHeight = clock.getSmallClock().getView().getHeight();
|
||||
return clockHeight + statusBarHeaderHeight + mKeyguardSmallClockTopMargin;
|
||||
}
|
||||
@@ -367,15 +363,11 @@ public class KeyguardClockSwitchController extends ViewController<KeyguardClockS
|
||||
if (mLargeClockFrame.getVisibility() == View.VISIBLE) {
|
||||
return clock.getLargeClock().getView().getHeight();
|
||||
} else {
|
||||
// Is not called except in certain edge cases, see comment in getClockBottom
|
||||
// TODO(b/261755021): Cleanup Large Frame Visibility
|
||||
return clock.getSmallClock().getView().getHeight();
|
||||
}
|
||||
}
|
||||
|
||||
boolean isClockTopAligned() {
|
||||
// Returns false except certain edge cases, see comment in getClockBottom
|
||||
// TODO(b/261755021): Cleanup Large Frame Visibility
|
||||
return mLargeClockFrame.getVisibility() != View.VISIBLE;
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.keyguard;
|
||||
|
||||
import static android.view.View.INVISIBLE;
|
||||
import static android.view.View.VISIBLE;
|
||||
|
||||
import static com.android.keyguard.KeyguardClockSwitch.LARGE;
|
||||
@@ -189,6 +190,7 @@ public class KeyguardClockSwitchTest extends SysuiTestCase {
|
||||
assertThat(mLargeClockFrame.getAlpha()).isEqualTo(1);
|
||||
assertThat(mLargeClockFrame.getVisibility()).isEqualTo(VISIBLE);
|
||||
assertThat(mSmallClockFrame.getAlpha()).isEqualTo(0);
|
||||
assertThat(mSmallClockFrame.getVisibility()).isEqualTo(INVISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -198,6 +200,7 @@ public class KeyguardClockSwitchTest extends SysuiTestCase {
|
||||
assertThat(mLargeClockFrame.getAlpha()).isEqualTo(1);
|
||||
assertThat(mLargeClockFrame.getVisibility()).isEqualTo(VISIBLE);
|
||||
assertThat(mSmallClockFrame.getAlpha()).isEqualTo(0);
|
||||
assertThat(mSmallClockFrame.getVisibility()).isEqualTo(INVISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -212,6 +215,7 @@ public class KeyguardClockSwitchTest extends SysuiTestCase {
|
||||
// only big clock is removed at switch
|
||||
assertThat(mLargeClockFrame.getParent()).isNull();
|
||||
assertThat(mLargeClockFrame.getAlpha()).isEqualTo(0);
|
||||
assertThat(mLargeClockFrame.getVisibility()).isEqualTo(INVISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -223,6 +227,7 @@ public class KeyguardClockSwitchTest extends SysuiTestCase {
|
||||
// only big clock is removed at switch
|
||||
assertThat(mLargeClockFrame.getParent()).isNull();
|
||||
assertThat(mLargeClockFrame.getAlpha()).isEqualTo(0);
|
||||
assertThat(mLargeClockFrame.getVisibility()).isEqualTo(INVISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user