Merge "Prevent windows from freezing screen while timeout"

This commit is contained in:
Olawale Ogunwale
2015-04-08 21:56:09 +00:00
committed by Gerrit Code Review

View File

@@ -4717,7 +4717,8 @@ public class WindowManagerService extends IWindowManager.Stub
WindowState w = wtoken.allAppWindows.get(i); WindowState w = wtoken.allAppWindows.get(i);
if (w.mAppFreezing) { if (w.mAppFreezing) {
w.mAppFreezing = false; w.mAppFreezing = false;
if (w.mHasSurface && !w.mOrientationChanging) { if (w.mHasSurface && !w.mOrientationChanging
&& mWindowsFreezingScreen != WINDOWS_FREEZING_SCREENS_TIMEOUT) {
if (DEBUG_ORIENTATION) Slog.v(TAG, "set mOrientationChanging of " + w); if (DEBUG_ORIENTATION) Slog.v(TAG, "set mOrientationChanging of " + w);
w.mOrientationChanging = true; w.mOrientationChanging = true;
mInnerFields.mOrientationChangeComplete = false; mInnerFields.mOrientationChangeComplete = false;
@@ -9083,7 +9084,7 @@ public class WindowManagerService extends IWindowManager.Stub
// If the screen is currently frozen or off, then keep // If the screen is currently frozen or off, then keep
// it frozen/off until this window draws at its new // it frozen/off until this window draws at its new
// orientation. // orientation.
if (!okToDisplay()) { if (!okToDisplay() && mWindowsFreezingScreen != WINDOWS_FREEZING_SCREENS_TIMEOUT) {
if (DEBUG_ORIENTATION) Slog.v(TAG, "Changing surface while display frozen: " + w); if (DEBUG_ORIENTATION) Slog.v(TAG, "Changing surface while display frozen: " + w);
w.mOrientationChanging = true; w.mOrientationChanging = true;
w.mLastFreezeDuration = 0; w.mLastFreezeDuration = 0;