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

Commit 0e795f08 authored by Mykola Podolian's avatar Mykola Podolian Committed by Android (Google) Code Review
Browse files

Merge "Fixed the navigation bar placement on device restart." into main

parents 4cf02b85 b79e1742
Loading
Loading
Loading
Loading
+10 −6
Original line number Diff line number Diff line
@@ -400,12 +400,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT
            }
        };
        mSeparateWindowParent.recreateControllers();
        if (com.android.wm.shell.Flags.enableBubbleBarInPersistentTaskBar()
                && mControllers.bubbleControllers.isPresent()) {
            BubbleBarLocation bubblesLocation = mControllers.bubbleControllers.get()
                    .bubbleBarViewController.getBubbleBarLocation();
            onBubbleBarLocationUpdated(bubblesLocation);
        }
    }

    private void initButtons(ViewGroup navContainer, ViewGroup endContainer,
@@ -1223,6 +1217,16 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT
        return (int) navBarTargetStartX - mNavButtonContainer.getLeft();
    }

    /** Adjusts the navigation buttons layout position according to the bubble bar location. */
    public void onTaskbarLayoutChange() {
        if (com.android.wm.shell.Flags.enableBubbleBarInPersistentTaskBar()
                && mControllers.bubbleControllers.isPresent()) {
            BubbleBarLocation bubblesLocation = mControllers.bubbleControllers.get()
                    .bubbleBarViewController.getBubbleBarLocation();
            onBubbleBarLocationUpdated(bubblesLocation);
        }
    }

    private class RotationButtonListener implements RotationButton.RotationButtonUpdatesCallback {
        @Override
        public void onVisibilityChanged(boolean isVisible) {
+6 −4
Original line number Diff line number Diff line
@@ -140,10 +140,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
    private final AnimatedFloat mTaskbarIconTranslationYForPinning = new AnimatedFloat(
            this::updateTranslationY);

    private final View.OnLayoutChangeListener mTaskbarViewLayoutChangeListener =
            (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom)
                    -> updateTaskbarIconTranslationXForPinning();


    private AnimatedFloat mTaskbarNavButtonTranslationY;
    private AnimatedFloat mTaskbarNavButtonTranslationYForInAppDisplay;
@@ -158,6 +154,12 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
    // Initialized in init.
    private TaskbarControllers mControllers;

    private final View.OnLayoutChangeListener mTaskbarViewLayoutChangeListener =
            (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> {
                updateTaskbarIconTranslationXForPinning();
                mControllers.navbarButtonsViewController.onTaskbarLayoutChange();
            };

    // Animation to align icons with Launcher, created lazily. This allows the controller to be
    // active only during the animation and does not need to worry about layout changes.
    private AnimatorPlaybackController mIconAlignControllerLazy = null;