Merge "Fix a couple small issues in nav bar fragment" into rvc-dev

This commit is contained in:
Winson Chung
2020-03-16 05:38:28 +00:00
committed by Android (Google) Code Review

View File

@@ -551,16 +551,17 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
public void setWindowState( public void setWindowState(
int displayId, @WindowType int window, @WindowVisibleState int state) { int displayId, @WindowType int window, @WindowVisibleState int state) {
if (displayId == mDisplayId if (displayId == mDisplayId
&& mNavigationBarView != null
&& window == StatusBarManager.WINDOW_NAVIGATION_BAR && window == StatusBarManager.WINDOW_NAVIGATION_BAR
&& mNavigationBarWindowState != state) { && mNavigationBarWindowState != state) {
mNavigationBarWindowState = state; mNavigationBarWindowState = state;
updateSystemUiStateFlags(-1);
if (DEBUG_WINDOW_STATE) Log.d(TAG, "Navigation bar " + windowStateToString(state)); if (DEBUG_WINDOW_STATE) Log.d(TAG, "Navigation bar " + windowStateToString(state));
updateSystemUiStateFlags(-1); if (mNavigationBarView != null) {
mNavigationBarView.setWindowVisible(isNavBarWindowVisible()); mNavigationBarView.setWindowVisible(isNavBarWindowVisible());
} }
} }
}
@Override @Override
public void onRotationProposal(final int rotation, boolean isValid) { public void onRotationProposal(final int rotation, boolean isValid) {
@@ -1219,6 +1220,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback
@Override @Override
public void onViewDetachedFromWindow(View v) { public void onViewDetachedFromWindow(View v) {
FragmentHostManager.removeAndDestroy(v); FragmentHostManager.removeAndDestroy(v);
navigationBarView.removeOnAttachStateChangeListener(this);
} }
}); });
context.getSystemService(WindowManager.class).addView(navigationBarView, lp); context.getSystemService(WindowManager.class).addView(navigationBarView, lp);