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

Commit fb14b747 authored by mpodolian's avatar mpodolian
Browse files

Fix bubble bar location on device boot.

Updated logic to set bubble bar location opposite to navigation bar.

Test: BubblesTest
Test: Manual. Restart the device, observe the navigation bar appears at
default location.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 380309079

Change-Id: I6644aebb5a4df77efc897bf22da1e56be5354e73
parent f0683aa8
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -274,8 +274,11 @@ public class BubbleController implements ConfigurationChangeListener,
    private final DragAndDropController mDragAndDropController;
    /** Used to send bubble events to launcher. */
    private Bubbles.BubbleStateListener mBubbleStateListener;
    /** Used to track previous navigation mode to detect switch to buttons navigation. */
    private boolean mIsPrevNavModeGestures;
    /**
     * Used to track previous navigation mode to detect switch to buttons navigation. Set to
     * true to switch the bubble bar to the opposite side for 3 nav buttons mode on device boot.
     */
    private boolean mIsPrevNavModeGestures = true;
    /** Used to send updates to the views from {@link #mBubbleDataListener}. */
    private BubbleViewCallback mBubbleViewCallback;

@@ -357,7 +360,6 @@ public class BubbleController implements ConfigurationChangeListener,
            }
        };
        mExpandedViewManager = BubbleExpandedViewManager.fromBubbleController(this);
        mIsPrevNavModeGestures = ContextUtils.isGestureNavigationMode(mContext);
    }

    private void registerOneHandedState(OneHandedController oneHanded) {
@@ -593,9 +595,9 @@ public class BubbleController implements ConfigurationChangeListener,
        if (mBubbleStateListener != null) {
            boolean isCurrentNavModeGestures = ContextUtils.isGestureNavigationMode(mContext);
            if (mIsPrevNavModeGestures && !isCurrentNavModeGestures) {
                BubbleBarLocation navButtonsLocation = ContextUtils.isRtl(mContext)
                BubbleBarLocation bubbleBarLocation = ContextUtils.isRtl(mContext)
                        ? BubbleBarLocation.RIGHT : BubbleBarLocation.LEFT;
                mBubblePositioner.setBubbleBarLocation(navButtonsLocation);
                mBubblePositioner.setBubbleBarLocation(bubbleBarLocation);
            }
            mIsPrevNavModeGestures = isCurrentNavModeGestures;
            BubbleBarUpdate update = mBubbleData.getInitialStateForBubbleBar();
+1 −1
Original line number Diff line number Diff line
@@ -141,6 +141,7 @@ import com.android.systemui.statusbar.notification.collection.NotificationEntryB
import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection;
import com.android.systemui.statusbar.notification.collection.notifcollection.NotifCollectionListener;
import com.android.systemui.statusbar.notification.collection.render.NotificationVisibilityProvider;
import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
import com.android.systemui.statusbar.notification.interruption.AvalancheProvider;
import com.android.systemui.statusbar.notification.interruption.KeyguardNotificationVisibilityProvider;
import com.android.systemui.statusbar.notification.interruption.NotificationInterruptLogger;
@@ -154,7 +155,6 @@ import com.android.systemui.statusbar.phone.KeyguardBypassController;
import com.android.systemui.statusbar.policy.BatteryController;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
import com.android.systemui.statusbar.notification.headsup.HeadsUpManager;
import com.android.systemui.statusbar.policy.KeyguardStateController;
import com.android.systemui.statusbar.policy.SensitiveNotificationProtectionController;
import com.android.systemui.statusbar.policy.ZenModeController;