am 95c7cd56: am 87e06ec2: Merge "Fix issue #5144065: Tap on Music icon from Home screen..." into ics-mr1

* commit '95c7cd56cc12179ad00623422814e8ba16646c34':
  Fix issue #5144065: Tap on Music icon from Home screen...
This commit is contained in:
Dianne Hackborn
2011-12-07 16:05:46 -08:00
committed by Android Git Automerger

View File

@@ -1933,7 +1933,8 @@ final class ActivityStack {
replyChainEnd = -1; replyChainEnd = -1;
} }
} else if (target.resultTo != null) { } else if (target.resultTo != null && (below == null
|| below.task == target.task)) {
// If this activity is sending a reply to a previous // If this activity is sending a reply to a previous
// activity, we can't do anything with it now until // activity, we can't do anything with it now until
// we reach the start of the reply chain. // we reach the start of the reply chain.
@@ -1963,6 +1964,8 @@ final class ActivityStack {
replyChainEnd = targetI; replyChainEnd = targetI;
} }
ActivityRecord p = null; ActivityRecord p = null;
if (DEBUG_TASKS) Slog.v(TAG, "Finishing task at index "
+ targetI + " to " + replyChainEnd);
for (int srcPos=targetI; srcPos<=replyChainEnd; srcPos++) { for (int srcPos=targetI; srcPos<=replyChainEnd; srcPos++) {
p = mHistory.get(srcPos); p = mHistory.get(srcPos);
if (p.finishing) { if (p.finishing) {
@@ -1981,6 +1984,8 @@ final class ActivityStack {
if (replyChainEnd < 0) { if (replyChainEnd < 0) {
replyChainEnd = targetI; replyChainEnd = targetI;
} }
if (DEBUG_TASKS) Slog.v(TAG, "Reparenting task at index "
+ targetI + " to " + replyChainEnd);
for (int srcPos=replyChainEnd; srcPos>=targetI; srcPos--) { for (int srcPos=replyChainEnd; srcPos>=targetI; srcPos--) {
ActivityRecord p = mHistory.get(srcPos); ActivityRecord p = mHistory.get(srcPos);
if (p.finishing) { if (p.finishing) {
@@ -2002,6 +2007,7 @@ final class ActivityStack {
p.setTask(task, null, false); p.setTask(task, null, false);
mHistory.add(lastReparentPos, p); mHistory.add(lastReparentPos, p);
if (DEBUG_TASKS) Slog.v(TAG, "Pulling activity " + p if (DEBUG_TASKS) Slog.v(TAG, "Pulling activity " + p
+ " from " + srcPos + " to " + lastReparentPos
+ " in to resetting task " + task); + " in to resetting task " + task);
mService.mWindowManager.moveAppToken(lastReparentPos, p.appToken); mService.mWindowManager.moveAppToken(lastReparentPos, p.appToken);
mService.mWindowManager.setAppGroupId(p.appToken, p.task.taskId); mService.mWindowManager.setAppGroupId(p.appToken, p.task.taskId);
@@ -2031,6 +2037,11 @@ final class ActivityStack {
} }
} }
} }
} else if (below != null && below.task != target.task) {
// We hit the botton of a task; the reply chain can't
// pass through it.
replyChainEnd = -1;
} }
target = below; target = below;