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

Commit 6d6166e8 authored by Chris Li's avatar Chris Li
Browse files

Fix test with WindowStateResizeItemFlag

Fix: 307778536
Test: atest WmTests:ActivityRecordTests
Change-Id: I9e68458798da70c1145b22680f6c97dc7372c966
parent cd544e65
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -125,6 +125,7 @@ import android.app.servertransaction.ActivityConfigurationChangeItem;
import android.app.servertransaction.ClientTransaction;
import android.app.servertransaction.DestroyActivityItem;
import android.app.servertransaction.PauseActivityItem;
import android.app.servertransaction.WindowStateResizeItem;
import android.content.ComponentName;
import android.content.Intent;
import android.content.pm.ActivityInfo;
@@ -3341,6 +3342,7 @@ public class ActivityRecordTests extends WindowTestsBase {
        // Simulate switching to app2 to make it visible to be IME targets.
        spyOn(app2);
        spyOn(app2.mClient);
        spyOn(app2.getProcess());
        ArgumentCaptor<InsetsState> insetsStateCaptor = ArgumentCaptor.forClass(InsetsState.class);
        doReturn(true).when(app2).isReadyToDispatchInsetsState();
        mDisplayContent.setImeLayeringTarget(app2);
@@ -3351,9 +3353,15 @@ public class ActivityRecordTests extends WindowTestsBase {
        // Verify after unfreezing app2's IME insets state, we won't dispatch visible IME insets
        // to client if the app didn't request IME visible.
        assertFalse(app2.mActivityRecord.mImeInsetsFrozenUntilStartInput);

        if (mWm.mFlags.mWindowStateResizeItemFlag) {
            verify(app2.getProcess()).scheduleClientTransactionItem(
                    isA(WindowStateResizeItem.class));
        } else {
            verify(app2.mClient, atLeastOnce()).resized(any(), anyBoolean(), any(),
                    insetsStateCaptor.capture(), anyBoolean(), anyBoolean(), anyInt(), anyInt(),
                    anyBoolean());
        }
        assertFalse(app2.getInsetsState().isSourceOrDefaultVisible(ID_IME, ime()));
    }