Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java +7 −21 Original line number Diff line number Diff line Loading @@ -18,10 +18,7 @@ package com.android.systemui.statusbar.phone; import static com.android.systemui.DejankUtils.whitelistIpcs; import static com.android.systemui.ScreenDecorations.DisplayCutoutView.boundsFromDirection; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_IN; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_OUT; import android.animation.ValueAnimator; import android.annotation.ColorInt; import android.content.Context; import android.content.res.Configuration; Loading Loading @@ -51,8 +48,6 @@ import com.android.systemui.R; import com.android.systemui.animation.Interpolators; import com.android.systemui.plugins.DarkIconDispatcher.DarkReceiver; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.statusbar.events.SystemStatusAnimationCallback; import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.phone.StatusBarIconController.TintedIconManager; import com.android.systemui.statusbar.policy.BatteryController; import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback; Loading @@ -70,8 +65,7 @@ import java.util.List; */ public class KeyguardStatusBarView extends RelativeLayout implements BatteryStateChangeCallback, OnUserInfoChangedListener, SystemStatusAnimationCallback { OnUserInfoChangedListener { private static final int LAYOUT_NONE = 0; private static final int LAYOUT_CUTOUT = 1; Loading Loading @@ -102,7 +96,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements private ViewGroup mStatusIconArea; private int mLayoutState = LAYOUT_NONE; private SystemStatusAnimationScheduler mAnimationScheduler; private FeatureFlags mFeatureFlags; /** Loading Loading @@ -140,7 +133,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements loadDimens(); loadBlockList(); mBatteryController = Dependency.get(BatteryController.class); mAnimationScheduler = Dependency.get(SystemStatusAnimationScheduler.class); mFeatureFlags = Dependency.get(FeatureFlags.class); } Loading Loading @@ -366,7 +358,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements mIconManager = new TintedIconManager(findViewById(R.id.statusIcons), mFeatureFlags); mIconManager.setBlockList(mBlockedIcons); Dependency.get(StatusBarIconController.class).addIconGroup(mIconManager); mAnimationScheduler.addCallback(this); } @Override Loading @@ -374,7 +365,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements super.onDetachedFromWindow(); Dependency.get(UserInfoController.class).removeCallback(this); Dependency.get(StatusBarIconController.class).removeIconGroup(mIconManager); mAnimationScheduler.removeCallback(this); } @Override Loading Loading @@ -522,19 +512,16 @@ public class KeyguardStatusBarView extends RelativeLayout implements } } /** SystemStatusAnimationCallback */ @Override public void onSystemChromeAnimationStart() { if (mAnimationScheduler.getAnimationState() == ANIMATING_OUT) { void onSystemChromeAnimationStart(boolean isAnimatingOut) { if (isAnimatingOut) { mSystemIconsContainer.setVisibility(View.VISIBLE); mSystemIconsContainer.setAlpha(0f); } } @Override public void onSystemChromeAnimationEnd() { void onSystemChromeAnimationEnd(boolean isAnimatingIn) { // Make sure the system icons are out of the way if (mAnimationScheduler.getAnimationState() == ANIMATING_IN) { if (isAnimatingIn) { mSystemIconsContainer.setVisibility(View.INVISIBLE); mSystemIconsContainer.setAlpha(0f); } else { Loading @@ -543,9 +530,8 @@ public class KeyguardStatusBarView extends RelativeLayout implements } } @Override public void onSystemChromeAnimationUpdate(ValueAnimator anim) { mSystemIconsContainer.setAlpha((float) anim.getAnimatedValue()); void onSystemChromeAnimationUpdate(float animatedValue) { mSystemIconsContainer.setAlpha(animatedValue); } @Override Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewController.java +35 −1 Original line number Diff line number Diff line Loading @@ -16,7 +16,16 @@ package com.android.systemui.statusbar.phone; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_IN; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_OUT; import android.animation.ValueAnimator; import androidx.annotation.NonNull; import com.android.keyguard.CarrierTextController; import com.android.systemui.statusbar.events.SystemStatusAnimationCallback; import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.util.ViewController; Loading @@ -26,6 +35,7 @@ import javax.inject.Inject; public class KeyguardStatusBarViewController extends ViewController<KeyguardStatusBarView> { private final CarrierTextController mCarrierTextController; private final ConfigurationController mConfigurationController; private final SystemStatusAnimationScheduler mAnimationScheduler; private final ConfigurationController.ConfigurationListener mConfigurationListener = new ConfigurationController.ConfigurationListener() { Loading @@ -46,14 +56,36 @@ public class KeyguardStatusBarViewController extends ViewController<KeyguardStat } }; private final SystemStatusAnimationCallback mAnimationCallback = new SystemStatusAnimationCallback() { @Override public void onSystemChromeAnimationStart() { mView.onSystemChromeAnimationStart( mAnimationScheduler.getAnimationState() == ANIMATING_OUT); } @Override public void onSystemChromeAnimationEnd() { mView.onSystemChromeAnimationEnd( mAnimationScheduler.getAnimationState() == ANIMATING_IN); } @Override public void onSystemChromeAnimationUpdate(@NonNull ValueAnimator anim) { mView.onSystemChromeAnimationUpdate((float) anim.getAnimatedValue()); } }; @Inject public KeyguardStatusBarViewController( KeyguardStatusBarView view, CarrierTextController carrierTextController, ConfigurationController configurationController) { ConfigurationController configurationController, SystemStatusAnimationScheduler animationScheduler) { super(view); mCarrierTextController = carrierTextController; mConfigurationController = configurationController; mAnimationScheduler = animationScheduler; } @Override Loading @@ -65,12 +97,14 @@ public class KeyguardStatusBarViewController extends ViewController<KeyguardStat @Override protected void onViewAttached() { mConfigurationController.addCallback(mConfigurationListener); mAnimationScheduler.addCallback(mAnimationCallback); onThemeChanged(); } @Override protected void onViewDetached() { mConfigurationController.removeCallback(mConfigurationListener); mAnimationScheduler.removeCallback(mAnimationCallback); } /** Should be called when the theme changes. */ Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewControllerTest.java +7 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import androidx.test.filters.SmallTest; import com.android.keyguard.CarrierTextController; import com.android.systemui.SysuiTestCase; import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.policy.ConfigurationController; import org.junit.Before; Loading @@ -39,6 +40,8 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { private CarrierTextController mCarrierTextController; @Mock private ConfigurationController mConfigurationController; @Mock private SystemStatusAnimationScheduler mAnimationScheduler; private KeyguardStatusBarViewController mController; Loading @@ -49,7 +52,8 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { mController = new KeyguardStatusBarViewController( mKeyguardStatusBarView, mCarrierTextController, mConfigurationController mConfigurationController, mAnimationScheduler ); } Loading @@ -58,6 +62,7 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { mController.onViewAttached(); verify(mConfigurationController).addCallback(any()); verify(mAnimationScheduler).addCallback(any()); } @Test Loading @@ -65,5 +70,6 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { mController.onViewDetached(); verify(mConfigurationController).removeCallback(any()); verify(mAnimationScheduler).removeCallback(any()); } } Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java +7 −21 Original line number Diff line number Diff line Loading @@ -18,10 +18,7 @@ package com.android.systemui.statusbar.phone; import static com.android.systemui.DejankUtils.whitelistIpcs; import static com.android.systemui.ScreenDecorations.DisplayCutoutView.boundsFromDirection; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_IN; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_OUT; import android.animation.ValueAnimator; import android.annotation.ColorInt; import android.content.Context; import android.content.res.Configuration; Loading Loading @@ -51,8 +48,6 @@ import com.android.systemui.R; import com.android.systemui.animation.Interpolators; import com.android.systemui.plugins.DarkIconDispatcher.DarkReceiver; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.statusbar.events.SystemStatusAnimationCallback; import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.phone.StatusBarIconController.TintedIconManager; import com.android.systemui.statusbar.policy.BatteryController; import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback; Loading @@ -70,8 +65,7 @@ import java.util.List; */ public class KeyguardStatusBarView extends RelativeLayout implements BatteryStateChangeCallback, OnUserInfoChangedListener, SystemStatusAnimationCallback { OnUserInfoChangedListener { private static final int LAYOUT_NONE = 0; private static final int LAYOUT_CUTOUT = 1; Loading Loading @@ -102,7 +96,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements private ViewGroup mStatusIconArea; private int mLayoutState = LAYOUT_NONE; private SystemStatusAnimationScheduler mAnimationScheduler; private FeatureFlags mFeatureFlags; /** Loading Loading @@ -140,7 +133,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements loadDimens(); loadBlockList(); mBatteryController = Dependency.get(BatteryController.class); mAnimationScheduler = Dependency.get(SystemStatusAnimationScheduler.class); mFeatureFlags = Dependency.get(FeatureFlags.class); } Loading Loading @@ -366,7 +358,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements mIconManager = new TintedIconManager(findViewById(R.id.statusIcons), mFeatureFlags); mIconManager.setBlockList(mBlockedIcons); Dependency.get(StatusBarIconController.class).addIconGroup(mIconManager); mAnimationScheduler.addCallback(this); } @Override Loading @@ -374,7 +365,6 @@ public class KeyguardStatusBarView extends RelativeLayout implements super.onDetachedFromWindow(); Dependency.get(UserInfoController.class).removeCallback(this); Dependency.get(StatusBarIconController.class).removeIconGroup(mIconManager); mAnimationScheduler.removeCallback(this); } @Override Loading Loading @@ -522,19 +512,16 @@ public class KeyguardStatusBarView extends RelativeLayout implements } } /** SystemStatusAnimationCallback */ @Override public void onSystemChromeAnimationStart() { if (mAnimationScheduler.getAnimationState() == ANIMATING_OUT) { void onSystemChromeAnimationStart(boolean isAnimatingOut) { if (isAnimatingOut) { mSystemIconsContainer.setVisibility(View.VISIBLE); mSystemIconsContainer.setAlpha(0f); } } @Override public void onSystemChromeAnimationEnd() { void onSystemChromeAnimationEnd(boolean isAnimatingIn) { // Make sure the system icons are out of the way if (mAnimationScheduler.getAnimationState() == ANIMATING_IN) { if (isAnimatingIn) { mSystemIconsContainer.setVisibility(View.INVISIBLE); mSystemIconsContainer.setAlpha(0f); } else { Loading @@ -543,9 +530,8 @@ public class KeyguardStatusBarView extends RelativeLayout implements } } @Override public void onSystemChromeAnimationUpdate(ValueAnimator anim) { mSystemIconsContainer.setAlpha((float) anim.getAnimatedValue()); void onSystemChromeAnimationUpdate(float animatedValue) { mSystemIconsContainer.setAlpha(animatedValue); } @Override Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewController.java +35 −1 Original line number Diff line number Diff line Loading @@ -16,7 +16,16 @@ package com.android.systemui.statusbar.phone; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_IN; import static com.android.systemui.statusbar.events.SystemStatusAnimationSchedulerKt.ANIMATING_OUT; import android.animation.ValueAnimator; import androidx.annotation.NonNull; import com.android.keyguard.CarrierTextController; import com.android.systemui.statusbar.events.SystemStatusAnimationCallback; import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.util.ViewController; Loading @@ -26,6 +35,7 @@ import javax.inject.Inject; public class KeyguardStatusBarViewController extends ViewController<KeyguardStatusBarView> { private final CarrierTextController mCarrierTextController; private final ConfigurationController mConfigurationController; private final SystemStatusAnimationScheduler mAnimationScheduler; private final ConfigurationController.ConfigurationListener mConfigurationListener = new ConfigurationController.ConfigurationListener() { Loading @@ -46,14 +56,36 @@ public class KeyguardStatusBarViewController extends ViewController<KeyguardStat } }; private final SystemStatusAnimationCallback mAnimationCallback = new SystemStatusAnimationCallback() { @Override public void onSystemChromeAnimationStart() { mView.onSystemChromeAnimationStart( mAnimationScheduler.getAnimationState() == ANIMATING_OUT); } @Override public void onSystemChromeAnimationEnd() { mView.onSystemChromeAnimationEnd( mAnimationScheduler.getAnimationState() == ANIMATING_IN); } @Override public void onSystemChromeAnimationUpdate(@NonNull ValueAnimator anim) { mView.onSystemChromeAnimationUpdate((float) anim.getAnimatedValue()); } }; @Inject public KeyguardStatusBarViewController( KeyguardStatusBarView view, CarrierTextController carrierTextController, ConfigurationController configurationController) { ConfigurationController configurationController, SystemStatusAnimationScheduler animationScheduler) { super(view); mCarrierTextController = carrierTextController; mConfigurationController = configurationController; mAnimationScheduler = animationScheduler; } @Override Loading @@ -65,12 +97,14 @@ public class KeyguardStatusBarViewController extends ViewController<KeyguardStat @Override protected void onViewAttached() { mConfigurationController.addCallback(mConfigurationListener); mAnimationScheduler.addCallback(mAnimationCallback); onThemeChanged(); } @Override protected void onViewDetached() { mConfigurationController.removeCallback(mConfigurationListener); mAnimationScheduler.removeCallback(mAnimationCallback); } /** Should be called when the theme changes. */ Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewControllerTest.java +7 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import androidx.test.filters.SmallTest; import com.android.keyguard.CarrierTextController; import com.android.systemui.SysuiTestCase; import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler; import com.android.systemui.statusbar.policy.ConfigurationController; import org.junit.Before; Loading @@ -39,6 +40,8 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { private CarrierTextController mCarrierTextController; @Mock private ConfigurationController mConfigurationController; @Mock private SystemStatusAnimationScheduler mAnimationScheduler; private KeyguardStatusBarViewController mController; Loading @@ -49,7 +52,8 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { mController = new KeyguardStatusBarViewController( mKeyguardStatusBarView, mCarrierTextController, mConfigurationController mConfigurationController, mAnimationScheduler ); } Loading @@ -58,6 +62,7 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { mController.onViewAttached(); verify(mConfigurationController).addCallback(any()); verify(mAnimationScheduler).addCallback(any()); } @Test Loading @@ -65,5 +70,6 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase { mController.onViewDetached(); verify(mConfigurationController).removeCallback(any()); verify(mAnimationScheduler).removeCallback(any()); } }