RESTRICT AUTOMERGE Revert "Hold onto occluded change until it's committed" am: 98dc39863e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22336269 Change-Id: I660a8347efdb4d4b60cd04903fc2f73e1343e248 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -3378,7 +3378,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
mPendingKeyguardOccluded = occluded;
|
mPendingKeyguardOccluded = occluded;
|
||||||
mKeyguardOccludedChanged = true;
|
mKeyguardOccludedChanged = true;
|
||||||
} else {
|
} else {
|
||||||
setKeyguardOccludedLw(occluded, false /* transitionStarted */);
|
setKeyguardOccludedLw(occluded, false /* force */,
|
||||||
|
false /* transitionStarted */);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3387,7 +3388,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
if (mKeyguardOccludedChanged) {
|
if (mKeyguardOccludedChanged) {
|
||||||
if (DEBUG_KEYGUARD) Slog.d(TAG, "transition/occluded changed occluded="
|
if (DEBUG_KEYGUARD) Slog.d(TAG, "transition/occluded changed occluded="
|
||||||
+ mPendingKeyguardOccluded);
|
+ mPendingKeyguardOccluded);
|
||||||
if (setKeyguardOccludedLw(mPendingKeyguardOccluded, transitionStarted)) {
|
if (setKeyguardOccludedLw(mPendingKeyguardOccluded, false /* force */,
|
||||||
|
transitionStarted)) {
|
||||||
return FINISH_LAYOUT_REDO_LAYOUT | FINISH_LAYOUT_REDO_WALLPAPER;
|
return FINISH_LAYOUT_REDO_LAYOUT | FINISH_LAYOUT_REDO_WALLPAPER;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3641,15 +3643,22 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Updates the occluded state of the Keyguard immediately via
|
* Updates the occluded state of the Keyguard.
|
||||||
* {@link com.android.internal.policy.IKeyguardService}.
|
|
||||||
*
|
*
|
||||||
* @param isOccluded Whether the Keyguard is occluded by another window.
|
* @param isOccluded Whether the Keyguard is occluded by another window.
|
||||||
|
* @param force notify the occluded status to KeyguardService and update flags even though
|
||||||
|
* occlude status doesn't change.
|
||||||
* @param transitionStarted {@code true} if keyguard (un)occluded transition started.
|
* @param transitionStarted {@code true} if keyguard (un)occluded transition started.
|
||||||
* @return Whether the flags have changed and we have to redo the layout.
|
* @return Whether the flags have changed and we have to redo the layout.
|
||||||
*/
|
*/
|
||||||
private boolean setKeyguardOccludedLw(boolean isOccluded, boolean transitionStarted) {
|
private boolean setKeyguardOccludedLw(boolean isOccluded, boolean force,
|
||||||
|
boolean transitionStarted) {
|
||||||
if (DEBUG_KEYGUARD) Slog.d(TAG, "setKeyguardOccluded occluded=" + isOccluded);
|
if (DEBUG_KEYGUARD) Slog.d(TAG, "setKeyguardOccluded occluded=" + isOccluded);
|
||||||
|
mKeyguardOccludedChanged = false;
|
||||||
|
if (isKeyguardOccluded() == isOccluded && !force) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
final boolean showing = mKeyguardDelegate.isShowing();
|
final boolean showing = mKeyguardDelegate.isShowing();
|
||||||
final boolean animate = showing && !isOccluded;
|
final boolean animate = showing && !isOccluded;
|
||||||
// When remote animation is enabled for keyguard (un)occlude transition, KeyguardService
|
// When remote animation is enabled for keyguard (un)occlude transition, KeyguardService
|
||||||
@@ -3657,10 +3666,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
// to notify here.
|
// to notify here.
|
||||||
final boolean notify = !WindowManagerService.sEnableRemoteKeyguardOccludeAnimation
|
final boolean notify = !WindowManagerService.sEnableRemoteKeyguardOccludeAnimation
|
||||||
|| !transitionStarted;
|
|| !transitionStarted;
|
||||||
if (notify) {
|
mKeyguardDelegate.setOccluded(isOccluded, animate, notify);
|
||||||
mKeyguardOccludedChanged = false;
|
|
||||||
mKeyguardDelegate.setOccluded(isOccluded, animate, notify);
|
|
||||||
}
|
|
||||||
return showing;
|
return showing;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user