summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Android (Google) Code Review <android-gerrit@google.com> 2009-11-06 02:12:40 -0500
committer Android (Google) Code Review <android-gerrit@google.com> 2009-11-06 02:12:40 -0500
commitbf50200ba494db0ac2ce655a95f76640f49355ee (patch)
tree60dd101313973b5da3a1038c74c2e63524dd5072
parent84872738f291faf25ae07235cde382d38c796567 (diff)
parentc9568e3989f1491abaa7960eca986af12743cb05 (diff)
Merge change Ic9568e39 into eclair
* changes: When tasks are moved to top or bottom, the app tokens are being rearranged. The window token rearrangement is defered if an animation is underway. Force a focus recomputation when the window tokens are finally rearranged so that we have a valid focused window.
-rw-r--r--services/java/com/android/server/WindowManagerService.java4
-rw-r--r--services/java/com/android/server/am/ActivityManagerService.java3
2 files changed, 5 insertions, 2 deletions
diff --git a/services/java/com/android/server/WindowManagerService.java b/services/java/com/android/server/WindowManagerService.java
index 94667ebbac3e..d3645c35ffa5 100644
--- a/services/java/com/android/server/WindowManagerService.java
+++ b/services/java/com/android/server/WindowManagerService.java
@@ -9629,6 +9629,10 @@ public class WindowManagerService extends IWindowManager.Stub
moveInputMethodWindowsIfNeededLocked(false);
wallpaperMayChange = true;
mLayoutNeeded = true;
+ // Since the window list has been rebuilt, focus might
+ // have to be recomputed since the actual order of windows
+ // might have changed again.
+ focusMayChange = true;
}
int adjResult = 0;
diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java
index 56270f48b45a..c3aeca42ede6 100644
--- a/services/java/com/android/server/am/ActivityManagerService.java
+++ b/services/java/com/android/server/am/ActivityManagerService.java
@@ -7182,7 +7182,6 @@ public final class ActivityManagerService extends ActivityManagerNative implemen
if (DEBUG_TRANSITION) Log.v(TAG,
"Prepare to back transition: task=" + task);
- mWindowManager.prepareAppTransition(WindowManagerPolicy.TRANSIT_TASK_TO_BACK);
final int N = mHistory.size();
int bottom = 0;
@@ -7212,7 +7211,7 @@ public final class ActivityManagerService extends ActivityManagerNative implemen
mNoAnimActivities.add(r);
}
} else {
- mWindowManager.prepareAppTransition(WindowManagerPolicy.TRANSIT_TASK_TO_FRONT);
+ mWindowManager.prepareAppTransition(WindowManagerPolicy.TRANSIT_TASK_TO_BACK);
}
mWindowManager.moveAppTokensToBottom(moved);
if (VALIDATE_TOKENS) {