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

Commit 559233a0 authored by Sid Soundararajan's avatar Sid Soundararajan Committed by android-build-merger
Browse files

Merge "Reset Cards as they come into view" into nyc-dev

am: 4fd98d1f

* commit '4fd98d1f':
  Reset Cards as they come into view

Change-Id: Ib659edbd4c5d7875fb1210cae895ea94c842ee63
parents 08f11bd6 4fd98d1f
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -350,13 +350,6 @@ public class RecentsTvActivity extends Activity implements OnPreDrawListener {
        } else {
            mRecentsView.getViewTreeObserver().addOnPreDrawListener(this);
        }
        if(mTaskStackHorizontalGridView.getStack().getTaskCount() > 1 && !mLaunchedFromHome) {
            // If there are 2 or more tasks, and we are not launching from home
            // set the selected position to the 2nd task to allow for faster app switching
            mTaskStackHorizontalGridView.setSelectedPosition(1);
        } else {
            mTaskStackHorizontalGridView.setSelectedPosition(0);
        }

        // If this is a new instance from a configuration change, then we have to manually trigger
        // the enter animation state, or if recents was relaunched by AM, without going through
@@ -382,6 +375,7 @@ public class RecentsTvActivity extends Activity implements OnPreDrawListener {
        if(mLaunchedFromHome) {
            mHomeRecentsEnterExitAnimationHolder.startEnterAnimation(mPipManager.isPipShown());
        }
        mTaskStackViewAdapter.setResetAddedCards(true);
        EventBus.getDefault().send(new EnterRecentsWindowAnimationCompletedEvent());
    }

@@ -389,12 +383,20 @@ public class RecentsTvActivity extends Activity implements OnPreDrawListener {
    public void onResume() {
        super.onResume();
        mPipRecentsOverlayManager.onRecentsResumed();
        if(mTaskStackHorizontalGridView.getStack().getTaskCount() > 1 && !mLaunchedFromHome) {
            // If there are 2 or more tasks, and we are not launching from home
            // set the selected position to the 2nd task to allow for faster app switching
            mTaskStackHorizontalGridView.setSelectedPosition(1);
        } else {
            mTaskStackHorizontalGridView.setSelectedPosition(0);
        }
    }

    @Override
    public void onPause() {
        super.onPause();
        mPipRecentsOverlayManager.onRecentsPaused();
        mTaskStackViewAdapter.setResetAddedCards(false);
    }

    @Override
+4 −5
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package com.android.systemui.recents.tv.animations;
import android.animation.Animator.AnimatorListener;
import android.content.res.Resources;
import android.graphics.drawable.TransitionDrawable;
import android.util.TypedValue;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
@@ -39,7 +38,7 @@ public class DismissAnimationsHolder {
    private TransitionDrawable mDismissDrawable;
    private TextView mDismissText;

    private float mDismissUnselectedAlpha;
    private float mDismissIconNotInDismissStateAlpha;
    private long mShortDuration;
    private long mLongDuration;

@@ -57,7 +56,7 @@ public class DismissAnimationsHolder {
        mDismissStartYDelta = mDismissEnterYDelta * 2;
        mShortDuration =  res.getInteger(R.integer.dismiss_short_duration);
        mLongDuration =  res.getInteger(R.integer.dismiss_long_duration);
        mDismissUnselectedAlpha = res.getFloat(R.integer.dismiss_unselected_alpha);
        mDismissIconNotInDismissStateAlpha = res.getFloat(R.integer.dismiss_unselected_alpha);
    }

    public void startEnterAnimation() {
@@ -94,7 +93,7 @@ public class DismissAnimationsHolder {
        mCardDismissIcon.animate()
                .setDuration(mShortDuration)
                .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                .alpha(mDismissUnselectedAlpha)
                .alpha(mDismissIconNotInDismissStateAlpha)
                .withEndAction(new Runnable() {
                    @Override
                    public void run() {
@@ -157,7 +156,7 @@ public class DismissAnimationsHolder {
        mInfoField.animate().setListener(null);
        mThumbnailView.setAlpha(1.0f);
        mThumbnailView.setTranslationY(0);
        mCardDismissIcon.setAlpha(mDismissUnselectedAlpha);
        mCardDismissIcon.setAlpha(0.0f);
        mDismissText.setAlpha(0.0f);
    }
}
+12 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ public class TaskStackHorizontalViewAdapter extends
    private static final String TAG = "TaskStackViewAdapter";
    private List<Task> mTaskList;
    private TaskStackHorizontalGridView mGridView;
    private boolean mResetAddedCards;

    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
        private TaskCardView mTaskCardView;
@@ -125,6 +126,13 @@ public class TaskStackHorizontalViewAdapter extends
        holder.init(mTaskList.get(position));
    }

    @Override
    public void onViewAttachedToWindow(ViewHolder holder) {
        if (mResetAddedCards) {
            holder.mTaskCardView.reset();
        }
    }

    @Override
    public void onViewDetachedFromWindow(ViewHolder holder) {
        // We only want to reset on view detach if this is the last task being dismissed.
@@ -171,4 +179,8 @@ public class TaskStackHorizontalViewAdapter extends
        mTaskList.add(position, task);
        notifyItemInserted(position);
    }

    public void setResetAddedCards(boolean reset) {
        mResetAddedCards = reset;
    }
}