diff options
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityStackSupervisor.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java index 33112c6a9bf9..0b2ff655597d 100644 --- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java +++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java @@ -2601,9 +2601,11 @@ public final class ActivityStackSupervisor implements DisplayListener { stack.setVisibleBehindActivity(visible ? r : null); if (!visible) { - // Make the activity immediately above r opaque. + // If there is a translucent home activity, we need to force it stop being translucent, + // because we can't depend on the application to necessarily perform that operation. + // Check out b/14469711 for details. final ActivityRecord next = stack.findNextTranslucentActivity(r); - if (next != null) { + if (next != null && next.isHomeActivity()) { mService.convertFromTranslucent(next.appToken); } } |