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

Commit de1a9f66 authored by Fabian Kozynski's avatar Fabian Kozynski Committed by Android (Google) Code Review
Browse files

Merge "Add X translation to tiles." into sc-dev

parents 7e4b3fda 9b2b0f66
Loading
Loading
Loading
Loading
+29 −7
Original line number Diff line number Diff line
@@ -81,6 +81,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
    private QSExpansionPathInterpolator mQSExpansionPathInterpolator;
    private TouchAnimator mFirstPageAnimator;
    private TouchAnimator mFirstPageDelayedAnimator;
    private TouchAnimator mTranslationXAnimator;
    private TouchAnimator mTranslationYAnimator;
    private TouchAnimator mNonfirstPageAnimator;
    private TouchAnimator mNonfirstPageDelayedAnimator;
@@ -223,18 +224,25 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
            View qqsView,
            View qsView,
            View commonParent,
            int xOffset,
            int yOffset,
            int[] temp,
            TouchAnimator.Builder animatorBuilder
            TouchAnimator.Builder animatorBuilderX,
            TouchAnimator.Builder animatorBuilderY
    ) {
        getRelativePosition(temp, qqsView, commonParent);
        int qqsPos = temp[1];
        int qqsPosX = temp[0];
        int qqsPosY = temp[1];
        getRelativePosition(temp, qsView, commonParent);
        int qsPos = temp[1];

        int diff = qsPos - qqsPos - yOffset;
        animatorBuilder.addFloat(qqsView, "translationY", 0, diff);
        animatorBuilder.addFloat(qsView, "translationY", -diff, 0);
        int qsPosX = temp[0];
        int qsPosY = temp[1];

        int xDiff = qsPosX - qqsPosX - xOffset;
        animatorBuilderX.addFloat(qqsView, "translationX", 0, xDiff);
        animatorBuilderX.addFloat(qsView, "translationX", -xDiff, 0);
        int yDiff = qsPosY - qqsPosY - yOffset;
        animatorBuilderY.addFloat(qqsView, "translationY", 0, yDiff);
        animatorBuilderY.addFloat(qsView, "translationY", -yDiff, 0);
        mAllViews.add(qqsView);
        mAllViews.add(qsView);
    }
@@ -243,6 +251,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
        mNeedsAnimatorUpdate = false;
        TouchAnimator.Builder firstPageBuilder = new Builder();
        TouchAnimator.Builder translationYBuilder = new Builder();
        TouchAnimator.Builder translationXBuilder = new Builder();

        Collection<QSTile> tiles = mHost.getTiles();
        int count = 0;
@@ -289,6 +298,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
                    getRelativePosition(loc1, quickTileView, view);
                    getRelativePosition(loc2, tileView, view);
                    int yOffset = loc2[1] - loc1[1];
                    int xOffset = loc2[0] - loc1[0];

                    // Offset the translation animation on the views
                    // (that goes from 0 to getOffsetTranslation)
@@ -299,6 +309,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
                    translationYBuilder.addFloat(tileView, "translationY",
                            -offsetWithQSBHTranslation, 0);

                    translationXBuilder.addFloat(quickTileView, "translationX", 0, xOffset);
                    translationXBuilder.addFloat(tileView, "translationX", -xOffset, 0);

                    if (mQQSTileHeightAnimator == null) {
                        mQQSTileHeightAnimator = new HeightExpansionAnimator(this,
                                quickTileView.getHeight(), tileView.getHeight());
@@ -312,8 +325,10 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
                            quickTileView.getIcon(),
                            tileView.getIcon(),
                            view,
                            xOffset,
                            yOffset,
                            loc1,
                            translationXBuilder,
                            translationYBuilder
                    );

@@ -322,8 +337,10 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
                            quickTileView.getLabelContainer(),
                            tileView.getLabelContainer(),
                            view,
                            xOffset,
                            yOffset,
                            loc1,
                            translationXBuilder,
                            translationYBuilder
                    );

@@ -332,8 +349,10 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
                            quickTileView.getSecondaryIcon(),
                            tileView.getSecondaryIcon(),
                            view,
                            xOffset,
                            yOffset,
                            loc1,
                            translationXBuilder,
                            translationYBuilder
                    );

@@ -401,7 +420,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
            mAllPagesDelayedAnimator = builder.build();
            mAllViews.add(mSecurityFooter.getView());
            translationYBuilder.setInterpolator(mQSExpansionPathInterpolator.getYInterpolator());
            translationXBuilder.setInterpolator(mQSExpansionPathInterpolator.getXInterpolator());
            mTranslationYAnimator = translationYBuilder.build();
            mTranslationXAnimator = translationXBuilder.build();
            if (mQQSTileHeightAnimator != null) {
                mQQSTileHeightAnimator.setInterpolator(
                        mQSExpansionPathInterpolator.getYInterpolator());
@@ -474,6 +495,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
            mFirstPageAnimator.setPosition(position);
            mFirstPageDelayedAnimator.setPosition(position);
            mTranslationYAnimator.setPosition(position);
            mTranslationXAnimator.setPosition(position);
            if (mQQSTileHeightAnimator != null) {
                mQQSTileHeightAnimator.setPosition(position);
            }