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

Commit 5db7cb9c authored by Sunny Goyal's avatar Sunny Goyal Committed by android-build-merger
Browse files

Merge "Fixing wrong origin when launching new task from overview" into ub-launcher3-qt-dev

am: bfaabbea

Change-Id: Ie0939ae8c5286631da3ef08ffaf0151bdc81c7e6
parents be8f7d28 bfaabbea
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -121,12 +121,16 @@ public final class LauncherAppTransitionManagerImpl extends QuickstepAppTransiti
        alpha.setDuration(CONTENT_ALPHA_DURATION);
        alpha.setInterpolator(LINEAR);
        anim.play(alpha);
        overview.setFreezeViewVisibility(true);

        ObjectAnimator transY = ObjectAnimator.ofFloat(overview, View.TRANSLATION_Y, trans);
        transY.setInterpolator(AGGRESSIVE_EASE);
        transY.setDuration(CONTENT_TRANSLATION_DURATION);
        anim.play(transY);

        return mLauncher.getStateManager()::reapplyState;
        return () -> {
            overview.setFreezeViewVisibility(false);
            mLauncher.getStateManager().reapplyState();
        };
    }
}
+2 −0
Original line number Diff line number Diff line
@@ -227,6 +227,7 @@ public class LauncherRecentsView extends RecentsView<Launcher> implements StateL
    @Override
    public void onStateTransitionStart(LauncherState toState) {
        setOverviewStateEnabled(toState.overviewUi);
        setFreezeViewVisibility(true);
    }

    @Override
@@ -236,6 +237,7 @@ public class LauncherRecentsView extends RecentsView<Launcher> implements StateL
            reset();
        }
        setOverlayEnabled(finalState == OVERVIEW);
        setFreezeViewVisibility(false);
    }

    @Override
+20 −1
Original line number Diff line number Diff line
@@ -188,6 +188,7 @@ public abstract class RecentsView<T extends BaseActivity> extends PagedView impl
    private boolean mDwbToastShown;
    private boolean mDisallowScrollToClearAll;
    private boolean mOverlayEnabled;
    private boolean mFreezeViewVisibility;

    /**
     * TODO: Call reloadIdNeeded in onTaskStackChanged.
@@ -1302,7 +1303,25 @@ public abstract class RecentsView<T extends BaseActivity> extends PagedView impl
        mEmptyMessagePaint.setAlpha(alphaInt);
        mEmptyIcon.setAlpha(alphaInt);

        setVisibility(alpha > 0 ? VISIBLE : GONE);
        if (alpha > 0) {
            setVisibility(VISIBLE);
        } else if (!mFreezeViewVisibility) {
            setVisibility(GONE);
        }
    }

    /**
     * Freezes the view visibility change. When frozen, the view will not change its visibility
     * to gone due to alpha changes.
     */
    public void setFreezeViewVisibility(boolean freezeViewVisibility) {
        if (mFreezeViewVisibility != freezeViewVisibility) {
            mFreezeViewVisibility = freezeViewVisibility;

            if (!mFreezeViewVisibility) {
                setVisibility(mContentAlpha > 0 ? VISIBLE : GONE);
            }
        }
    }

    @Override
+7 −3
Original line number Diff line number Diff line
@@ -124,6 +124,7 @@ public class FloatingIconView extends View implements

    private boolean mIsVerticalBarLayout = false;
    private boolean mIsAdaptiveIcon = false;
    private boolean mIsOpening;

    private @Nullable Drawable mBadge;
    private @Nullable Drawable mForeground;
@@ -178,9 +179,11 @@ public class FloatingIconView extends View implements
    @Override
    protected void onAttachedToWindow() {
        super.onAttachedToWindow();
        if (!mIsOpening) {
            getViewTreeObserver().addOnGlobalLayoutListener(this);
            mLauncher.getRotationHelper().setCurrentTransitionRequest(REQUEST_LOCK);
        }
    }

    @Override
    protected void onDetachedFromWindow() {
@@ -326,7 +329,7 @@ public class FloatingIconView extends View implements
     * - For BubbleTextView, we return the icon bounds.
     */
    private float getLocationBoundsForView(View v, RectF outRect) {
        boolean ignoreTransform = true;
        boolean ignoreTransform = !mIsOpening;
        if (v instanceof DeepShortcutView) {
            v = ((DeepShortcutView) v).getBubbleText();
            ignoreTransform = false;
@@ -627,6 +630,7 @@ public class FloatingIconView extends View implements
        view.recycle();

        view.mIsVerticalBarLayout = launcher.getDeviceProfile().isVerticalBarLayout();
        view.mIsOpening = isOpening;

        view.mOriginalIcon = originalView;
        view.mPositionOut = positionOut;