summaryrefslogtreecommitdiff
path: root/services/java/com/android/server/am/ActivityStack.java
diff options
context:
space:
mode:
authorCraig Mautner <cmautner@google.com>2013-10-04 20:11:26 -0700
committerCraig Mautner <cmautner@google.com>2013-10-04 20:11:26 -0700
commit9c85c201a2a2d9743f50ca70c5f55a8471616d3f (patch)
tree5e4ee340a916f01b1e336586078c4cc5c8cae650 /services/java/com/android/server/am/ActivityStack.java
parent3d61bf45e559e084fa173bd50e2e7d7286dc9a35 (diff)
Evaluate task on top of home when task is brought to front.
Localize the point where it is determined whether a task should sit on top of home or return to the task below it. Fixes bug 11080913. Change-Id: I79d1ea9722c867d6b550ddfcd1db35517a79cd90
Diffstat (limited to 'services/java/com/android/server/am/ActivityStack.java')
-rw-r--r--services/java/com/android/server/am/ActivityStack.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/services/java/com/android/server/am/ActivityStack.java b/services/java/com/android/server/am/ActivityStack.java
index 45b30f1cf60a..197aac51dd40 100644
--- a/services/java/com/android/server/am/ActivityStack.java
+++ b/services/java/com/android/server/am/ActivityStack.java
@@ -1623,6 +1623,12 @@ final class ActivityStack {
}
private void insertTaskAtTop(TaskRecord task) {
+ // If this is being moved to the top by another activity or being launched from the home
+ // activity, set mOnTopOfHome accordingly.
+ final boolean fromHome = mStackSupervisor.getLastStack().isHomeStack();
+ if (!isHomeStack() && (fromHome || topTask() != task)) {
+ task.mOnTopOfHome = fromHome;
+ }
mTaskHistory.remove(task);
// Now put task at top.
int stackNdx = mTaskHistory.size();