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

Commit 45047ab4 authored by Wu Ahan's avatar Wu Ahan Committed by Automerger Merge Worker
Browse files

Merge "Refine the latency and jank instrumentation of opening panel" into sc-dev am: bc299eb4

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14340444

Change-Id: I1c5c6a24ffd0edaf97a715e4c5ea886fe923f2e9
parents 3485d979 bc299eb4
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -213,7 +213,9 @@ public class OverviewProxyService extends CurrentUserTracker implements
                // TODO move this logic to message queue
                mStatusBarOptionalLazy.ifPresent(statusBarLazy -> {
                    StatusBar statusBar = statusBarLazy.get();
                    if (event.getActionMasked() == ACTION_DOWN) {
                        statusBar.getPanelController().startExpandLatencyTracking();
                    }
                    mHandler.post(()-> {
                        int action = event.getActionMasked();
                        if (action == ACTION_DOWN) {
+0 −2
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@ import static androidx.constraintlayout.widget.ConstraintSet.END;
import static androidx.constraintlayout.widget.ConstraintSet.PARENT_ID;
import static androidx.constraintlayout.widget.ConstraintSet.START;

import static com.android.internal.jank.InteractionJankMonitor.CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE;
import static com.android.internal.jank.InteractionJankMonitor.CUJ_NOTIFICATION_SHADE_QS_EXPAND_COLLAPSE;
import static com.android.systemui.classifier.Classifier.QS_COLLAPSE;
import static com.android.systemui.classifier.Classifier.QUICK_SETTINGS;
@@ -1730,7 +1729,6 @@ public class NotificationPanelViewController extends PanelViewController {
            return;
        }
        mExpectingSynthesizedDown = true;
        InteractionJankMonitor.getInstance().begin(mView, CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE);
        onTrackingStarted();
        updatePanelExpanded();
    }
+14 −5
Original line number Diff line number Diff line
@@ -637,6 +637,12 @@ public abstract class PanelViewController {
        animator.addListener(new AnimatorListenerAdapter() {
            private boolean mCancelled;

            @Override
            public void onAnimationStart(Animator animation) {
                InteractionJankMonitor.getInstance()
                        .begin(mView, CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE);
            }

            @Override
            public void onAnimationCancel(Animator animation) {
                mCancelled = true;
@@ -1412,12 +1418,15 @@ public abstract class PanelViewController {
                case MotionEvent.ACTION_CANCEL:
                    addMovement(event);
                    endMotionEvent(event, x, y, false /* forceCancel */);
                    // mHeightAnimator is null, there is no remaining frame, ends instrumenting.
                    if (mHeightAnimator == null) {
                        InteractionJankMonitor monitor = InteractionJankMonitor.getInstance();
                        if (event.getActionMasked() == MotionEvent.ACTION_UP) {
                            monitor.end(CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE);
                        } else {
                            monitor.cancel(CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE);
                        }
                    }
                    break;
            }
            return !mGestureWaitForTouchSlop || mTracking;