summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/Dependency.java
diff options
context:
space:
mode:
authorjasonwshsu <jasonwshsu@google.com>2021-01-11 21:27:05 +0800
committerjasonwshsu <jasonwshsu@google.com>2021-03-19 13:40:45 +0800
commit5154c4cfae9a1314012cc8dff088f750bc053810 (patch)
tree2e5305b7b1ca5872ec5c0b4f03f132727ec90867 /packages/SystemUI/src/com/android/systemui/Dependency.java
parentc1e28cc20e583b3b80a22d906c9d81591fe73e1f (diff)
Handle the basic logic to show or hide accessibility floating menu
* AccessibilityFloatingMenuController will listen to the changes from AccessibilityButtonTargetsObserver and AccessibilityButtonModeObserver then handle the visibility of FloatingMenu * Add abstract class SecureSettingsContentObserver to handle a registry of listeners of specific types and dispatch changes to child Cherry picked from commit 523514fd24d72b8420c0ca184643751980e6f218 Bug: 173940864 Test: atest AccessibilityButtonTargetsObserverTest AccessibilityButtonModeObserverTest AccessibilityFloatingMenuControllerTest Change-Id: I07fded55340644bce84a3f17a7a4da950268d2d2 Merged-In: I07fded55340644bce84a3f17a7a4da950268d2d2
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/Dependency.java')
-rw-r--r--packages/SystemUI/src/com/android/systemui/Dependency.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/Dependency.java b/packages/SystemUI/src/com/android/systemui/Dependency.java
index ae4c8e5a3327..06b486ec43d0 100644
--- a/packages/SystemUI/src/com/android/systemui/Dependency.java
+++ b/packages/SystemUI/src/com/android/systemui/Dependency.java
@@ -34,6 +34,9 @@ import com.android.keyguard.KeyguardSecurityModel;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.keyguard.clock.ClockManager;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
+import com.android.systemui.accessibility.AccessibilityButtonModeObserver;
+import com.android.systemui.accessibility.AccessibilityButtonTargetsObserver;
+import com.android.systemui.accessibility.floatingmenu.AccessibilityFloatingMenuController;
import com.android.systemui.appops.AppOpsController;
import com.android.systemui.assist.AssistManager;
import com.android.systemui.broadcast.BroadcastDispatcher;
@@ -284,6 +287,8 @@ public class Dependency {
@Inject Lazy<IWindowManager> mIWindowManager;
@Inject Lazy<OverviewProxyService> mOverviewProxyService;
@Inject Lazy<NavigationModeController> mNavBarModeController;
+ @Inject Lazy<AccessibilityButtonModeObserver> mAccessibilityButtonModeObserver;
+ @Inject Lazy<AccessibilityButtonTargetsObserver> mAccessibilityButtonListController;
@Inject Lazy<EnhancedEstimates> mEnhancedEstimates;
@Inject Lazy<VibratorHelper> mVibratorHelper;
@Inject Lazy<IStatusBarService> mIStatusBarService;
@@ -294,6 +299,7 @@ public class Dependency {
@Inject Lazy<NotificationRemoteInputManager.Callback> mNotificationRemoteInputManagerCallback;
@Inject Lazy<AppOpsController> mAppOpsController;
@Inject Lazy<NavigationBarController> mNavigationBarController;
+ @Inject Lazy<AccessibilityFloatingMenuController> mAccessibilityFloatingMenuController;
@Inject Lazy<StatusBarStateController> mStatusBarStateController;
@Inject Lazy<NotificationLockscreenUserManager> mNotificationLockscreenUserManager;
@Inject Lazy<NotificationGroupAlertTransferHelper> mNotificationGroupAlertTransferHelper;
@@ -470,6 +476,11 @@ public class Dependency {
mProviders.put(NavigationModeController.class, mNavBarModeController::get);
+ mProviders.put(AccessibilityButtonModeObserver.class,
+ mAccessibilityButtonModeObserver::get);
+ mProviders.put(AccessibilityButtonTargetsObserver.class,
+ mAccessibilityButtonListController::get);
+
mProviders.put(EnhancedEstimates.class, mEnhancedEstimates::get);
mProviders.put(VibratorHelper.class, mVibratorHelper::get);
@@ -489,6 +500,9 @@ public class Dependency {
mProviders.put(NavigationBarController.class, mNavigationBarController::get);
+ mProviders.put(AccessibilityFloatingMenuController.class,
+ mAccessibilityFloatingMenuController::get);
+
mProviders.put(StatusBarStateController.class, mStatusBarStateController::get);
mProviders.put(NotificationLockscreenUserManager.class,
mNotificationLockscreenUserManager::get);