Merge "Refine the latency and jank instrumentation of opening panel" into sc-dev
This commit is contained in:
@@ -213,7 +213,9 @@ public class OverviewProxyService extends CurrentUserTracker implements
|
||||
// TODO move this logic to message queue
|
||||
mStatusBarOptionalLazy.ifPresent(statusBarLazy -> {
|
||||
StatusBar statusBar = statusBarLazy.get();
|
||||
statusBar.getPanelController().startExpandLatencyTracking();
|
||||
if (event.getActionMasked() == ACTION_DOWN) {
|
||||
statusBar.getPanelController().startExpandLatencyTracking();
|
||||
}
|
||||
mHandler.post(()-> {
|
||||
int action = event.getActionMasked();
|
||||
if (action == ACTION_DOWN) {
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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,11 +1418,14 @@ public abstract class PanelViewController {
|
||||
case MotionEvent.ACTION_CANCEL:
|
||||
addMovement(event);
|
||||
endMotionEvent(event, x, y, false /* forceCancel */);
|
||||
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);
|
||||
// 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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user