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

Commit 459a6b09 authored by vadimt's avatar vadimt
Browse files

Adding tracing for quick switch not working

Bug: 152658211
Change-Id: I61686452eb1eeffbfd8ab74c59532807968068ae
parent effe04ae
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ import android.graphics.PointF;
import android.graphics.Rect;
import android.graphics.RectF;
import android.os.Build;
import android.util.Log;
import android.util.Pair;
import android.view.MotionEvent;
import android.view.View;
@@ -48,6 +49,7 @@ import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.graphics.RotationMode;
import com.android.launcher3.model.PagedViewOrientedState;
import com.android.launcher3.states.RotationHelper;
import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.touch.PagedOrientationHandler;
import com.android.launcher3.touch.PortraitPagedViewHandler;
import com.android.launcher3.util.VibratorWrapper;
@@ -198,18 +200,33 @@ public abstract class BaseSwipeUpHandler<T extends BaseDraggingActivity, Q exten
    }

    protected void startNewTask(int successStateFlag, Consumer<Boolean> resultCallback) {
        if (TestProtocol.sDebugTracing) {
            Log.d(TestProtocol.NO_START_FROM_RECENTS, "startNewTask1");
        }
        // Launch the task user scrolled to (mRecentsView.getNextPage()).
        if (ENABLE_QUICKSTEP_LIVE_TILE.get()) {
            // We finish recents animation inside launchTask() when live tile is enabled.
            mRecentsView.getNextPageTaskView().launchTask(false /* animate */,
                    true /* freezeTaskList */);
        } else {
            if (TestProtocol.sDebugTracing) {
                Log.d(TestProtocol.NO_START_FROM_RECENTS, "startNewTask2");
            }
            int taskId = mRecentsView.getNextPageTaskView().getTask().key.id;
            mFinishingRecentsAnimationForNewTaskId = taskId;
            mRecentsAnimationController.finish(true /* toRecents */, () -> {
                if (TestProtocol.sDebugTracing) {
                    Log.d(TestProtocol.NO_START_FROM_RECENTS, "onFinishComplete1");
                }
                if (!mCanceled) {
                    if (TestProtocol.sDebugTracing) {
                        Log.d(TestProtocol.NO_START_FROM_RECENTS, "onFinishComplete2");
                    }
                    TaskView nextTask = mRecentsView.getTaskView(taskId);
                    if (nextTask != null) {
                        if (TestProtocol.sDebugTracing) {
                            Log.d(TestProtocol.NO_START_FROM_RECENTS, "onFinishComplete3");
                        }
                        nextTask.launchTask(false /* animate */, true /* freezeTaskList */,
                                success -> {
                                    resultCallback.accept(success);
+8 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import android.graphics.PointF;
import android.graphics.RectF;
import android.os.Build;
import android.os.SystemClock;
import android.util.Log;
import android.view.View;
import android.view.View.OnApplyWindowInsetsListener;
import android.view.ViewTreeObserver.OnDrawListener;
@@ -64,6 +65,7 @@ import com.android.launcher3.anim.AnimationSuccessListener;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.Interpolators;
import com.android.launcher3.logging.UserEventDispatcher;
import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Direction;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Touch;
import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType;
@@ -958,6 +960,9 @@ public class LauncherSwipeHandler<T extends BaseDraggingActivity>
            windowAnim.addListener(new AnimationSuccessListener() {
                @Override
                public void onAnimationSuccess(Animator animator) {
                    if (TestProtocol.sDebugTracing) {
                        Log.d(TestProtocol.NO_START_FROM_RECENTS, "onAnimationSuccess");
                    }
                    if (mRecentsAnimationController == null) {
                        // If the recents animation is interrupted, we still end the running
                        // animation (not canceled) so this is still called. In that case, we can
@@ -1166,6 +1171,9 @@ public class LauncherSwipeHandler<T extends BaseDraggingActivity>
    }

    private void switchToScreenshot() {
        if (TestProtocol.sDebugTracing) {
            Log.d(TestProtocol.NO_START_FROM_RECENTS, "switchToScreenshot");
        }
        final int runningTaskId = mGestureState.getRunningTaskId();
        if (ENABLE_QUICKSTEP_LIVE_TILE.get()) {
            if (mRecentsAnimationController != null) {
+5 −0
Original line number Diff line number Diff line
@@ -19,11 +19,13 @@ import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;

import android.graphics.Rect;
import android.util.ArraySet;
import android.util.Log;

import androidx.annotation.BinderThread;
import androidx.annotation.UiThread;

import com.android.launcher3.Utilities;
import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.util.Preconditions;
import com.android.systemui.shared.recents.model.ThumbnailData;
import com.android.systemui.shared.system.RecentsAnimationControllerCompat;
@@ -89,6 +91,9 @@ public class RecentsAnimationCallbacks implements
            RemoteAnimationTargetCompat[] appTargets,
            RemoteAnimationTargetCompat[] wallpaperTargets,
            Rect homeContentInsets, Rect minimizedHomeBounds) {
        if (TestProtocol.sDebugTracing) {
            Log.d(TestProtocol.NO_START_FROM_RECENTS, "onAnimationStart");
        }
        RecentsAnimationTargets targets = new RecentsAnimationTargets(appTargets,
                wallpaperTargets, homeContentInsets, minimizedHomeBounds);
        mController = new RecentsAnimationController(animationController,
+4 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import androidx.annotation.UiThread;

import com.android.launcher3.Utilities;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.testing.TestProtocol;
import com.android.systemui.shared.recents.model.ThumbnailData;
import com.android.systemui.shared.system.ActivityManagerWrapper;

@@ -52,6 +53,9 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn
    @UiThread
    public RecentsAnimationCallbacks startRecentsAnimation(GestureState gestureState,
            Intent intent, RecentsAnimationCallbacks.RecentsAnimationListener listener) {
        if (TestProtocol.sDebugTracing) {
            Log.d(TestProtocol.NO_START_FROM_RECENTS, "startRecentsAnimation");
        }
        // Notify if recents animation is still running
        if (mController != null) {
            String msg = "New recents animation started before old animation completed";
+1 −0
Original line number Diff line number Diff line
@@ -96,4 +96,5 @@ public final class TestProtocol {
    public static final String NO_BACKGROUND_TO_OVERVIEW_TAG = "b/138251824";
    public static final String APP_NOT_DISABLED = "b/139891609";
    public static final String NO_SCROLL_END_WIDGETS = "b/152354290";
    public static final String NO_START_FROM_RECENTS = "b/152658211";
}