Merge "Honor per-user setting for assist gesture and long-press home" into sc-dev

This commit is contained in:
Matt Casey
2021-06-23 20:04:49 +00:00
committed by Android (Google) Code Review
5 changed files with 28 additions and 11 deletions

View File

@@ -231,7 +231,8 @@ public class DependencyProvider {
@Main Handler mainHandler, @Main Handler mainHandler,
UiEventLogger uiEventLogger, UiEventLogger uiEventLogger,
NavigationBarOverlayController navBarOverlayController, NavigationBarOverlayController navBarOverlayController,
ConfigurationController configurationController) { ConfigurationController configurationController,
UserTracker userTracker) {
return new NavigationBarController(context, return new NavigationBarController(context,
windowManager, windowManager,
assistManagerLazy, assistManagerLazy,
@@ -256,7 +257,8 @@ public class DependencyProvider {
mainHandler, mainHandler,
uiEventLogger, uiEventLogger,
navBarOverlayController, navBarOverlayController,
configurationController); configurationController,
userTracker);
} }
/** */ /** */

View File

@@ -129,6 +129,7 @@ import com.android.systemui.plugins.DarkIconDispatcher;
import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.OverviewProxyService;
import com.android.systemui.recents.Recents; import com.android.systemui.recents.Recents;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.ActivityManagerWrapper;
import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.statusbar.AutoHideUiElement; import com.android.systemui.statusbar.AutoHideUiElement;
@@ -199,6 +200,7 @@ public class NavigationBar implements View.OnAttachStateChangeListener,
private final Handler mHandler; private final Handler mHandler;
private final NavigationBarOverlayController mNavbarOverlayController; private final NavigationBarOverlayController mNavbarOverlayController;
private final UiEventLogger mUiEventLogger; private final UiEventLogger mUiEventLogger;
private final UserTracker mUserTracker;
private Bundle mSavedState; private Bundle mSavedState;
private NavigationBarView mNavigationBarView; private NavigationBarView mNavigationBarView;
@@ -459,7 +461,8 @@ public class NavigationBar implements View.OnAttachStateChangeListener,
SystemActions systemActions, SystemActions systemActions,
@Main Handler mainHandler, @Main Handler mainHandler,
NavigationBarOverlayController navbarOverlayController, NavigationBarOverlayController navbarOverlayController,
UiEventLogger uiEventLogger) { UiEventLogger uiEventLogger,
UserTracker userTracker) {
mContext = context; mContext = context;
mWindowManager = windowManager; mWindowManager = windowManager;
mAccessibilityManager = accessibilityManager; mAccessibilityManager = accessibilityManager;
@@ -484,6 +487,7 @@ public class NavigationBar implements View.OnAttachStateChangeListener,
mHandler = mainHandler; mHandler = mainHandler;
mNavbarOverlayController = navbarOverlayController; mNavbarOverlayController = navbarOverlayController;
mUiEventLogger = uiEventLogger; mUiEventLogger = uiEventLogger;
mUserTracker = userTracker;
mNavBarMode = mNavigationModeController.addListener(this); mNavBarMode = mNavigationModeController.addListener(this);
mAccessibilityButtonModeObserver.addListener(this); mAccessibilityButtonModeObserver.addListener(this);
@@ -1450,12 +1454,14 @@ public class NavigationBar implements View.OnAttachStateChangeListener,
.getAssistInfoForUser(UserHandle.USER_CURRENT) != null; .getAssistInfoForUser(UserHandle.USER_CURRENT) != null;
boolean longPressDefault = mContext.getResources().getBoolean( boolean longPressDefault = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_assistLongPressHomeEnabledDefault); com.android.internal.R.bool.config_assistLongPressHomeEnabledDefault);
mLongPressHomeEnabled = Settings.Secure.getInt(mContentResolver, mLongPressHomeEnabled = Settings.Secure.getIntForUser(mContentResolver,
Settings.Secure.ASSIST_LONG_PRESS_HOME_ENABLED, longPressDefault ? 1 : 0) != 0; Settings.Secure.ASSIST_LONG_PRESS_HOME_ENABLED, longPressDefault ? 1 : 0,
mUserTracker.getUserId()) != 0;
boolean gestureDefault = mContext.getResources().getBoolean( boolean gestureDefault = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_assistTouchGestureEnabledDefault); com.android.internal.R.bool.config_assistTouchGestureEnabledDefault);
mAssistantTouchGestureEnabled = Settings.Secure.getInt(mContentResolver, mAssistantTouchGestureEnabled = Settings.Secure.getIntForUser(mContentResolver,
Settings.Secure.ASSIST_TOUCH_GESTURE_ENABLED, gestureDefault ? 1 : 0) != 0; Settings.Secure.ASSIST_TOUCH_GESTURE_ENABLED, gestureDefault ? 1 : 0,
mUserTracker.getUserId()) != 0;
if (mOverviewProxyService.getProxy() != null) { if (mOverviewProxyService.getProxy() != null) {
try { try {
mOverviewProxyService.getProxy().onAssistantAvailable(mAssistantAvailable mOverviewProxyService.getProxy().onAssistantAvailable(mAssistantAvailable

View File

@@ -57,6 +57,7 @@ import com.android.systemui.model.SysUiState;
import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.OverviewProxyService;
import com.android.systemui.recents.Recents; import com.android.systemui.recents.Recents;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.CommandQueue.Callbacks; import com.android.systemui.statusbar.CommandQueue.Callbacks;
import com.android.systemui.statusbar.NotificationRemoteInputManager; import com.android.systemui.statusbar.NotificationRemoteInputManager;
@@ -116,6 +117,7 @@ public class NavigationBarController implements Callbacks,
private final TaskbarDelegate mTaskbarDelegate; private final TaskbarDelegate mTaskbarDelegate;
private int mNavMode; private int mNavMode;
private boolean mIsTablet; private boolean mIsTablet;
private final UserTracker mUserTracker;
/** A displayId - nav bar maps. */ /** A displayId - nav bar maps. */
@VisibleForTesting @VisibleForTesting
@@ -151,7 +153,8 @@ public class NavigationBarController implements Callbacks,
@Main Handler mainHandler, @Main Handler mainHandler,
UiEventLogger uiEventLogger, UiEventLogger uiEventLogger,
NavigationBarOverlayController navBarOverlayController, NavigationBarOverlayController navBarOverlayController,
ConfigurationController configurationController) { ConfigurationController configurationController,
UserTracker userTracker) {
mContext = context; mContext = context;
mWindowManager = windowManager; mWindowManager = windowManager;
mAssistManagerLazy = assistManagerLazy; mAssistManagerLazy = assistManagerLazy;
@@ -184,6 +187,7 @@ public class NavigationBarController implements Callbacks,
mNavigationModeController.addListener(this); mNavigationModeController.addListener(this);
mTaskbarDelegate = new TaskbarDelegate(mOverviewProxyService); mTaskbarDelegate = new TaskbarDelegate(mOverviewProxyService);
mIsTablet = isTablet(mContext.getResources().getConfiguration()); mIsTablet = isTablet(mContext.getResources().getConfiguration());
mUserTracker = userTracker;
} }
@Override @Override
@@ -361,7 +365,8 @@ public class NavigationBarController implements Callbacks,
mSystemActions, mSystemActions,
mHandler, mHandler,
mNavBarOverlayController, mNavBarOverlayController,
mUiEventLogger); mUiEventLogger,
mUserTracker);
mNavigationBars.put(displayId, navBar); mNavigationBars.put(displayId, navBar);
View navigationBarView = navBar.createView(savedState); View navigationBarView = navBar.createView(savedState);

View File

@@ -52,6 +52,7 @@ import com.android.systemui.model.SysUiState;
import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.OverviewProxyService;
import com.android.systemui.recents.Recents; import com.android.systemui.recents.Recents;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.NotificationRemoteInputManager; import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.phone.ShadeController; import com.android.systemui.statusbar.phone.ShadeController;
@@ -108,7 +109,8 @@ public class NavigationBarControllerTest extends SysuiTestCase {
Dependency.get(Dependency.MAIN_HANDLER), Dependency.get(Dependency.MAIN_HANDLER),
mock(UiEventLogger.class), mock(UiEventLogger.class),
mock(NavigationBarOverlayController.class), mock(NavigationBarOverlayController.class),
mock(ConfigurationController.class))); mock(ConfigurationController.class),
mock(UserTracker.class)));
initializeNavigationBars(); initializeNavigationBars();
} }

View File

@@ -76,6 +76,7 @@ import com.android.systemui.navigationbar.gestural.EdgeBackGestureHandler;
import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.recents.OverviewProxyService;
import com.android.systemui.recents.Recents; import com.android.systemui.recents.Recents;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.NotificationRemoteInputManager; import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.phone.ShadeController; import com.android.systemui.statusbar.phone.ShadeController;
@@ -276,7 +277,8 @@ public class NavigationBarTest extends SysuiTestCase {
mock(SystemActions.class), mock(SystemActions.class),
mHandler, mHandler,
mock(NavigationBarOverlayController.class), mock(NavigationBarOverlayController.class),
mUiEventLogger)); mUiEventLogger,
mock(UserTracker.class)));
} }
private void processAllMessages() { private void processAllMessages() {