Merge "Tie bouncer over dream state to visibility." into tm-qpr-dev
This commit is contained in:
@@ -44,6 +44,7 @@ import com.android.systemui.statusbar.phone.panelstate.PanelExpansionChangeEvent
|
|||||||
import com.android.wm.shell.animation.FlingAnimationUtils;
|
import com.android.wm.shell.animation.FlingAnimationUtils;
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import javax.inject.Named;
|
import javax.inject.Named;
|
||||||
|
|
||||||
@@ -153,8 +154,6 @@ public class BouncerSwipeTouchHandler implements DreamTouchHandler {
|
|||||||
|
|
||||||
private void setPanelExpansion(float expansion, float dragDownAmount) {
|
private void setPanelExpansion(float expansion, float dragDownAmount) {
|
||||||
mCurrentExpansion = expansion;
|
mCurrentExpansion = expansion;
|
||||||
mCentralSurfaces.ifPresent(centralSurfaces -> centralSurfaces.setBouncerShowingOverDream(
|
|
||||||
mCurrentExpansion != KeyguardBouncer.EXPANSION_HIDDEN));
|
|
||||||
PanelExpansionChangeEvent event =
|
PanelExpansionChangeEvent event =
|
||||||
new PanelExpansionChangeEvent(
|
new PanelExpansionChangeEvent(
|
||||||
/* fraction= */ mCurrentExpansion,
|
/* fraction= */ mCurrentExpansion,
|
||||||
|
|||||||
@@ -164,6 +164,10 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onVisibilityChanged(boolean isVisible) {
|
public void onVisibilityChanged(boolean isVisible) {
|
||||||
|
mCentralSurfaces
|
||||||
|
.setBouncerShowingOverDream(
|
||||||
|
isVisible && mDreamOverlayStateController.isOverlayActive());
|
||||||
|
|
||||||
if (!isVisible) {
|
if (!isVisible) {
|
||||||
mCentralSurfaces.setBouncerHiddenFraction(KeyguardBouncer.EXPANSION_HIDDEN);
|
mCentralSurfaces.setBouncerHiddenFraction(KeyguardBouncer.EXPANSION_HIDDEN);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -428,7 +428,6 @@ public class BouncerSwipeTouchHandlerTest extends SysuiTestCase {
|
|||||||
@Test
|
@Test
|
||||||
public void testInformBouncerShowingOnExpand() {
|
public void testInformBouncerShowingOnExpand() {
|
||||||
swipeToPosition(1f, Direction.UP, 0);
|
swipeToPosition(1f, Direction.UP, 0);
|
||||||
verify(mCentralSurfaces).setBouncerShowingOverDream(true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -441,7 +440,6 @@ public class BouncerSwipeTouchHandlerTest extends SysuiTestCase {
|
|||||||
Mockito.clearInvocations(mCentralSurfaces);
|
Mockito.clearInvocations(mCentralSurfaces);
|
||||||
|
|
||||||
swipeToPosition(0f, Direction.DOWN, 0);
|
swipeToPosition(0f, Direction.DOWN, 0);
|
||||||
verify(mCentralSurfaces).setBouncerShowingOverDream(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -61,7 +61,9 @@ import com.google.common.truth.Truth;
|
|||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.ArgumentCaptor;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
|
import org.mockito.Mockito;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.MockitoAnnotations;
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
@@ -97,6 +99,7 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase {
|
|||||||
@Mock private LatencyTracker mLatencyTracker;
|
@Mock private LatencyTracker mLatencyTracker;
|
||||||
|
|
||||||
private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager;
|
private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager;
|
||||||
|
private KeyguardBouncer.BouncerExpansionCallback mBouncerExpansionCallback;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
@@ -136,6 +139,11 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase {
|
|||||||
mBypassController);
|
mBypassController);
|
||||||
when(mKeyguardStateController.isOccluded()).thenReturn(false);
|
when(mKeyguardStateController.isOccluded()).thenReturn(false);
|
||||||
mStatusBarKeyguardViewManager.show(null);
|
mStatusBarKeyguardViewManager.show(null);
|
||||||
|
ArgumentCaptor<KeyguardBouncer.BouncerExpansionCallback> callbackArgumentCaptor =
|
||||||
|
ArgumentCaptor.forClass(KeyguardBouncer.BouncerExpansionCallback.class);
|
||||||
|
verify(mKeyguardBouncerFactory).create(any(ViewGroup.class),
|
||||||
|
callbackArgumentCaptor.capture());
|
||||||
|
mBouncerExpansionCallback = callbackArgumentCaptor.getValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -417,4 +425,24 @@ public class StatusBarKeyguardViewManagerTest extends SysuiTestCase {
|
|||||||
return new PanelExpansionChangeEvent(
|
return new PanelExpansionChangeEvent(
|
||||||
fraction, expanded, tracking, /* dragDownPxAmount= */ 0f);
|
fraction, expanded, tracking, /* dragDownPxAmount= */ 0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testReportBouncerOnDreamWhenVisible() {
|
||||||
|
mBouncerExpansionCallback.onVisibilityChanged(true);
|
||||||
|
verify(mCentralSurfaces).setBouncerShowingOverDream(false);
|
||||||
|
Mockito.clearInvocations(mCentralSurfaces);
|
||||||
|
when(mDreamOverlayStateController.isOverlayActive()).thenReturn(true);
|
||||||
|
mBouncerExpansionCallback.onVisibilityChanged(true);
|
||||||
|
verify(mCentralSurfaces).setBouncerShowingOverDream(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testReportBouncerOnDreamWhenNotVisible() {
|
||||||
|
mBouncerExpansionCallback.onVisibilityChanged(false);
|
||||||
|
verify(mCentralSurfaces).setBouncerShowingOverDream(false);
|
||||||
|
Mockito.clearInvocations(mCentralSurfaces);
|
||||||
|
when(mDreamOverlayStateController.isOverlayActive()).thenReturn(true);
|
||||||
|
mBouncerExpansionCallback.onVisibilityChanged(false);
|
||||||
|
verify(mCentralSurfaces).setBouncerShowingOverDream(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user