diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index d4fc0c6336ba0..ed6cd18941e3d 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -1035,7 +1035,6 @@ public final class ViewRootImpl implements ViewParent, if (mView == null) { mView = view; - mAttachInfo.mDisplayState = mDisplay.getState(); mViewLayoutDirectionInitial = mView.getRawLayoutDirection(); mFallbackEventHandler.setView(view); mWindowAttributes.copyFrom(attrs); @@ -1229,6 +1228,9 @@ public final class ViewRootImpl implements ViewParent, } registerListeners(); + // We should update mAttachInfo.mDisplayState after registerDisplayListener + // because displayState might be changed before registerDisplayListener. + mAttachInfo.mDisplayState = mDisplay.getState(); if ((res & WindowManagerGlobal.ADD_FLAG_USE_BLAST) != 0) { mUseBLASTAdapter = true; }