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

Commit 3846b833 authored by Louis Chang's avatar Louis Chang Committed by Automerger Merge Worker
Browse files

Merge "Updates visibility before trying to notify task stack changes" into...

Merge "Updates visibility before trying to notify task stack changes" into rvc-dev am: 83dd0ade am: dd8fcbef am: 30034a1d am: e4272a64

Change-Id: I44723e21a649f89c80a7757856cd23836f1f50ce
parents caf3509e e4272a64
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1276,6 +1276,8 @@ class ActivityStack extends Task {
            prev.cpuTimeAtResume = 0; // reset it
        }

        mRootWindowContainer.ensureActivitiesVisible(resuming, 0, !PRESERVE_WINDOWS);

        // Notify when the task stack has changed, but only if visibilities changed (not just
        // focus). Also if there is an active pinned stack - we always want to notify it about
        // task stack changes, because its positioning may depend on it.
@@ -1284,8 +1286,6 @@ class ActivityStack extends Task {
            mAtmService.getTaskChangeNotificationController().notifyTaskStackChanged();
            mStackSupervisor.mAppVisibilitiesChangedSinceLastPause = false;
        }

        mRootWindowContainer.ensureActivitiesVisible(resuming, 0, !PRESERVE_WINDOWS);
    }

    boolean isTopStackInDisplayArea() {
+2 −0
Original line number Diff line number Diff line
@@ -58,6 +58,8 @@
                  android:screenOrientation="sensorLandscape"
                  android:showWhenLocked="true"
                  android:turnScreenOn="true" />
        <activity android:name="com.android.server.wm.TaskStackChangedListenerTest$ResumeWhilePausingActivity"
                  android:resumeWhilePausing="true"/>
        <activity android:name="com.android.server.wm.ScreenDecorWindowTests$TestActivity"
                  android:showWhenLocked="true" android:allowEmbedded="true"/>
    </application>
+25 −0
Original line number Diff line number Diff line
@@ -81,6 +81,7 @@ public class TaskStackChangedListenerTest {
    @Before
    public void setUp() throws Exception {
        mService = ActivityManager.getService();
        sTaskStackChangedCalled = false;
    }

    @After
@@ -112,6 +113,28 @@ public class TaskStackChangedListenerTest {
        assertTrue(sActivityBResumed);
    }

    @Test
    @Presubmit
    public void testTaskStackChanged_resumeWhilePausing() throws Exception {
        registerTaskStackChangedListener(new TaskStackListener() {
            @Override
            public void onTaskStackChanged() throws RemoteException {
                synchronized (sLock) {
                    sTaskStackChangedCalled = true;
                }
            }
        });

        final Context context = getInstrumentation().getContext();
        context.startActivity(new Intent(context, ResumeWhilePausingActivity.class).addFlags(
                Intent.FLAG_ACTIVITY_NEW_TASK));
        UiDevice.getInstance(getInstrumentation()).waitForIdle();

        synchronized (sLock) {
            assertTrue(sTaskStackChangedCalled);
        }
    }

    @Test
    @Presubmit
    public void testTaskDescriptionChanged() throws Exception {
@@ -617,5 +640,7 @@ public class TaskStackChangedListenerTest {
    // Activity that has {@link android.R.attr#resizeableActivity} attribute set to {@code true}
    public static class ActivityInActivityView extends TestActivity {}

    public static class ResumeWhilePausingActivity extends TestActivity {}

    public static class LandscapeActivity extends TestActivity {}
}