Loading packages/SystemUI/src/com/android/keyguard/KeyguardHostViewController.java +16 −17 Original line number Diff line number Diff line Loading @@ -202,8 +202,11 @@ public class KeyguardHostViewController extends ViewController<KeyguardHostView> mKeyguardSecurityContainerController.onPause(); } public void resetSecurityContainer() { mKeyguardSecurityContainerController.reset(); /** * Reinflate the view flipper child view. */ public void reinflateViewFlipper() { mKeyguardSecurityContainerController.reinflateViewFlipper(); } /** Loading Loading @@ -232,12 +235,9 @@ public class KeyguardHostViewController extends ViewController<KeyguardHostView> /** * Starts the animation when the Keyguard gets shown. */ public void appear(int statusBarHeight) { public void appear() { // We might still be collapsed and the view didn't have time to layout yet or still // be small, let's wait on the predraw to do the animation in that case. if (mView.getHeight() != 0 && mView.getHeight() != statusBarHeight) { mKeyguardSecurityContainerController.startAppearAnimation(); } else { mView.getViewTreeObserver().addOnPreDrawListener( new ViewTreeObserver.OnPreDrawListener() { @Override Loading @@ -249,7 +249,6 @@ public class KeyguardHostViewController extends ViewController<KeyguardHostView> }); mView.requestLayout(); } } /** * Show a string explaining why the security view needs to be solved. Loading packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainerController.java +6 −3 Original line number Diff line number Diff line Loading @@ -743,17 +743,20 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard } private void reloadColors() { resetViewFlipper(); reinflateViewFlipper(); mView.reloadColors(); } /** Handles density or font scale changes. */ private void onDensityOrFontScaleChanged() { resetViewFlipper(); reinflateViewFlipper(); mView.onDensityOrFontScaleChanged(); } private void resetViewFlipper() { /** * Reinflate the view flipper child view. */ public void reinflateViewFlipper() { mSecurityViewFlipperController.clearViews(); mSecurityViewFlipperController.getSecurityView(mCurrentSecurityMode, mKeyguardSecurityCallback); Loading packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBouncerViewBinder.kt +3 −14 Original line number Diff line number Diff line Loading @@ -22,7 +22,6 @@ import android.view.ViewGroup import android.window.OnBackAnimationCallback import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle import com.android.internal.policy.SystemBarUtils import com.android.keyguard.KeyguardHostViewController import com.android.keyguard.KeyguardSecurityModel import com.android.keyguard.KeyguardUpdateMonitor Loading Loading @@ -98,14 +97,14 @@ object KeyguardBouncerViewBinder { viewModel.setBouncerViewDelegate(delegate) launch { viewModel.show.collect { // Reset Security Container entirely. hostViewController.reinflateViewFlipper() hostViewController.showPromptReason(it.promptReason) it.errorMessage?.let { errorMessage -> hostViewController.showErrorMessage(errorMessage) } hostViewController.showPrimarySecurityScreen() hostViewController.appear( SystemBarUtils.getStatusBarHeight(view.context) ) hostViewController.appear() hostViewController.onResume() } } Loading @@ -114,7 +113,6 @@ object KeyguardBouncerViewBinder { viewModel.hide.collect { hostViewController.cancelDismissAction() hostViewController.cleanUp() hostViewController.resetSecurityContainer() } } Loading Loading @@ -159,15 +157,6 @@ object KeyguardBouncerViewBinder { } } launch { viewModel.isBouncerVisible .filter { !it } .collect { // Remove existing input for security reasons. hostViewController.resetSecurityContainer() } } launch { viewModel.keyguardPosition.collect { position -> hostViewController.updateKeyguardPosition(position) Loading packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerControllerTest.java +8 −0 Original line number Diff line number Diff line Loading @@ -600,6 +600,14 @@ public class KeyguardSecurityContainerControllerTest extends SysuiTestCase { any(KeyguardSecurityCallback.class)); } @Test public void testReinflateViewFlipper() { mKeyguardSecurityContainerController.reinflateViewFlipper(); verify(mKeyguardSecurityViewFlipperController).clearViews(); verify(mKeyguardSecurityViewFlipperController).getSecurityView(any(SecurityMode.class), any(KeyguardSecurityCallback.class)); } private KeyguardSecurityContainer.SwipeListener getRegisteredSwipeListener() { mKeyguardSecurityContainerController.onViewAttached(); verify(mView).setSwipeListener(mSwipeListenerArgumentCaptor.capture()); Loading Loading
packages/SystemUI/src/com/android/keyguard/KeyguardHostViewController.java +16 −17 Original line number Diff line number Diff line Loading @@ -202,8 +202,11 @@ public class KeyguardHostViewController extends ViewController<KeyguardHostView> mKeyguardSecurityContainerController.onPause(); } public void resetSecurityContainer() { mKeyguardSecurityContainerController.reset(); /** * Reinflate the view flipper child view. */ public void reinflateViewFlipper() { mKeyguardSecurityContainerController.reinflateViewFlipper(); } /** Loading Loading @@ -232,12 +235,9 @@ public class KeyguardHostViewController extends ViewController<KeyguardHostView> /** * Starts the animation when the Keyguard gets shown. */ public void appear(int statusBarHeight) { public void appear() { // We might still be collapsed and the view didn't have time to layout yet or still // be small, let's wait on the predraw to do the animation in that case. if (mView.getHeight() != 0 && mView.getHeight() != statusBarHeight) { mKeyguardSecurityContainerController.startAppearAnimation(); } else { mView.getViewTreeObserver().addOnPreDrawListener( new ViewTreeObserver.OnPreDrawListener() { @Override Loading @@ -249,7 +249,6 @@ public class KeyguardHostViewController extends ViewController<KeyguardHostView> }); mView.requestLayout(); } } /** * Show a string explaining why the security view needs to be solved. Loading
packages/SystemUI/src/com/android/keyguard/KeyguardSecurityContainerController.java +6 −3 Original line number Diff line number Diff line Loading @@ -743,17 +743,20 @@ public class KeyguardSecurityContainerController extends ViewController<Keyguard } private void reloadColors() { resetViewFlipper(); reinflateViewFlipper(); mView.reloadColors(); } /** Handles density or font scale changes. */ private void onDensityOrFontScaleChanged() { resetViewFlipper(); reinflateViewFlipper(); mView.onDensityOrFontScaleChanged(); } private void resetViewFlipper() { /** * Reinflate the view flipper child view. */ public void reinflateViewFlipper() { mSecurityViewFlipperController.clearViews(); mSecurityViewFlipperController.getSecurityView(mCurrentSecurityMode, mKeyguardSecurityCallback); Loading
packages/SystemUI/src/com/android/systemui/keyguard/ui/binder/KeyguardBouncerViewBinder.kt +3 −14 Original line number Diff line number Diff line Loading @@ -22,7 +22,6 @@ import android.view.ViewGroup import android.window.OnBackAnimationCallback import androidx.lifecycle.Lifecycle import androidx.lifecycle.repeatOnLifecycle import com.android.internal.policy.SystemBarUtils import com.android.keyguard.KeyguardHostViewController import com.android.keyguard.KeyguardSecurityModel import com.android.keyguard.KeyguardUpdateMonitor Loading Loading @@ -98,14 +97,14 @@ object KeyguardBouncerViewBinder { viewModel.setBouncerViewDelegate(delegate) launch { viewModel.show.collect { // Reset Security Container entirely. hostViewController.reinflateViewFlipper() hostViewController.showPromptReason(it.promptReason) it.errorMessage?.let { errorMessage -> hostViewController.showErrorMessage(errorMessage) } hostViewController.showPrimarySecurityScreen() hostViewController.appear( SystemBarUtils.getStatusBarHeight(view.context) ) hostViewController.appear() hostViewController.onResume() } } Loading @@ -114,7 +113,6 @@ object KeyguardBouncerViewBinder { viewModel.hide.collect { hostViewController.cancelDismissAction() hostViewController.cleanUp() hostViewController.resetSecurityContainer() } } Loading Loading @@ -159,15 +157,6 @@ object KeyguardBouncerViewBinder { } } launch { viewModel.isBouncerVisible .filter { !it } .collect { // Remove existing input for security reasons. hostViewController.resetSecurityContainer() } } launch { viewModel.keyguardPosition.collect { position -> hostViewController.updateKeyguardPosition(position) Loading
packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerControllerTest.java +8 −0 Original line number Diff line number Diff line Loading @@ -600,6 +600,14 @@ public class KeyguardSecurityContainerControllerTest extends SysuiTestCase { any(KeyguardSecurityCallback.class)); } @Test public void testReinflateViewFlipper() { mKeyguardSecurityContainerController.reinflateViewFlipper(); verify(mKeyguardSecurityViewFlipperController).clearViews(); verify(mKeyguardSecurityViewFlipperController).getSecurityView(any(SecurityMode.class), any(KeyguardSecurityCallback.class)); } private KeyguardSecurityContainer.SwipeListener getRegisteredSwipeListener() { mKeyguardSecurityContainerController.onViewAttached(); verify(mView).setSwipeListener(mSwipeListenerArgumentCaptor.capture()); Loading