Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5ef95b19 authored by Jason Hsu's avatar Jason Hsu Committed by Automerger Merge Worker
Browse files

Merge "Add back AccessibilityFloatingMenuController into StatusBar" into sc-v2-dev am: c5f67694

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16265250

Change-Id: Iba98bcc377f2b2d507030fa4921c1a3c20da77a2
parents d747dad6 c5f67694
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -71,7 +71,9 @@ public abstract class SecureSettingsContentObserver<T> {
    public void addListener(@NonNull T listener) {
        Objects.requireNonNull(listener, "listener must be non-null");

        if (!mListeners.contains(listener)) {
            mListeners.add(listener);
        }

        if (mListeners.size() == 1) {
            mContentResolver.registerContentObserver(
+4 −4
Original line number Diff line number Diff line
@@ -98,7 +98,8 @@ public class AccessibilityFloatingMenuController implements
        mAccessibilityButtonModeObserver = accessibilityButtonModeObserver;
        mKeyguardUpdateMonitor = keyguardUpdateMonitor;

        init();
        mIsKeyguardVisible = false;
        mIsAccessibilityManagerServiceReady = false;
    }

    /**
@@ -124,9 +125,8 @@ public class AccessibilityFloatingMenuController implements
        handleFloatingMenuVisibility(mIsKeyguardVisible, mBtnMode, mBtnTargets);
    }

    private void init() {
        mIsKeyguardVisible = false;
        mIsAccessibilityManagerServiceReady = false;
    /** Initializes the AccessibilityFloatingMenuController configurations. */
    public void init() {
        mBtnMode = mAccessibilityButtonModeObserver.getCurrentAccessibilityButtonMode();
        mBtnTargets = mAccessibilityButtonTargetsObserver.getCurrentAccessibilityButtonTargets();
        registerContentObservers();
+6 −0
Original line number Diff line number Diff line
@@ -133,6 +133,7 @@ import com.android.systemui.InitController;
import com.android.systemui.Prefs;
import com.android.systemui.R;
import com.android.systemui.SystemUI;
import com.android.systemui.accessibility.floatingmenu.AccessibilityFloatingMenuController;
import com.android.systemui.animation.ActivityLaunchAnimator;
import com.android.systemui.animation.DelegateLaunchAnimatorController;
import com.android.systemui.assist.AssistManager;
@@ -732,6 +733,7 @@ public class StatusBar extends SystemUI implements
            VisualStabilityManager visualStabilityManager,
            DeviceProvisionedController deviceProvisionedController,
            NavigationBarController navigationBarController,
            AccessibilityFloatingMenuController accessibilityFloatingMenuController,
            Lazy<AssistManager> assistManagerLazy,
            ConfigurationController configurationController,
            NotificationShadeWindowController notificationShadeWindowController,
@@ -834,6 +836,7 @@ public class StatusBar extends SystemUI implements
        mVisualStabilityManager = visualStabilityManager;
        mDeviceProvisionedController = deviceProvisionedController;
        mNavigationBarController = navigationBarController;
        mAccessibilityFloatingMenuController = accessibilityFloatingMenuController;
        mAssistManagerLazy = assistManagerLazy;
        mConfigurationController = configurationController;
        mNotificationShadeWindowController = notificationShadeWindowController;
@@ -1048,6 +1051,8 @@ public class StatusBar extends SystemUI implements
        mBatteryController.observe(mLifecycle, mBatteryStateChangeCallback);
        mLifecycle.setCurrentState(RESUMED);

        mAccessibilityFloatingMenuController.init();

        // set the initial view visibility
        int disabledFlags1 = result.mDisabledFlags1;
        int disabledFlags2 = result.mDisabledFlags2;
@@ -3807,6 +3812,7 @@ public class StatusBar extends SystemUI implements
    private final DeviceProvisionedController mDeviceProvisionedController;

    private final NavigationBarController mNavigationBarController;
    private final AccessibilityFloatingMenuController mAccessibilityFloatingMenuController;

    // UI-specific methods

+3 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ import com.android.internal.logging.MetricsLogger;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.keyguard.ViewMediatorCallback;
import com.android.systemui.InitController;
import com.android.systemui.accessibility.floatingmenu.AccessibilityFloatingMenuController;
import com.android.systemui.animation.ActivityLaunchAnimator;
import com.android.systemui.assist.AssistManager;
import com.android.systemui.broadcast.BroadcastDispatcher;
@@ -184,6 +185,7 @@ public interface StatusBarPhoneModule {
            VisualStabilityManager visualStabilityManager,
            DeviceProvisionedController deviceProvisionedController,
            NavigationBarController navigationBarController,
            AccessibilityFloatingMenuController accessibilityFloatingMenuController,
            Lazy<AssistManager> assistManagerLazy,
            ConfigurationController configurationController,
            NotificationShadeWindowController notificationShadeWindowController,
@@ -285,6 +287,7 @@ public interface StatusBarPhoneModule {
                visualStabilityManager,
                deviceProvisionedController,
                navigationBarController,
                accessibilityFloatingMenuController,
                assistManagerLazy,
                configurationController,
                notificationShadeWindowController,
+5 −2
Original line number Diff line number Diff line
@@ -282,9 +282,12 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {
        mTargetsObserver = spy(Dependency.get(AccessibilityButtonTargetsObserver.class));
        mModeObserver = spy(Dependency.get(AccessibilityButtonModeObserver.class));
        mKeyguardUpdateMonitor = Dependency.get(KeyguardUpdateMonitor.class);

        return new AccessibilityFloatingMenuController(mContextWrapper, mTargetsObserver,
        final AccessibilityFloatingMenuController controller =
                new AccessibilityFloatingMenuController(mContextWrapper, mTargetsObserver,
                        mModeObserver, mKeyguardUpdateMonitor);
        controller.init();

        return controller;
    }

    private void enableAccessibilityFloatingMenuConfig() {
Loading