Merge "Ensure that we are removing recent tasks for a user including their profiles" into qt-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
3da53d5297
@@ -2717,7 +2717,8 @@ public class ActivityStackSupervisor implements RecentTasks.Callbacks {
|
|||||||
if (activityOptions != null) {
|
if (activityOptions != null) {
|
||||||
activityType = activityOptions.getLaunchActivityType();
|
activityType = activityOptions.getLaunchActivityType();
|
||||||
windowingMode = activityOptions.getLaunchWindowingMode();
|
windowingMode = activityOptions.getLaunchWindowingMode();
|
||||||
if (activityOptions.freezeRecentTasksReordering()) {
|
if (activityOptions.freezeRecentTasksReordering()
|
||||||
|
&& mRecentTasks.isCallerRecents(callingUid)) {
|
||||||
mRecentTasks.setFreezeTaskListReordering();
|
mRecentTasks.setFreezeTaskListReordering();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -653,9 +653,11 @@ class RecentTasks {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void removeAllVisibleTasks(int userId) {
|
void removeAllVisibleTasks(int userId) {
|
||||||
|
Set<Integer> profileIds = getProfileIds(userId);
|
||||||
for (int i = mTasks.size() - 1; i >= 0; --i) {
|
for (int i = mTasks.size() - 1; i >= 0; --i) {
|
||||||
final TaskRecord tr = mTasks.get(i);
|
final TaskRecord tr = mTasks.get(i);
|
||||||
if (tr.userId == userId && isVisibleRecentTask(tr)) {
|
if (!profileIds.contains(tr.userId)) continue;
|
||||||
|
if (isVisibleRecentTask(tr)) {
|
||||||
mTasks.remove(i);
|
mTasks.remove(i);
|
||||||
notifyTaskRemoved(tr, true /* wasTrimmed */, true /* killProcess */);
|
notifyTaskRemoved(tr, true /* wasTrimmed */, true /* killProcess */);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -860,14 +860,19 @@ public class RecentTasksTest extends ActivityTestsBase {
|
|||||||
.build();
|
.build();
|
||||||
mRecentTasks.add(t1);
|
mRecentTasks.add(t1);
|
||||||
|
|
||||||
TaskRecord t2 = createTaskBuilder(".Task1")
|
TaskRecord t2 = createTaskBuilder(".Task2")
|
||||||
.setUserId(TEST_USER_1_ID)
|
.setUserId(TEST_QUIET_USER_ID)
|
||||||
.build();
|
.build();
|
||||||
mRecentTasks.add(t2);
|
mRecentTasks.add(t2);
|
||||||
|
|
||||||
|
TaskRecord t3 = createTaskBuilder(".Task3")
|
||||||
|
.setUserId(TEST_USER_1_ID)
|
||||||
|
.build();
|
||||||
|
mRecentTasks.add(t3);
|
||||||
|
|
||||||
// Remove all the visible tasks and ensure that they are removed
|
// Remove all the visible tasks and ensure that they are removed
|
||||||
mRecentTasks.removeAllVisibleTasks(TEST_USER_0_ID);
|
mRecentTasks.removeAllVisibleTasks(TEST_USER_0_ID);
|
||||||
assertTrimmed(t1);
|
assertTrimmed(t1, t2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
Reference in New Issue
Block a user