Merge "Fixed flicker when docking task from recents." into nyc-dev

This commit is contained in:
TreeHugger Robot
2016-05-23 18:01:12 +00:00
committed by Android (Google) Code Review

View File

@@ -1819,22 +1819,24 @@ final class ActivityStack {
private boolean shouldBeVisible(ActivityRecord r, boolean behindTranslucentActivity, private boolean shouldBeVisible(ActivityRecord r, boolean behindTranslucentActivity,
boolean stackVisibleBehind, ActivityRecord visibleBehind, boolean stackVisibleBehind, ActivityRecord visibleBehind,
boolean behindFullscreenActivity) { boolean behindFullscreenActivity) {
// mLaunchingBehind: Activities launching behind are at the back of the task stack
// but must be drawn initially for the animation as though they were visible.
final boolean activityVisibleBehind =
(behindTranslucentActivity || stackVisibleBehind) && visibleBehind == r;
if (!okToShowLocked(r)) { if (!okToShowLocked(r)) {
return false; return false;
} }
// mLaunchingBehind: Activities launching behind are at the back of the task stack
// but must be drawn initially for the animation as though they were visible.
final boolean activityVisibleBehind =
(behindTranslucentActivity || stackVisibleBehind) && visibleBehind == r;
boolean isVisible = boolean isVisible =
!behindFullscreenActivity || r.mLaunchTaskBehind || activityVisibleBehind; !behindFullscreenActivity || r.mLaunchTaskBehind || activityVisibleBehind;
if (isVisible && r.isRecentsActivity()) { if (isVisible && r.isRecentsActivity()) {
// Recents activity can only be visible if the home stack isn't fullscreen or is the // Recents activity can only be visible if the home stack is the focused stack or we are
// focused stack. // in split-screen mode.
isVisible = !mFullscreen || mStackSupervisor.isFocusedStack(this); isVisible = mStackSupervisor.getStack(DOCKED_STACK_ID) != null
|| mStackSupervisor.isFocusedStack(this);
} }
return isVisible; return isVisible;