Merge "Hide taskviews when animating to split" into tm-qpr-dev am: ac8c6f817b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/18580063 Change-Id: Ie4c2f4a4928288f19a383bb72b056d3e3ece61eb Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package com.android.quickstep.views;
|
||||
|
||||
import static com.android.launcher3.AbstractFloatingView.TYPE_TASK_MENU;
|
||||
import static com.android.launcher3.anim.Interpolators.ACCEL;
|
||||
import static com.android.launcher3.anim.Interpolators.DEACCEL_3;
|
||||
import static com.android.launcher3.anim.Interpolators.LINEAR;
|
||||
@@ -19,6 +20,7 @@ import android.widget.FrameLayout;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.android.launcher3.AbstractFloatingView;
|
||||
import com.android.launcher3.BaseActivity;
|
||||
import com.android.launcher3.InsettableFrameLayout;
|
||||
import com.android.launcher3.LauncherAnimUtils;
|
||||
@@ -110,13 +112,19 @@ public class FloatingTaskView extends FrameLayout {
|
||||
*/
|
||||
public static FloatingTaskView getFloatingTaskView(StatefulActivity launcher,
|
||||
View originalView, @Nullable Bitmap thumbnail, Drawable icon, RectF positionOut) {
|
||||
final BaseDragLayer dragLayer = launcher.getDragLayer();
|
||||
ViewGroup parent = (ViewGroup) dragLayer.getParent();
|
||||
final ViewGroup dragLayer = launcher.getDragLayer();
|
||||
final FloatingTaskView floatingView = (FloatingTaskView) launcher.getLayoutInflater()
|
||||
.inflate(R.layout.floating_split_select_view, parent, false);
|
||||
.inflate(R.layout.floating_split_select_view, dragLayer, false);
|
||||
|
||||
floatingView.init(launcher, originalView, thumbnail, icon, positionOut);
|
||||
parent.addView(floatingView);
|
||||
// Add this animating view underneath the existing open task menu view (if there is one)
|
||||
View openTaskView = AbstractFloatingView.getOpenView(launcher, TYPE_TASK_MENU);
|
||||
int openTaskViewIndex = dragLayer.indexOfChild(openTaskView);
|
||||
if (openTaskViewIndex == -1) {
|
||||
// Add to top if not
|
||||
openTaskViewIndex = dragLayer.getChildCount();
|
||||
}
|
||||
dragLayer.addView(floatingView, openTaskViewIndex - 1);
|
||||
return floatingView;
|
||||
}
|
||||
|
||||
@@ -125,7 +133,7 @@ public class FloatingTaskView extends FrameLayout {
|
||||
Utilities.getBoundsForViewInDragLayer(mActivity.getDragLayer(), originalView, viewBounds,
|
||||
false /* ignoreTransform */, null /* recycle */,
|
||||
mStartingPosition);
|
||||
final InsettableFrameLayout.LayoutParams lp = new InsettableFrameLayout.LayoutParams(
|
||||
final BaseDragLayer.LayoutParams lp = new BaseDragLayer.LayoutParams(
|
||||
Math.round(mStartingPosition.width()),
|
||||
Math.round(mStartingPosition.height()));
|
||||
initPosition(mStartingPosition, lp);
|
||||
|
||||
@@ -34,6 +34,7 @@ import static com.android.launcher3.Utilities.squaredTouchSlop;
|
||||
import static com.android.launcher3.anim.Interpolators.ACCEL;
|
||||
import static com.android.launcher3.anim.Interpolators.ACCEL_0_75;
|
||||
import static com.android.launcher3.anim.Interpolators.ACCEL_DEACCEL;
|
||||
import static com.android.launcher3.anim.Interpolators.DEACCEL_2;
|
||||
import static com.android.launcher3.anim.Interpolators.FAST_OUT_SLOW_IN;
|
||||
import static com.android.launcher3.anim.Interpolators.FINAL_FRAME;
|
||||
import static com.android.launcher3.anim.Interpolators.LINEAR;
|
||||
@@ -4097,6 +4098,10 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
mSecondSplitHiddenView.setVisibility(INVISIBLE);
|
||||
InteractionJankMonitorWrapper.begin(this,
|
||||
InteractionJankMonitorWrapper.CUJ_SPLIT_SCREEN_ENTER, "Second tile selected");
|
||||
|
||||
// Fade out all other views underneath placeholders
|
||||
ObjectAnimator tvFade = ObjectAnimator.ofFloat(this, RecentsView.CONTENT_ALPHA,1, 0);
|
||||
pendingAnimation.add(tvFade, DEACCEL_2, SpringProperty.DEFAULT);
|
||||
pendingAnimation.buildAnim().start();
|
||||
return true;
|
||||
}
|
||||
@@ -4110,11 +4115,11 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
mSplitInstructionsView = null;
|
||||
}
|
||||
if (mFirstFloatingTaskView != null) {
|
||||
mActivity.getRootView().removeView(mFirstFloatingTaskView);
|
||||
mActivity.getDragLayer().removeView(mFirstFloatingTaskView);
|
||||
mFirstFloatingTaskView = null;
|
||||
}
|
||||
if (mSecondFloatingTaskView != null) {
|
||||
mActivity.getRootView().removeView(mSecondFloatingTaskView);
|
||||
mActivity.getDragLayer().removeView(mSecondFloatingTaskView);
|
||||
mSecondFloatingTaskView = null;
|
||||
mSecondSplitHiddenView.setVisibility(VISIBLE);
|
||||
mSecondSplitHiddenView = null;
|
||||
|
||||
@@ -1537,7 +1537,6 @@ public class TaskView extends FrameLayout implements Reusable {
|
||||
}
|
||||
|
||||
public void initiateSplitSelect(SplitPositionOption splitPositionOption) {
|
||||
AbstractFloatingView.closeOpenViews(mActivity, false, TYPE_TASK_MENU);
|
||||
getRecentsView().initiateSplitSelect(this, splitPositionOption.stagePosition);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user