diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 2613c1a2992fc..9c3aabe495f28 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -2331,10 +2331,9 @@ public final class ViewRootImpl implements ViewParent, final int systemUiFlag = publicType == Type.statusBars() ? View.SYSTEM_UI_FLAG_FULLSCREEN : View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; - final boolean wasVisible = (info.globalVisibility & systemUiFlag) == 0; if (visible) { info.globalVisibility &= ~systemUiFlag; - if (!wasVisible && hasControl) { + if (hasControl && (mAttachInfo.mSystemUiVisibility & systemUiFlag) != 0) { // The local system UI visibility can only be cleared while we have the control. info.localChanges |= systemUiFlag; }