Loading packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarView.java +3 −15 Original line number Diff line number Diff line Loading @@ -19,9 +19,7 @@ package com.android.systemui.navigationbar; import static android.view.WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_OVERVIEW_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SETTINGS_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_PINNING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SEARCH_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.isGesturalMode; Loading Loading @@ -79,9 +77,9 @@ import com.android.systemui.navigationbar.buttons.NearestTouchFrame; import com.android.systemui.navigationbar.buttons.RotationContextButton; import com.android.systemui.navigationbar.gestural.EdgeBackGestureHandler; import com.android.systemui.navigationbar.gestural.FloatingRotationButton; import com.android.systemui.shared.navigationbar.RegionSamplingHelper; import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.Recents; import com.android.systemui.shared.navigationbar.RegionSamplingHelper; import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.SysUiStatsLog; Loading Loading @@ -841,7 +839,6 @@ public class NavigationBarView extends FrameLayout implements public void onStatusBarPanelStateChanged() { updateSlippery(); updatePanelSystemUiStateFlags(); } public void updateDisabledSystemUiStateFlags() { Loading @@ -858,21 +855,12 @@ public class NavigationBarView extends FrameLayout implements .commitUpdate(displayId); } public void updatePanelSystemUiStateFlags() { int displayId = mContext.getDisplayId(); private void updatePanelSystemUiStateFlags() { if (SysUiState.DEBUG) { Log.d(TAG, "Updating panel sysui state flags: panelView=" + mPanelView); } if (mPanelView != null) { if (SysUiState.DEBUG) { Log.d(TAG, "Updating panel sysui state flags: fullyExpanded=" + mPanelView.isFullyExpanded() + " inQs=" + mPanelView.isInSettings()); } mSysUiFlagContainer.setFlag(SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED, mPanelView.isFullyExpanded() && !mPanelView.isInSettings()) .setFlag(SYSUI_STATE_QUICK_SETTINGS_EXPANDED, mPanelView.isInSettings()) .commitUpdate(displayId); mPanelView.updateSystemUiStateFlags(); } } Loading packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java +7 −2 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.smartspace.SmartspaceTransitionController; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.NotificationShadeWindowController; import com.android.systemui.statusbar.phone.NotificationPanelViewController; import com.android.systemui.statusbar.phone.StatusBar; import com.android.systemui.statusbar.phone.StatusBarWindowCallback; import com.android.systemui.statusbar.policy.CallbackController; Loading Loading @@ -626,18 +627,22 @@ public class OverviewProxyService extends CurrentUserTracker implements mNavBarControllerLazy.get().getDefaultNavigationBar(); final NavigationBarView navBarView = mNavBarControllerLazy.get().getNavigationBarView(mContext.getDisplayId()); final NotificationPanelViewController panelController = mStatusBarOptionalLazy.get().get().getPanelController(); if (SysUiState.DEBUG) { Log.d(TAG_OPS, "Updating sysui state flags: navBarFragment=" + navBarFragment + " navBarView=" + navBarView); + " navBarView=" + navBarView + " panelController=" + panelController); } if (navBarFragment != null) { navBarFragment.updateSystemUiStateFlags(-1); } if (navBarView != null) { navBarView.updatePanelSystemUiStateFlags(); navBarView.updateDisabledSystemUiStateFlags(); } if (panelController != null) { panelController.updateSystemUiStateFlags(); } if (mStatusBarWinController != null) { mStatusBarWinController.notifyStateChangedCallbacks(); } Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java +22 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ import static com.android.keyguard.KeyguardClockSwitch.LARGE; import static com.android.keyguard.KeyguardClockSwitch.SMALL; import static com.android.systemui.classifier.Classifier.QS_COLLAPSE; import static com.android.systemui.classifier.Classifier.QUICK_SETTINGS; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SETTINGS_EXPANDED; import static com.android.systemui.statusbar.StatusBarState.KEYGUARD; import static com.android.systemui.statusbar.StatusBarState.SHADE; import static com.android.systemui.statusbar.StatusBarState.SHADE_LOCKED; Loading Loading @@ -96,6 +98,7 @@ import com.android.keyguard.dagger.KeyguardStatusBarViewComponent; import com.android.keyguard.dagger.KeyguardStatusViewComponent; import com.android.keyguard.dagger.KeyguardUserSwitcherComponent; import com.android.systemui.DejankUtils; import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.animation.ActivityLaunchAnimator; import com.android.systemui.animation.Interpolators; Loading @@ -111,6 +114,7 @@ import com.android.systemui.fragments.FragmentService; import com.android.systemui.media.KeyguardMediaController; import com.android.systemui.media.MediaDataManager; import com.android.systemui.media.MediaHierarchyManager; import com.android.systemui.model.SysUiState; import com.android.systemui.navigationbar.NavigationModeController; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.FalsingManager.FalsingTapListener; Loading Loading @@ -473,6 +477,8 @@ public class NotificationPanelViewController extends PanelViewController { private final NotificationLockscreenUserManager mLockscreenUserManager; private final UserManager mUserManager; private final MediaDataManager mMediaDataManager; private final SysUiState mSysUiState; private NotificationShadeDepthController mDepthController; private int mDisplayId; Loading Loading @@ -758,6 +764,8 @@ public class NotificationPanelViewController extends PanelViewController { mTapAgainViewController = tapAgainViewController; mUiExecutor = uiExecutor; mSecureSettings = secureSettings; // TODO: inject via dagger instead of Dependency mSysUiState = Dependency.get(SysUiState.class); pulseExpansionHandler.setPulseExpandAbortListener(() -> { if (mQs != null) { mQs.animateHeaderSlidingOut(); Loading Loading @@ -3959,6 +3967,20 @@ public class NotificationPanelViewController extends PanelViewController { mContentResolver.unregisterContentObserver(mSettingsChangeObserver); } /** * Updates notification panel-specific flags on {@link SysUiState}. */ public void updateSystemUiStateFlags() { if (SysUiState.DEBUG) { Log.d(TAG, "Updating panel sysui state flags: fullyExpanded=" + isFullyExpanded() + " inQs=" + isInSettings()); } mSysUiState.setFlag(SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED, isFullyExpanded() && !isInSettings()) .setFlag(SYSUI_STATE_QUICK_SETTINGS_EXPANDED, isInSettings()) .commitUpdate(mDisplayId); } private class OnHeightChangedListener implements ExpandableView.OnHeightChangedListener { @Override public void onHeightChanged(ExpandableView view, boolean needsAnimation) { Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java +7 −2 Original line number Diff line number Diff line Loading @@ -287,9 +287,14 @@ public class PhoneStatusBarView extends PanelBar { public void panelExpansionChanged(float frac, boolean expanded) { super.panelExpansionChanged(frac, expanded); updateScrimFraction(); if ((frac == 0 || frac == 1) && mBar.getNavigationBarView() != null) { if ((frac == 0 || frac == 1)) { if (mBar.getNavigationBarView() != null) { mBar.getNavigationBarView().onStatusBarPanelStateChanged(); } if (mBar.getNotificationPanelViewController() != null) { mBar.getNotificationPanelViewController().updateSystemUiStateFlags(); } } if (mExpansionChangedListeners != null) { for (StatusBar.ExpansionChangedListener listener : mExpansionChangedListeners) { Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +1 −0 Original line number Diff line number Diff line Loading @@ -1824,6 +1824,7 @@ public class StatusBar extends SystemUI implements mNotificationPanelViewController.setStatusAccessibilityImportance(expanded ? View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS : View.IMPORTANT_FOR_ACCESSIBILITY_AUTO); mNotificationPanelViewController.updateSystemUiStateFlags(); if (getNavigationBarView() != null) { getNavigationBarView().onStatusBarPanelStateChanged(); } Loading Loading
packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarView.java +3 −15 Original line number Diff line number Diff line Loading @@ -19,9 +19,7 @@ package com.android.systemui.navigationbar; import static android.view.WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_OVERVIEW_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SETTINGS_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_PINNING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SEARCH_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.isGesturalMode; Loading Loading @@ -79,9 +77,9 @@ import com.android.systemui.navigationbar.buttons.NearestTouchFrame; import com.android.systemui.navigationbar.buttons.RotationContextButton; import com.android.systemui.navigationbar.gestural.EdgeBackGestureHandler; import com.android.systemui.navigationbar.gestural.FloatingRotationButton; import com.android.systemui.shared.navigationbar.RegionSamplingHelper; import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.Recents; import com.android.systemui.shared.navigationbar.RegionSamplingHelper; import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.SysUiStatsLog; Loading Loading @@ -841,7 +839,6 @@ public class NavigationBarView extends FrameLayout implements public void onStatusBarPanelStateChanged() { updateSlippery(); updatePanelSystemUiStateFlags(); } public void updateDisabledSystemUiStateFlags() { Loading @@ -858,21 +855,12 @@ public class NavigationBarView extends FrameLayout implements .commitUpdate(displayId); } public void updatePanelSystemUiStateFlags() { int displayId = mContext.getDisplayId(); private void updatePanelSystemUiStateFlags() { if (SysUiState.DEBUG) { Log.d(TAG, "Updating panel sysui state flags: panelView=" + mPanelView); } if (mPanelView != null) { if (SysUiState.DEBUG) { Log.d(TAG, "Updating panel sysui state flags: fullyExpanded=" + mPanelView.isFullyExpanded() + " inQs=" + mPanelView.isInSettings()); } mSysUiFlagContainer.setFlag(SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED, mPanelView.isFullyExpanded() && !mPanelView.isInSettings()) .setFlag(SYSUI_STATE_QUICK_SETTINGS_EXPANDED, mPanelView.isInSettings()) .commitUpdate(displayId); mPanelView.updateSystemUiStateFlags(); } } Loading
packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java +7 −2 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.smartspace.SmartspaceTransitionController; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.NotificationShadeWindowController; import com.android.systemui.statusbar.phone.NotificationPanelViewController; import com.android.systemui.statusbar.phone.StatusBar; import com.android.systemui.statusbar.phone.StatusBarWindowCallback; import com.android.systemui.statusbar.policy.CallbackController; Loading Loading @@ -626,18 +627,22 @@ public class OverviewProxyService extends CurrentUserTracker implements mNavBarControllerLazy.get().getDefaultNavigationBar(); final NavigationBarView navBarView = mNavBarControllerLazy.get().getNavigationBarView(mContext.getDisplayId()); final NotificationPanelViewController panelController = mStatusBarOptionalLazy.get().get().getPanelController(); if (SysUiState.DEBUG) { Log.d(TAG_OPS, "Updating sysui state flags: navBarFragment=" + navBarFragment + " navBarView=" + navBarView); + " navBarView=" + navBarView + " panelController=" + panelController); } if (navBarFragment != null) { navBarFragment.updateSystemUiStateFlags(-1); } if (navBarView != null) { navBarView.updatePanelSystemUiStateFlags(); navBarView.updateDisabledSystemUiStateFlags(); } if (panelController != null) { panelController.updateSystemUiStateFlags(); } if (mStatusBarWinController != null) { mStatusBarWinController.notifyStateChangedCallbacks(); } Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java +22 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ import static com.android.keyguard.KeyguardClockSwitch.LARGE; import static com.android.keyguard.KeyguardClockSwitch.SMALL; import static com.android.systemui.classifier.Classifier.QS_COLLAPSE; import static com.android.systemui.classifier.Classifier.QUICK_SETTINGS; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SETTINGS_EXPANDED; import static com.android.systemui.statusbar.StatusBarState.KEYGUARD; import static com.android.systemui.statusbar.StatusBarState.SHADE; import static com.android.systemui.statusbar.StatusBarState.SHADE_LOCKED; Loading Loading @@ -96,6 +98,7 @@ import com.android.keyguard.dagger.KeyguardStatusBarViewComponent; import com.android.keyguard.dagger.KeyguardStatusViewComponent; import com.android.keyguard.dagger.KeyguardUserSwitcherComponent; import com.android.systemui.DejankUtils; import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.animation.ActivityLaunchAnimator; import com.android.systemui.animation.Interpolators; Loading @@ -111,6 +114,7 @@ import com.android.systemui.fragments.FragmentService; import com.android.systemui.media.KeyguardMediaController; import com.android.systemui.media.MediaDataManager; import com.android.systemui.media.MediaHierarchyManager; import com.android.systemui.model.SysUiState; import com.android.systemui.navigationbar.NavigationModeController; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.FalsingManager.FalsingTapListener; Loading Loading @@ -473,6 +477,8 @@ public class NotificationPanelViewController extends PanelViewController { private final NotificationLockscreenUserManager mLockscreenUserManager; private final UserManager mUserManager; private final MediaDataManager mMediaDataManager; private final SysUiState mSysUiState; private NotificationShadeDepthController mDepthController; private int mDisplayId; Loading Loading @@ -758,6 +764,8 @@ public class NotificationPanelViewController extends PanelViewController { mTapAgainViewController = tapAgainViewController; mUiExecutor = uiExecutor; mSecureSettings = secureSettings; // TODO: inject via dagger instead of Dependency mSysUiState = Dependency.get(SysUiState.class); pulseExpansionHandler.setPulseExpandAbortListener(() -> { if (mQs != null) { mQs.animateHeaderSlidingOut(); Loading Loading @@ -3959,6 +3967,20 @@ public class NotificationPanelViewController extends PanelViewController { mContentResolver.unregisterContentObserver(mSettingsChangeObserver); } /** * Updates notification panel-specific flags on {@link SysUiState}. */ public void updateSystemUiStateFlags() { if (SysUiState.DEBUG) { Log.d(TAG, "Updating panel sysui state flags: fullyExpanded=" + isFullyExpanded() + " inQs=" + isInSettings()); } mSysUiState.setFlag(SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED, isFullyExpanded() && !isInSettings()) .setFlag(SYSUI_STATE_QUICK_SETTINGS_EXPANDED, isInSettings()) .commitUpdate(mDisplayId); } private class OnHeightChangedListener implements ExpandableView.OnHeightChangedListener { @Override public void onHeightChanged(ExpandableView view, boolean needsAnimation) { Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java +7 −2 Original line number Diff line number Diff line Loading @@ -287,9 +287,14 @@ public class PhoneStatusBarView extends PanelBar { public void panelExpansionChanged(float frac, boolean expanded) { super.panelExpansionChanged(frac, expanded); updateScrimFraction(); if ((frac == 0 || frac == 1) && mBar.getNavigationBarView() != null) { if ((frac == 0 || frac == 1)) { if (mBar.getNavigationBarView() != null) { mBar.getNavigationBarView().onStatusBarPanelStateChanged(); } if (mBar.getNotificationPanelViewController() != null) { mBar.getNotificationPanelViewController().updateSystemUiStateFlags(); } } if (mExpansionChangedListeners != null) { for (StatusBar.ExpansionChangedListener listener : mExpansionChangedListeners) { Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +1 −0 Original line number Diff line number Diff line Loading @@ -1824,6 +1824,7 @@ public class StatusBar extends SystemUI implements mNotificationPanelViewController.setStatusAccessibilityImportance(expanded ? View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS : View.IMPORTANT_FOR_ACCESSIBILITY_AUTO); mNotificationPanelViewController.updateSystemUiStateFlags(); if (getNavigationBarView() != null) { getNavigationBarView().onStatusBarPanelStateChanged(); } Loading