Merge "Fix double SCM Restart Icon" into tm-qpr-dev am: a1531f2c28
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21096323 Change-Id: Ibcaf7fe23199415d0903a9a02801c216f5ab45c7 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -215,8 +215,14 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract {
|
|||||||
: taskStableBounds.right - taskBounds.left - mLayout.getMeasuredWidth();
|
: taskStableBounds.right - taskBounds.left - mLayout.getMeasuredWidth();
|
||||||
final int positionY = taskStableBounds.bottom - taskBounds.top
|
final int positionY = taskStableBounds.bottom - taskBounds.top
|
||||||
- mLayout.getMeasuredHeight();
|
- mLayout.getMeasuredHeight();
|
||||||
|
// To secure a proper visualisation, we hide the layout while updating the position of
|
||||||
|
// the {@link SurfaceControl} it belongs.
|
||||||
|
final int oldVisibility = mLayout.getVisibility();
|
||||||
|
if (oldVisibility == View.VISIBLE) {
|
||||||
|
mLayout.setVisibility(View.GONE);
|
||||||
|
}
|
||||||
updateSurfacePosition(positionX, positionY);
|
updateSurfacePosition(positionX, positionY);
|
||||||
|
mLayout.setVisibility(oldVisibility);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateVisibilityOfViews() {
|
private void updateVisibilityOfViews() {
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import static org.junit.Assert.assertFalse;
|
|||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
import static org.junit.Assert.assertTrue;
|
import static org.junit.Assert.assertTrue;
|
||||||
import static org.mockito.ArgumentMatchers.anyBoolean;
|
import static org.mockito.ArgumentMatchers.anyBoolean;
|
||||||
|
import static org.mockito.Mockito.atLeastOnce;
|
||||||
import static org.mockito.Mockito.clearInvocations;
|
import static org.mockito.Mockito.clearInvocations;
|
||||||
import static org.mockito.Mockito.doReturn;
|
import static org.mockito.Mockito.doReturn;
|
||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
@@ -359,14 +360,14 @@ public class CompatUIWindowManagerTest extends ShellTestCase {
|
|||||||
mWindowManager.updateVisibility(/* canShow= */ false);
|
mWindowManager.updateVisibility(/* canShow= */ false);
|
||||||
|
|
||||||
verify(mWindowManager, never()).createLayout(anyBoolean());
|
verify(mWindowManager, never()).createLayout(anyBoolean());
|
||||||
verify(mLayout).setVisibility(View.GONE);
|
verify(mLayout, atLeastOnce()).setVisibility(View.GONE);
|
||||||
|
|
||||||
// Show button.
|
// Show button.
|
||||||
doReturn(View.GONE).when(mLayout).getVisibility();
|
doReturn(View.GONE).when(mLayout).getVisibility();
|
||||||
mWindowManager.updateVisibility(/* canShow= */ true);
|
mWindowManager.updateVisibility(/* canShow= */ true);
|
||||||
|
|
||||||
verify(mWindowManager, never()).createLayout(anyBoolean());
|
verify(mWindowManager, never()).createLayout(anyBoolean());
|
||||||
verify(mLayout).setVisibility(View.VISIBLE);
|
verify(mLayout, atLeastOnce()).setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
Reference in New Issue
Block a user