Loading services/core/java/com/android/server/policy/PhoneWindowManager.java +20 −19 Original line number Diff line number Diff line Loading @@ -413,13 +413,6 @@ public class PhoneWindowManager implements WindowManagerPolicy { volatile boolean mBootAnimationDismissable; private KeyguardServiceDelegate mKeyguardDelegate; private boolean mKeyguardBound; final Runnable mWindowManagerDrawCallback = new Runnable() { @Override public void run() { if (DEBUG_WAKEUP) Slog.i(TAG, "All windows ready for display!"); mHandler.sendEmptyMessage(MSG_WINDOW_MANAGER_DRAWN_COMPLETE); } }; final DrawnListener mKeyguardDrawnCallback = new DrawnListener() { @Override public void onDrawn() { Loading Loading @@ -646,7 +639,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { break; case MSG_WINDOW_MANAGER_DRAWN_COMPLETE: if (DEBUG_WAKEUP) Slog.w(TAG, "Setting mWindowManagerDrawComplete"); finishWindowsDrawn(); finishWindowsDrawn(msg.arg1); break; case MSG_HIDE_BOOT_MESSAGE: handleHideBootMessage(); Loading Loading @@ -4308,8 +4301,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { // ... eventually calls finishWindowsDrawn which will finalize our screen turn on // as well as enabling the orientation change logic/sensor. mWindowManagerInternal.waitForAllWindowsDrawn(mWindowManagerDrawCallback, WAITING_FOR_DRAWN_TIMEOUT, INVALID_DISPLAY); mWindowManagerInternal.waitForAllWindowsDrawn(() -> { if (DEBUG_WAKEUP) Slog.i(TAG, "All windows ready for every display"); mHandler.sendMessage(mHandler.obtainMessage(MSG_WINDOW_MANAGER_DRAWN_COMPLETE, INVALID_DISPLAY, 0)); }, WAITING_FOR_DRAWN_TIMEOUT, INVALID_DISPLAY); } // Called on the DisplayManager's DisplayPowerController thread. Loading Loading @@ -4369,6 +4365,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { } } else { mScreenOnListeners.put(displayId, screenOnListener); mWindowManagerInternal.waitForAllWindowsDrawn(() -> { if (DEBUG_WAKEUP) Slog.i(TAG, "All windows ready for display: " + displayId); mHandler.sendMessage(mHandler.obtainMessage(MSG_WINDOW_MANAGER_DRAWN_COMPLETE, displayId, 0)); }, WAITING_FOR_DRAWN_TIMEOUT, displayId); } } Loading Loading @@ -4409,7 +4410,15 @@ public class PhoneWindowManager implements WindowManagerPolicy { mVrManagerInternal.onScreenStateChanged(isScreenOn); } private void finishWindowsDrawn() { private void finishWindowsDrawn(int displayId) { if (displayId != DEFAULT_DISPLAY && displayId != INVALID_DISPLAY) { final ScreenOnListener screenOnListener = mScreenOnListeners.removeReturnOld(displayId); if (screenOnListener != null) { screenOnListener.onScreenOn(); } return; } if (!mDefaultDisplayPolicy.finishWindowsDrawn()) { return; } Loading Loading @@ -4453,14 +4462,6 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (listener != null) { listener.onScreenOn(); } for (int i = mScreenOnListeners.size() - 1; i >= 0; i--) { final ScreenOnListener screenOnListener = mScreenOnListeners.valueAt(i); if (screenOnListener != null) { screenOnListener.onScreenOn(); } } mScreenOnListeners.clear(); } if (enableScreen) { Loading Loading
services/core/java/com/android/server/policy/PhoneWindowManager.java +20 −19 Original line number Diff line number Diff line Loading @@ -413,13 +413,6 @@ public class PhoneWindowManager implements WindowManagerPolicy { volatile boolean mBootAnimationDismissable; private KeyguardServiceDelegate mKeyguardDelegate; private boolean mKeyguardBound; final Runnable mWindowManagerDrawCallback = new Runnable() { @Override public void run() { if (DEBUG_WAKEUP) Slog.i(TAG, "All windows ready for display!"); mHandler.sendEmptyMessage(MSG_WINDOW_MANAGER_DRAWN_COMPLETE); } }; final DrawnListener mKeyguardDrawnCallback = new DrawnListener() { @Override public void onDrawn() { Loading Loading @@ -646,7 +639,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { break; case MSG_WINDOW_MANAGER_DRAWN_COMPLETE: if (DEBUG_WAKEUP) Slog.w(TAG, "Setting mWindowManagerDrawComplete"); finishWindowsDrawn(); finishWindowsDrawn(msg.arg1); break; case MSG_HIDE_BOOT_MESSAGE: handleHideBootMessage(); Loading Loading @@ -4308,8 +4301,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { // ... eventually calls finishWindowsDrawn which will finalize our screen turn on // as well as enabling the orientation change logic/sensor. mWindowManagerInternal.waitForAllWindowsDrawn(mWindowManagerDrawCallback, WAITING_FOR_DRAWN_TIMEOUT, INVALID_DISPLAY); mWindowManagerInternal.waitForAllWindowsDrawn(() -> { if (DEBUG_WAKEUP) Slog.i(TAG, "All windows ready for every display"); mHandler.sendMessage(mHandler.obtainMessage(MSG_WINDOW_MANAGER_DRAWN_COMPLETE, INVALID_DISPLAY, 0)); }, WAITING_FOR_DRAWN_TIMEOUT, INVALID_DISPLAY); } // Called on the DisplayManager's DisplayPowerController thread. Loading Loading @@ -4369,6 +4365,11 @@ public class PhoneWindowManager implements WindowManagerPolicy { } } else { mScreenOnListeners.put(displayId, screenOnListener); mWindowManagerInternal.waitForAllWindowsDrawn(() -> { if (DEBUG_WAKEUP) Slog.i(TAG, "All windows ready for display: " + displayId); mHandler.sendMessage(mHandler.obtainMessage(MSG_WINDOW_MANAGER_DRAWN_COMPLETE, displayId, 0)); }, WAITING_FOR_DRAWN_TIMEOUT, displayId); } } Loading Loading @@ -4409,7 +4410,15 @@ public class PhoneWindowManager implements WindowManagerPolicy { mVrManagerInternal.onScreenStateChanged(isScreenOn); } private void finishWindowsDrawn() { private void finishWindowsDrawn(int displayId) { if (displayId != DEFAULT_DISPLAY && displayId != INVALID_DISPLAY) { final ScreenOnListener screenOnListener = mScreenOnListeners.removeReturnOld(displayId); if (screenOnListener != null) { screenOnListener.onScreenOn(); } return; } if (!mDefaultDisplayPolicy.finishWindowsDrawn()) { return; } Loading Loading @@ -4453,14 +4462,6 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (listener != null) { listener.onScreenOn(); } for (int i = mScreenOnListeners.size() - 1; i >= 0; i--) { final ScreenOnListener screenOnListener = mScreenOnListeners.valueAt(i); if (screenOnListener != null) { screenOnListener.onScreenOn(); } } mScreenOnListeners.clear(); } if (enableScreen) { Loading