Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 91d1815b authored by Lucas Dupin's avatar Lucas Dupin Committed by Android (Google) Code Review
Browse files

Merge "Add dumpsys to KeyguardStatusViewController" into udc-qpr-dev

parents e1663611 7a65d78a
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -113,6 +113,7 @@ public class KeyguardStatusView extends GridLayout {
    public void dump(PrintWriter pw, String[] args) {
    public void dump(PrintWriter pw, String[] args) {
        pw.println("KeyguardStatusView:");
        pw.println("KeyguardStatusView:");
        pw.println("  mDarkAmount: " + mDarkAmount);
        pw.println("  mDarkAmount: " + mDarkAmount);
        pw.println("  visibility: " + getVisibility());
        if (mClockView != null) {
        if (mClockView != null) {
            mClockView.dump(pw, args);
            mClockView.dump(pw, args);
        }
        }
+26 −3
Original line number Original line Diff line number Diff line
@@ -37,6 +37,7 @@ import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.FrameLayout;


import androidx.annotation.NonNull;
import androidx.annotation.VisibleForTesting;
import androidx.annotation.VisibleForTesting;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.ConstraintSet;
import androidx.constraintlayout.widget.ConstraintSet;
@@ -46,7 +47,9 @@ import com.android.app.animation.Interpolators;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.keyguard.KeyguardClockSwitch.ClockSize;
import com.android.keyguard.KeyguardClockSwitch.ClockSize;
import com.android.keyguard.logging.KeyguardLogger;
import com.android.keyguard.logging.KeyguardLogger;
import com.android.systemui.Dumpable;
import com.android.systemui.R;
import com.android.systemui.R;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.plugins.ClockController;
import com.android.systemui.plugins.ClockController;
import com.android.systemui.statusbar.notification.AnimatableProperty;
import com.android.systemui.statusbar.notification.AnimatableProperty;
@@ -59,14 +62,17 @@ import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.KeyguardStateController;
import com.android.systemui.statusbar.policy.KeyguardStateController;
import com.android.systemui.util.ViewController;
import com.android.systemui.util.ViewController;


import java.io.PrintWriter;

import javax.inject.Inject;
import javax.inject.Inject;


/**
/**
 * Injectable controller for {@link KeyguardStatusView}.
 * Injectable controller for {@link KeyguardStatusView}.
 */
 */
public class KeyguardStatusViewController extends ViewController<KeyguardStatusView> {
public class KeyguardStatusViewController extends ViewController<KeyguardStatusView> implements
        Dumpable {
    private static final boolean DEBUG = KeyguardConstants.DEBUG;
    private static final boolean DEBUG = KeyguardConstants.DEBUG;
    private static final String TAG = "KeyguardStatusViewController";
    @VisibleForTesting static final String TAG = "KeyguardStatusViewController";


    /**
    /**
     * Duration to use for the animator when the keyguard status view alignment changes, and a
     * Duration to use for the animator when the keyguard status view alignment changes, and a
@@ -88,6 +94,8 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV


    private Boolean mStatusViewCentered = true;
    private Boolean mStatusViewCentered = true;


    private DumpManager mDumpManager;

    private final TransitionListenerAdapter mKeyguardStatusAlignmentTransitionListener =
    private final TransitionListenerAdapter mKeyguardStatusAlignmentTransitionListener =
            new TransitionListenerAdapter() {
            new TransitionListenerAdapter() {
                @Override
                @Override
@@ -113,7 +121,8 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
            ScreenOffAnimationController screenOffAnimationController,
            ScreenOffAnimationController screenOffAnimationController,
            KeyguardLogger logger,
            KeyguardLogger logger,
            FeatureFlags featureFlags,
            FeatureFlags featureFlags,
            InteractionJankMonitor interactionJankMonitor) {
            InteractionJankMonitor interactionJankMonitor,
            DumpManager dumpManager) {
        super(keyguardStatusView);
        super(keyguardStatusView);
        mKeyguardSliceViewController = keyguardSliceViewController;
        mKeyguardSliceViewController = keyguardSliceViewController;
        mKeyguardClockSwitchController = keyguardClockSwitchController;
        mKeyguardClockSwitchController = keyguardClockSwitchController;
@@ -124,11 +133,13 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
                logger.getBuffer());
                logger.getBuffer());
        mInteractionJankMonitor = interactionJankMonitor;
        mInteractionJankMonitor = interactionJankMonitor;
        mFeatureFlags = featureFlags;
        mFeatureFlags = featureFlags;
        mDumpManager = dumpManager;
    }
    }


    @Override
    @Override
    public void onInit() {
    public void onInit() {
        mKeyguardClockSwitchController.init();
        mKeyguardClockSwitchController.init();
        mDumpManager.registerDumpable(this);
    }
    }


    @Override
    @Override
@@ -143,6 +154,13 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
        mConfigurationController.removeCallback(mConfigurationListener);
        mConfigurationController.removeCallback(mConfigurationListener);
    }
    }


    /**
     * Called in notificationPanelViewController to avoid leak
     */
    public void onDestroy() {
        mDumpManager.unregisterDumpable(TAG);
    }

    /**
    /**
     * Updates views on doze time tick.
     * Updates views on doze time tick.
     */
     */
@@ -440,6 +458,11 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
        constraintSet.applyTo(notifContainerParent);
        constraintSet.applyTo(notifContainerParent);
    }
    }


    @Override
    public void dump(@NonNull PrintWriter pw, @NonNull String[] args) {
        mView.dump(pw, args);
    }

    @VisibleForTesting
    @VisibleForTesting
    static class SplitShadeTransitionAdapter extends Transition {
    static class SplitShadeTransitionAdapter extends Transition {
        private static final String PROP_BOUNDS_LEFT = "splitShadeTransitionAdapter:boundsLeft";
        private static final String PROP_BOUNDS_LEFT = "splitShadeTransitionAdapter:boundsLeft";
+2 −0
Original line number Original line Diff line number Diff line
@@ -31,6 +31,7 @@ import com.android.systemui.statusbar.notification.stack.AnimationProperties;
import com.android.systemui.statusbar.phone.DozeParameters;
import com.android.systemui.statusbar.phone.DozeParameters;
import com.android.systemui.statusbar.phone.ScreenOffAnimationController;
import com.android.systemui.statusbar.phone.ScreenOffAnimationController;
import com.android.systemui.statusbar.policy.KeyguardStateController;
import com.android.systemui.statusbar.policy.KeyguardStateController;
import com.android.systemui.util.Assert;


import com.google.errorprone.annotations.CompileTimeConstant;
import com.google.errorprone.annotations.CompileTimeConstant;


@@ -85,6 +86,7 @@ public class KeyguardVisibilityHelper {
            boolean keyguardFadingAway,
            boolean keyguardFadingAway,
            boolean goingToFullShade,
            boolean goingToFullShade,
            int oldStatusBarState) {
            int oldStatusBarState) {
        Assert.isMainThread();
        PropertyAnimator.cancelAnimation(mView, AnimatableProperty.ALPHA);
        PropertyAnimator.cancelAnimation(mView, AnimatableProperty.ALPHA);
        boolean isOccluded = mKeyguardStateController.isOccluded();
        boolean isOccluded = mKeyguardStateController.isOccluded();
        mKeyguardViewVisibilityAnimating = false;
        mKeyguardViewVisibilityAnimating = false;
+3 −0
Original line number Original line Diff line number Diff line
@@ -1169,6 +1169,9 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
    private void updateViewControllers(KeyguardStatusView keyguardStatusView,
    private void updateViewControllers(KeyguardStatusView keyguardStatusView,
            FrameLayout userAvatarView,
            FrameLayout userAvatarView,
            KeyguardUserSwitcherView keyguardUserSwitcherView) {
            KeyguardUserSwitcherView keyguardUserSwitcherView) {
        if (mKeyguardStatusViewController != null) {
            mKeyguardStatusViewController.onDestroy();
        }
        // Re-associate the KeyguardStatusViewController
        // Re-associate the KeyguardStatusViewController
        KeyguardStatusViewComponent statusViewComponent =
        KeyguardStatusViewComponent statusViewComponent =
                mKeyguardStatusViewComponentFactory.build(keyguardStatusView);
                mKeyguardStatusViewComponentFactory.build(keyguardStatusView);
+13 −1
Original line number Original line Diff line number Diff line
@@ -27,6 +27,7 @@ import android.testing.AndroidTestingRunner;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.keyguard.logging.KeyguardLogger;
import com.android.keyguard.logging.KeyguardLogger;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.plugins.ClockConfig;
import com.android.systemui.plugins.ClockConfig;
import com.android.systemui.plugins.ClockController;
import com.android.systemui.plugins.ClockController;
@@ -62,6 +63,8 @@ public class KeyguardStatusViewControllerTest extends SysuiTestCase {
    @Mock private FeatureFlags mFeatureFlags;
    @Mock private FeatureFlags mFeatureFlags;
    @Mock private InteractionJankMonitor mInteractionJankMonitor;
    @Mock private InteractionJankMonitor mInteractionJankMonitor;


    @Mock private DumpManager mDumpManager;

    @Captor
    @Captor
    private ArgumentCaptor<KeyguardUpdateMonitorCallback> mKeyguardUpdateMonitorCallbackCaptor;
    private ArgumentCaptor<KeyguardUpdateMonitorCallback> mKeyguardUpdateMonitorCallbackCaptor;


@@ -82,7 +85,8 @@ public class KeyguardStatusViewControllerTest extends SysuiTestCase {
                mScreenOffAnimationController,
                mScreenOffAnimationController,
                mKeyguardLogger,
                mKeyguardLogger,
                mFeatureFlags,
                mFeatureFlags,
                mInteractionJankMonitor) {
                mInteractionJankMonitor,
                mDumpManager) {
                    @Override
                    @Override
                    void setProperty(
                    void setProperty(
                            AnimatableProperty property,
                            AnimatableProperty property,
@@ -170,4 +174,12 @@ public class KeyguardStatusViewControllerTest extends SysuiTestCase {
        verify(mKeyguardClockSwitchController, times(1)).setSplitShadeEnabled(false);
        verify(mKeyguardClockSwitchController, times(1)).setSplitShadeEnabled(false);
        verify(mKeyguardClockSwitchController, times(0)).setSplitShadeEnabled(true);
        verify(mKeyguardClockSwitchController, times(0)).setSplitShadeEnabled(true);
    }
    }

    @Test
    public void correctlyDump() {
        mController.onInit();
        verify(mDumpManager).registerDumpable(mController);
        mController.onDestroy();
        verify(mDumpManager, times(1)).unregisterDumpable(KeyguardStatusViewController.TAG);
    }
}
}
Loading