Separate out sysui state updating
- Only update the disabled/screen pinning states when the disabled flags change, and not when the status bar panel height changes since that may be called frequently Bug: 138640355 Test: Manual, lock/unlock, ensure that we don't get extra calls Change-Id: Icbb03f1fef67e1254f03d85e4293f3b1a0ec4d6e
This commit is contained in:
@@ -546,7 +546,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
navBarFragment.updateSystemUiStateFlags(-1);
|
||||
}
|
||||
if (navBarView != null) {
|
||||
navBarView.updateSystemUiStateFlags();
|
||||
navBarView.updatePanelSystemUiStateFlags();
|
||||
navBarView.updateDisabledSystemUiStateFlags();
|
||||
}
|
||||
if (mStatusBarWinController != null) {
|
||||
mStatusBarWinController.notifyStateChangedCallbacks();
|
||||
|
||||
@@ -322,7 +322,7 @@ public class NavigationBarView extends FrameLayout implements
|
||||
|
||||
public void setComponents(NotificationPanelView panel, AssistManager assistManager) {
|
||||
mPanelView = panel;
|
||||
updateSystemUiStateFlags();
|
||||
updatePanelSystemUiStateFlags();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -586,7 +586,7 @@ public class NavigationBarView extends FrameLayout implements
|
||||
updateNavButtonIcons();
|
||||
updateSlippery();
|
||||
setUpSwipeUpOnboarding(isQuickStepSwipeUpEnabled());
|
||||
updateSystemUiStateFlags();
|
||||
updateDisabledSystemUiStateFlags();
|
||||
}
|
||||
|
||||
public void updateNavButtonIcons() {
|
||||
@@ -709,10 +709,10 @@ public class NavigationBarView extends FrameLayout implements
|
||||
|
||||
public void onPanelExpandedChange() {
|
||||
updateSlippery();
|
||||
updateSystemUiStateFlags();
|
||||
updatePanelSystemUiStateFlags();
|
||||
}
|
||||
|
||||
public void updateSystemUiStateFlags() {
|
||||
public void updateDisabledSystemUiStateFlags() {
|
||||
int displayId = mContext.getDisplayId();
|
||||
mOverviewProxyService.setSystemUiStateFlag(SYSUI_STATE_SCREEN_PINNING,
|
||||
ActivityManagerWrapper.getInstance().isScreenPinningActive(), displayId);
|
||||
@@ -722,6 +722,10 @@ public class NavigationBarView extends FrameLayout implements
|
||||
(mDisabledFlags & View.STATUS_BAR_DISABLE_HOME) != 0, displayId);
|
||||
mOverviewProxyService.setSystemUiStateFlag(SYSUI_STATE_SEARCH_DISABLED,
|
||||
(mDisabledFlags & View.STATUS_BAR_DISABLE_SEARCH) != 0, displayId);
|
||||
}
|
||||
|
||||
public void updatePanelSystemUiStateFlags() {
|
||||
int displayId = mContext.getDisplayId();
|
||||
if (mPanelView != null) {
|
||||
mOverviewProxyService.setSystemUiStateFlag(SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED,
|
||||
mPanelView.isFullyExpanded() && !mPanelView.isInSettings(), displayId);
|
||||
|
||||
Reference in New Issue
Block a user