Loading src/com/android/launcher3/Launcher.java +2 −2 Original line number Diff line number Diff line Loading @@ -2121,7 +2121,7 @@ public class Launcher extends StatefulActivity<LauncherState> @Override public void bindScreens(IntArray orderedScreenIds) { mWorkspace.mPageIndicator.setAreScreensBinding(true); mWorkspace.mPageIndicator.setAreScreensBinding(true, mDeviceProfile.isTwoPanels); int firstScreenPosition = 0; if ((FeatureFlags.QSB_ON_FIRST_SCREEN && mIsFirstPagePinnedItemEnabled Loading Loading @@ -2650,7 +2650,7 @@ public class Launcher extends StatefulActivity<LauncherState> TraceHelper.INSTANCE.endSection(); mWorkspace.removeExtraEmptyScreen(/* stripEmptyScreens= */ true); mWorkspace.mPageIndicator.setAreScreensBinding(false); mWorkspace.mPageIndicator.setAreScreensBinding(false, mDeviceProfile.isTwoPanels); } private boolean canAnimatePageChange() { Loading src/com/android/launcher3/pageindicators/PageIndicator.java +1 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,7 @@ public interface PageIndicator { * Sets flag to indicate when the screens are in the process of binding so that we don't animate * during that period. */ default void setAreScreensBinding(boolean areScreensBinding) { default void setAreScreensBinding(boolean areScreensBinding, boolean isTwoPanels) { // No-op by default } Loading src/com/android/launcher3/pageindicators/PageIndicatorDots.java +12 −1 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.launcher3.pageindicators; import static com.android.launcher3.config.FeatureFlags.FOLDABLE_SINGLE_PAGE; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; Loading Loading @@ -129,6 +131,7 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator private float mCurrentPosition; private float mFinalPosition; private boolean mAreScreensBinding; private boolean mIsTwoPanels; private ObjectAnimator mAnimator; private @Nullable ObjectAnimator mAlphaAnimator; Loading Loading @@ -348,6 +351,12 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator @Override public void setActiveMarker(int activePage) { // In unfolded foldables, every page has two CellLayouts, so we need to halve the active // page for it to be accurate. if (mIsTwoPanels && !FOLDABLE_SINGLE_PAGE.get()) { activePage = activePage / 2; } if (mActivePage != activePage) { mActivePage = activePage; } Loading @@ -360,7 +369,9 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator } @Override public void setAreScreensBinding(boolean areScreensBinding) { public void setAreScreensBinding(boolean areScreensBinding, boolean isTwoPanels) { mIsTwoPanels = isTwoPanels; // Reapply correct current position which was skipped during setScroll. if (mAreScreensBinding && !areScreensBinding) { CURRENT_POSITION.set(this, (float) mActivePage); Loading Loading
src/com/android/launcher3/Launcher.java +2 −2 Original line number Diff line number Diff line Loading @@ -2121,7 +2121,7 @@ public class Launcher extends StatefulActivity<LauncherState> @Override public void bindScreens(IntArray orderedScreenIds) { mWorkspace.mPageIndicator.setAreScreensBinding(true); mWorkspace.mPageIndicator.setAreScreensBinding(true, mDeviceProfile.isTwoPanels); int firstScreenPosition = 0; if ((FeatureFlags.QSB_ON_FIRST_SCREEN && mIsFirstPagePinnedItemEnabled Loading Loading @@ -2650,7 +2650,7 @@ public class Launcher extends StatefulActivity<LauncherState> TraceHelper.INSTANCE.endSection(); mWorkspace.removeExtraEmptyScreen(/* stripEmptyScreens= */ true); mWorkspace.mPageIndicator.setAreScreensBinding(false); mWorkspace.mPageIndicator.setAreScreensBinding(false, mDeviceProfile.isTwoPanels); } private boolean canAnimatePageChange() { Loading
src/com/android/launcher3/pageindicators/PageIndicator.java +1 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,7 @@ public interface PageIndicator { * Sets flag to indicate when the screens are in the process of binding so that we don't animate * during that period. */ default void setAreScreensBinding(boolean areScreensBinding) { default void setAreScreensBinding(boolean areScreensBinding, boolean isTwoPanels) { // No-op by default } Loading
src/com/android/launcher3/pageindicators/PageIndicatorDots.java +12 −1 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.launcher3.pageindicators; import static com.android.launcher3.config.FeatureFlags.FOLDABLE_SINGLE_PAGE; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; Loading Loading @@ -129,6 +131,7 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator private float mCurrentPosition; private float mFinalPosition; private boolean mAreScreensBinding; private boolean mIsTwoPanels; private ObjectAnimator mAnimator; private @Nullable ObjectAnimator mAlphaAnimator; Loading Loading @@ -348,6 +351,12 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator @Override public void setActiveMarker(int activePage) { // In unfolded foldables, every page has two CellLayouts, so we need to halve the active // page for it to be accurate. if (mIsTwoPanels && !FOLDABLE_SINGLE_PAGE.get()) { activePage = activePage / 2; } if (mActivePage != activePage) { mActivePage = activePage; } Loading @@ -360,7 +369,9 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator } @Override public void setAreScreensBinding(boolean areScreensBinding) { public void setAreScreensBinding(boolean areScreensBinding, boolean isTwoPanels) { mIsTwoPanels = isTwoPanels; // Reapply correct current position which was skipped during setScroll. if (mAreScreensBinding && !areScreensBinding) { CURRENT_POSITION.set(this, (float) mActivePage); Loading