Merge "Expose keyguard showing-but-occluded state to launcher" into qt-dev am: c8120d6d6a
am: 8d8dcec593
Change-Id: Ic2141908c4fccedce0990920c79a1acb40d6d26d
This commit is contained in:
@@ -61,12 +61,14 @@ public class QuickStepContract {
|
||||
public static final int SYSUI_STATE_A11Y_BUTTON_CLICKABLE = 1 << 4;
|
||||
// The navigation bar a11y button shortcut is available
|
||||
public static final int SYSUI_STATE_A11Y_BUTTON_LONG_CLICKABLE = 1 << 5;
|
||||
// The keyguard is showing
|
||||
// The keyguard is showing and not occluded
|
||||
public static final int SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING = 1 << 6;
|
||||
// The recents feature is disabled (either by SUW/SysUI/device policy)
|
||||
public static final int SYSUI_STATE_OVERVIEW_DISABLED = 1 << 7;
|
||||
// The home feature is disabled (either by SUW/SysUI/device policy)
|
||||
public static final int SYSUI_STATE_HOME_DISABLED = 1 << 8;
|
||||
// The keyguard is showing, but occluded
|
||||
public static final int SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED = 1 << 9;
|
||||
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@IntDef({SYSUI_STATE_SCREEN_PINNING,
|
||||
@@ -76,6 +78,7 @@ public class QuickStepContract {
|
||||
SYSUI_STATE_A11Y_BUTTON_CLICKABLE,
|
||||
SYSUI_STATE_A11Y_BUTTON_LONG_CLICKABLE,
|
||||
SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING,
|
||||
SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED,
|
||||
SYSUI_STATE_OVERVIEW_DISABLED,
|
||||
SYSUI_STATE_HOME_DISABLED
|
||||
})
|
||||
@@ -89,6 +92,8 @@ public class QuickStepContract {
|
||||
str.add((flags & SYSUI_STATE_NAV_BAR_HIDDEN) != 0 ? "navbar_hidden" : "");
|
||||
str.add((flags & SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED) != 0 ? "notif_visible" : "");
|
||||
str.add((flags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING) != 0 ? "keygrd_visible" : "");
|
||||
str.add((flags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED) != 0
|
||||
? "keygrd_occluded" : "");
|
||||
str.add((flags & SYSUI_STATE_BOUNCER_SHOWING) != 0 ? "bouncer_visible" : "");
|
||||
str.add((flags & SYSUI_STATE_A11Y_BUTTON_CLICKABLE) != 0 ? "a11y_click" : "");
|
||||
str.add((flags & SYSUI_STATE_A11Y_BUTTON_LONG_CLICKABLE) != 0 ? "a11y_long_click" : "");
|
||||
|
||||
@@ -41,7 +41,6 @@ import android.graphics.Region;
|
||||
import android.hardware.input.InputManager;
|
||||
import android.os.Binder;
|
||||
import android.os.Bundle;
|
||||
import android.os.Debug;
|
||||
import android.os.Handler;
|
||||
import android.os.IBinder;
|
||||
import android.os.Looper;
|
||||
@@ -69,6 +68,7 @@ import com.android.systemui.statusbar.phone.NavigationBarFragment;
|
||||
import com.android.systemui.statusbar.phone.NavigationBarView;
|
||||
import com.android.systemui.statusbar.phone.NavigationModeController;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.phone.StatusBarWindowController;
|
||||
import com.android.systemui.statusbar.policy.CallbackController;
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController.DeviceProvisionedListener;
|
||||
@@ -516,7 +516,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
final NavigationBarController navBar = Dependency.get(NavigationBarController.class);
|
||||
final NavigationBarFragment navBarFragment = navBar.getDefaultNavigationBarFragment();
|
||||
final NavigationBarView navBarView = navBar.getNavigationBarView(mContext.getDisplayId());
|
||||
final StatusBar statusBar = SysUiServiceProvider.getComponent(mContext, StatusBar.class);
|
||||
final StatusBarWindowController statusBarController =
|
||||
Dependency.get(StatusBarWindowController.class);
|
||||
|
||||
mSysUiStateFlags = 0;
|
||||
if (navBarFragment != null) {
|
||||
@@ -525,8 +526,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
|
||||
if (navBarView != null) {
|
||||
navBarView.updateSystemUiStateFlags();
|
||||
}
|
||||
if (statusBar != null) {
|
||||
statusBar.updateSystemUiStateFlags();
|
||||
if (statusBarController != null) {
|
||||
statusBarController.updateSystemUiStateFlags();
|
||||
}
|
||||
notifySystemUiStateFlags(mSysUiStateFlags);
|
||||
}
|
||||
|
||||
@@ -30,8 +30,6 @@ import static com.android.systemui.Dependency.MAIN_HANDLER;
|
||||
import static com.android.systemui.keyguard.WakefulnessLifecycle.WAKEFULNESS_ASLEEP;
|
||||
import static com.android.systemui.keyguard.WakefulnessLifecycle.WAKEFULNESS_AWAKE;
|
||||
import static com.android.systemui.keyguard.WakefulnessLifecycle.WAKEFULNESS_WAKING;
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BOUNCER_SHOWING;
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING;
|
||||
import static com.android.systemui.shared.system.WindowManagerWrapper.NAV_BAR_POS_INVALID;
|
||||
import static com.android.systemui.shared.system.WindowManagerWrapper.NAV_BAR_POS_LEFT;
|
||||
import static com.android.systemui.statusbar.NotificationLockscreenUserManager.PERMISSION_SELF;
|
||||
@@ -169,7 +167,6 @@ import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper.Snoo
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.qs.QSFragment;
|
||||
import com.android.systemui.qs.QSPanel;
|
||||
import com.android.systemui.recents.OverviewProxyService;
|
||||
import com.android.systemui.recents.Recents;
|
||||
import com.android.systemui.recents.ScreenPinningRequest;
|
||||
import com.android.systemui.shared.system.WindowManagerWrapper;
|
||||
@@ -788,8 +785,6 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
int disabledFlags2 = result.mDisabledFlags2;
|
||||
Dependency.get(InitController.class).addPostInitTask(
|
||||
() -> setUpDisableFlags(disabledFlags1, disabledFlags2));
|
||||
|
||||
updateSystemUiStateFlags();
|
||||
}
|
||||
|
||||
// ================================================================================
|
||||
@@ -3423,7 +3418,6 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
updateDozingState();
|
||||
checkBarModes();
|
||||
updateScrimController();
|
||||
updateSystemUiStateFlags();
|
||||
mPresenter.updateMediaMetaData(false, mState != StatusBarState.KEYGUARD);
|
||||
mKeyguardMonitor.notifyKeyguardState(mStatusBarKeyguardViewManager.isShowing(),
|
||||
mUnlockMethodCache.isMethodSecure(),
|
||||
@@ -3590,16 +3584,6 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
if (!mBouncerShowing) {
|
||||
updatePanelExpansionForKeyguard();
|
||||
}
|
||||
updateSystemUiStateFlags();
|
||||
}
|
||||
|
||||
public void updateSystemUiStateFlags() {
|
||||
OverviewProxyService overviewProxyService = Dependency.get(OverviewProxyService.class);
|
||||
overviewProxyService.setSystemUiStateFlag(SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING,
|
||||
mStatusBarStateController.getState() == StatusBarState.KEYGUARD,
|
||||
mDisplayId);
|
||||
overviewProxyService.setSystemUiStateFlag(SYSUI_STATE_BOUNCER_SHOWING,
|
||||
isBouncerShowing(), mDisplayId);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -18,6 +18,9 @@ package com.android.systemui.statusbar.phone;
|
||||
|
||||
import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
|
||||
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BOUNCER_SHOWING;
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING;
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED;
|
||||
import static com.android.systemui.statusbar.NotificationRemoteInputManager.ENABLE_REMOTE_INPUT;
|
||||
|
||||
import android.app.ActivityManager;
|
||||
@@ -45,6 +48,7 @@ import com.android.systemui.colorextraction.SysuiColorExtractor;
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.recents.OverviewProxyService;
|
||||
import com.android.systemui.statusbar.RemoteInputController.Callback;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
@@ -316,6 +320,18 @@ public class StatusBarWindowController implements Callback, Dumpable, Configurat
|
||||
}
|
||||
mHasTopUi = mHasTopUiChanged;
|
||||
}
|
||||
updateSystemUiStateFlags();
|
||||
}
|
||||
|
||||
public void updateSystemUiStateFlags() {
|
||||
int displayId = mContext.getDisplayId();
|
||||
OverviewProxyService overviewProxyService = Dependency.get(OverviewProxyService.class);
|
||||
overviewProxyService.setSystemUiStateFlag(SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING,
|
||||
mCurrentState.keyguardShowing && !mCurrentState.keyguardOccluded, displayId);
|
||||
overviewProxyService.setSystemUiStateFlag(SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED,
|
||||
mCurrentState.keyguardShowing && mCurrentState.keyguardOccluded, displayId);
|
||||
overviewProxyService.setSystemUiStateFlag(SYSUI_STATE_BOUNCER_SHOWING,
|
||||
mCurrentState.bouncerShowing, displayId);
|
||||
}
|
||||
|
||||
private void applyForceStatusBarVisibleFlag(State state) {
|
||||
|
||||
Reference in New Issue
Block a user