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

Commit c88da4ff authored by Nergi Rahardi's avatar Nergi Rahardi Committed by Android (Google) Code Review
Browse files

Merge "Refactor Inset tests to use WindowStateBuilder" into main

parents f10545a3 99657f4d
Loading
Loading
Loading
Loading
+13 −12
Original line number Diff line number Diff line
@@ -56,12 +56,13 @@ public class ImeInsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testTransparentControlTargetWindowCanShowIme() {
        final WindowState ime = createWindow(null, TYPE_INPUT_METHOD, "ime");
        final WindowState ime = newWindowBuilder("ime", TYPE_INPUT_METHOD).build();
        makeWindowVisibleAndDrawn(ime);
        mImeProvider.setWindowContainer(ime, null, null);

        final WindowState appWin = createWindow(null, TYPE_APPLICATION, "app");
        final WindowState popup = createWindow(appWin, TYPE_APPLICATION, "popup");
        final WindowState appWin = newWindowBuilder("app", TYPE_APPLICATION).build();
        final WindowState popup = newWindowBuilder("popup", TYPE_APPLICATION).setParent(
                appWin).build();
        popup.mAttrs.format = PixelFormat.TRANSPARENT;
        mDisplayContent.setImeLayeringTarget(appWin);
        mDisplayContent.updateImeInputAndControlTarget(popup);
@@ -77,11 +78,11 @@ public class ImeInsetsSourceProviderTest extends WindowTestsBase {
    @Test
    @RequiresFlagsDisabled(Flags.FLAG_REFACTOR_INSETS_CONTROLLER)
    public void testScheduleShowIme() {
        final WindowState ime = createWindow(null, TYPE_INPUT_METHOD, "ime");
        final WindowState ime = newWindowBuilder("ime", TYPE_INPUT_METHOD).build();
        makeWindowVisibleAndDrawn(ime);
        mImeProvider.setWindowContainer(ime, null, null);

        final WindowState target = createWindow(null, TYPE_APPLICATION, "app");
        final WindowState target = newWindowBuilder("app", TYPE_APPLICATION).build();
        mDisplayContent.setImeLayeringTarget(target);
        mDisplayContent.updateImeInputAndControlTarget(target);
        performSurfacePlacementAndWaitForWindowAnimator();
@@ -105,14 +106,14 @@ public class ImeInsetsSourceProviderTest extends WindowTestsBase {
    @Test
    @RequiresFlagsDisabled(Flags.FLAG_REFACTOR_INSETS_CONTROLLER)
    public void testScheduleShowIme_noInitialState() {
        final WindowState target = createWindow(null, TYPE_APPLICATION, "app");
        final WindowState target = newWindowBuilder("app", TYPE_APPLICATION).build();

        // Schedule before anything is ready.
        mImeProvider.scheduleShowImePostLayout(target, ImeTracker.Token.empty());
        assertFalse(mImeProvider.isScheduledAndReadyToShowIme());
        assertFalse(mImeProvider.isImeShowing());

        final WindowState ime = createWindow(null, TYPE_INPUT_METHOD, "ime");
        final WindowState ime = newWindowBuilder("ime", TYPE_INPUT_METHOD).build();
        makeWindowVisibleAndDrawn(ime);
        mImeProvider.setWindowContainer(ime, null, null);

@@ -133,11 +134,11 @@ public class ImeInsetsSourceProviderTest extends WindowTestsBase {
    @Test
    @RequiresFlagsDisabled(Flags.FLAG_REFACTOR_INSETS_CONTROLLER)
    public void testScheduleShowIme_delayedAfterPrepareSurfaces() {
        final WindowState ime = createWindow(null, TYPE_INPUT_METHOD, "ime");
        final WindowState ime = newWindowBuilder("ime", TYPE_INPUT_METHOD).build();
        makeWindowVisibleAndDrawn(ime);
        mImeProvider.setWindowContainer(ime, null, null);

        final WindowState target = createWindow(null, TYPE_APPLICATION, "app");
        final WindowState target = newWindowBuilder("app", TYPE_APPLICATION).build();
        mDisplayContent.setImeLayeringTarget(target);
        mDisplayContent.updateImeInputAndControlTarget(target);

@@ -166,11 +167,11 @@ public class ImeInsetsSourceProviderTest extends WindowTestsBase {
    @Test
    @RequiresFlagsDisabled(Flags.FLAG_REFACTOR_INSETS_CONTROLLER)
    public void testScheduleShowIme_delayedSurfacePlacement() {
        final WindowState ime = createWindow(null, TYPE_INPUT_METHOD, "ime");
        final WindowState ime = newWindowBuilder("ime", TYPE_INPUT_METHOD).build();
        makeWindowVisibleAndDrawn(ime);
        mImeProvider.setWindowContainer(ime, null, null);

        final WindowState target = createWindow(null, TYPE_APPLICATION, "app");
        final WindowState target = newWindowBuilder("app", TYPE_APPLICATION).build();
        mDisplayContent.setImeLayeringTarget(target);
        mDisplayContent.updateImeInputAndControlTarget(target);

@@ -191,7 +192,7 @@ public class ImeInsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testSetFrozen() {
        final WindowState ime = createWindow(null, TYPE_INPUT_METHOD, "ime");
        final WindowState ime = newWindowBuilder("ime", TYPE_INPUT_METHOD).build();
        makeWindowVisibleAndDrawn(ime);
        mImeProvider.setWindowContainer(ime, null, null);
        mImeProvider.setServerVisible(true);
+12 −9
Original line number Diff line number Diff line
@@ -106,8 +106,9 @@ public class InsetsPolicyTest extends WindowTestsBase {
        addStatusBar();
        addNavigationBar();

        final WindowState win = createWindow(null, WINDOWING_MODE_FREEFORM,
                ACTIVITY_TYPE_STANDARD, TYPE_APPLICATION, mDisplayContent, "app");
        final WindowState win = newWindowBuilder("app", TYPE_APPLICATION).setActivityType(
                ACTIVITY_TYPE_STANDARD).setWindowingMode(WINDOWING_MODE_FREEFORM).setDisplay(
                mDisplayContent).build();
        final InsetsSourceControl[] controls = addWindowAndGetControlsForDispatch(win);

        // The app must not control any system bars.
@@ -120,8 +121,9 @@ public class InsetsPolicyTest extends WindowTestsBase {
        addStatusBar();
        addNavigationBar();

        final WindowState win = createWindow(null, WINDOWING_MODE_FREEFORM,
                ACTIVITY_TYPE_STANDARD, TYPE_APPLICATION, mDisplayContent, "app");
        final WindowState win = newWindowBuilder("app", TYPE_APPLICATION).setActivityType(
                ACTIVITY_TYPE_STANDARD).setWindowingMode(WINDOWING_MODE_FREEFORM).setDisplay(
                mDisplayContent).build();
        win.setBounds(new Rect());
        final InsetsSourceControl[] controls = addWindowAndGetControlsForDispatch(win);

@@ -136,8 +138,9 @@ public class InsetsPolicyTest extends WindowTestsBase {
        addStatusBar();
        addNavigationBar();

        final WindowState win = createWindow(null, WINDOWING_MODE_FREEFORM,
                ACTIVITY_TYPE_STANDARD, TYPE_APPLICATION, mDisplayContent, "app");
        final WindowState win = newWindowBuilder("app", TYPE_APPLICATION).setActivityType(
                ACTIVITY_TYPE_STANDARD).setWindowingMode(WINDOWING_MODE_FREEFORM).setDisplay(
                mDisplayContent).build();
        win.getTask().setBounds(new Rect(1, 1, 10, 10));
        final InsetsSourceControl[] controls = addWindowAndGetControlsForDispatch(win);

@@ -582,7 +585,7 @@ public class InsetsPolicyTest extends WindowTestsBase {

    private WindowState addNavigationBar() {
        final Binder owner = new Binder();
        final WindowState win = createWindow(null, TYPE_NAVIGATION_BAR, "navBar");
        final WindowState win = newWindowBuilder("navBar", TYPE_NAVIGATION_BAR).build();
        win.mAttrs.flags |= FLAG_NOT_FOCUSABLE;
        win.mAttrs.providedInsets = new InsetsFrameProvider[] {
                new InsetsFrameProvider(owner, 0, WindowInsets.Type.navigationBars()),
@@ -595,7 +598,7 @@ public class InsetsPolicyTest extends WindowTestsBase {

    private WindowState addStatusBar() {
        final Binder owner = new Binder();
        final WindowState win = createWindow(null, TYPE_STATUS_BAR, "statusBar");
        final WindowState win = newWindowBuilder("statusBar", TYPE_STATUS_BAR).build();
        win.mAttrs.flags |= FLAG_NOT_FOCUSABLE;
        win.mAttrs.providedInsets = new InsetsFrameProvider[] {
                new InsetsFrameProvider(owner, 0, WindowInsets.Type.statusBars()),
@@ -607,7 +610,7 @@ public class InsetsPolicyTest extends WindowTestsBase {
    }

    private WindowState addWindow(int type, String name) {
        final WindowState win = createWindow(null, type, name);
        final WindowState win = newWindowBuilder(name, type).build();
        mDisplayContent.getDisplayPolicy().addWindowLw(win, win.mAttrs);
        return win;
    }
+21 −21
Original line number Diff line number Diff line
@@ -63,7 +63,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testPostLayout() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        statusBar.setBounds(0, 0, 500, 1000);
        statusBar.getFrame().set(0, 0, 500, 100);
        statusBar.mHasSurface = true;
@@ -81,7 +81,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testPostLayout_invisible() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        statusBar.setBounds(0, 0, 500, 1000);
        statusBar.getFrame().set(0, 0, 500, 100);
        mProvider.setWindowContainer(statusBar, null, null);
@@ -93,7 +93,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testPostLayout_frameProvider() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);
        statusBar.mHasSurface = true;
        mProvider.setWindowContainer(statusBar,
@@ -108,8 +108,8 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testUpdateControlForTarget() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState target = createWindow(null, TYPE_APPLICATION, "target");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        final WindowState target = newWindowBuilder("target", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);

        // We must not have control or control target before we have the insets source window.
@@ -153,8 +153,8 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testUpdateControlForFakeTarget() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState target = createWindow(null, TYPE_APPLICATION, "target");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        final WindowState target = newWindowBuilder("target", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);
        mProvider.setWindowContainer(statusBar, null, null);
        mProvider.updateFakeControlTarget(target);
@@ -166,10 +166,10 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testGetLeash() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState target = createWindow(null, TYPE_APPLICATION, "target");
        final WindowState fakeTarget = createWindow(null, TYPE_APPLICATION, "fakeTarget");
        final WindowState otherTarget = createWindow(null, TYPE_APPLICATION, "otherTarget");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        final WindowState target = newWindowBuilder("target", TYPE_APPLICATION).build();
        final WindowState fakeTarget = newWindowBuilder("fakeTarget", TYPE_APPLICATION).build();
        final WindowState otherTarget = newWindowBuilder("otherTarget", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);

        // We must not have control or control target before we have the insets source window,
@@ -208,7 +208,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testUpdateSourceFrame() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        mProvider.setWindowContainer(statusBar, null, null);
        statusBar.setBounds(0, 0, 500, 1000);

@@ -238,7 +238,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testUpdateSourceFrameForIme() {
        final WindowState inputMethod = createWindow(null, TYPE_INPUT_METHOD, "inputMethod");
        final WindowState inputMethod = newWindowBuilder("inputMethod", TYPE_INPUT_METHOD).build();

        inputMethod.getFrame().set(new Rect(0, 400, 500, 500));

@@ -262,9 +262,9 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testUpdateInsetsControlPosition() {
        final WindowState target = createWindow(null, TYPE_APPLICATION, "target");
        final WindowState target = newWindowBuilder("target", TYPE_APPLICATION).build();

        final WindowState ime1 = createWindow(null, TYPE_INPUT_METHOD, "ime1");
        final WindowState ime1 = newWindowBuilder("ime1", TYPE_INPUT_METHOD).build();
        ime1.getFrame().set(new Rect(0, 0, 0, 0));
        mImeProvider.setWindowContainer(ime1, null, null);
        mImeProvider.updateControlForTarget(target, false /* force */, null /* statsToken */);
@@ -272,7 +272,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {
        mImeProvider.updateInsetsControlPosition(ime1);
        assertEquals(new Point(0, 400), mImeProvider.getControl(target).getSurfacePosition());

        final WindowState ime2 = createWindow(null, TYPE_INPUT_METHOD, "ime2");
        final WindowState ime2 = newWindowBuilder("ime2", TYPE_INPUT_METHOD).build();
        ime2.getFrame().set(new Rect(0, 0, 0, 0));
        mImeProvider.setWindowContainer(ime2, null, null);
        mImeProvider.updateControlForTarget(target, false /* force */, null /* statsToken */);
@@ -283,8 +283,8 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testSetRequestedVisibleTypes() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState target = createWindow(null, TYPE_APPLICATION, "target");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        final WindowState target = newWindowBuilder("target", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);
        mProvider.setWindowContainer(statusBar, null, null);
        mProvider.updateControlForTarget(target, false /* force */, null /* statsToken */);
@@ -295,8 +295,8 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testSetRequestedVisibleTypes_noControl() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState target = createWindow(null, TYPE_APPLICATION, "target");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        final WindowState target = newWindowBuilder("target", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);
        mProvider.setWindowContainer(statusBar, null, null);
        target.setRequestedVisibleTypes(0, statusBars());
@@ -306,7 +306,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {

    @Test
    public void testInsetGeometries() {
        final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
        final WindowState statusBar = newWindowBuilder("statusBar", TYPE_APPLICATION).build();
        statusBar.getFrame().set(0, 0, 500, 100);
        statusBar.mHasSurface = true;
        mProvider.setWindowContainer(statusBar, null, null);
+48 −44

File changed.

Preview size limit exceeded, changes collapsed.