Temporarily enabling various tracing for debug devices
Change-Id: Iebee7d0a4c408f50ab911b31edbec12499a42844
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index 8cd2c02..91ea29b 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -37,6 +37,7 @@
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
+import android.util.SparseArray;
import android.view.Choreographer;
import android.view.MotionEvent;
import android.view.View;
@@ -47,6 +48,7 @@
import com.android.launcher3.MainThreadExecutor;
import com.android.launcher3.R;
import com.android.launcher3.uioverrides.UiFactory;
+import com.android.launcher3.util.TraceHelper;
import com.android.systemui.shared.recents.IOverviewProxy;
import com.android.systemui.shared.recents.ISystemUiProxy;
import com.android.systemui.shared.system.ActivityManagerWrapper;
@@ -58,6 +60,15 @@
@TargetApi(Build.VERSION_CODES.O)
public class TouchInteractionService extends Service {
+ private static final SparseArray<String> sMotionEventNames;
+
+ static {
+ sMotionEventNames = new SparseArray<>(3);
+ sMotionEventNames.put(ACTION_DOWN, "ACTION_DOWN");
+ sMotionEventNames.put(ACTION_UP, "ACTION_UP");
+ sMotionEventNames.put(ACTION_CANCEL, "ACTION_CANCEL");
+ }
+
public static final int EDGE_NAV_BAR = 1 << 8;
private static final String TAG = "TouchInteractionService";
@@ -71,12 +82,19 @@
@Override
public void onPreMotionEvent(@HitTarget int downHitTarget) throws RemoteException {
+ TraceHelper.beginSection("SysUiBinder");
onBinderPreMotionEvent(downHitTarget);
+ TraceHelper.partitionSection("SysUiBinder", "Down target " + downHitTarget);
}
@Override
public void onMotionEvent(MotionEvent ev) {
mEventQueue.queue(ev);
+
+ String name = sMotionEventNames.get(ev.getActionMasked());
+ if (name != null){
+ TraceHelper.partitionSection("SysUiBinder", name);
+ }
}
@Override
@@ -93,12 +111,14 @@
@Override
public void onQuickSwitch() {
mEventQueue.onQuickSwitch();
+ TraceHelper.endSection("SysUiBinder", "onQuickSwitch");
}
@Override
public void onQuickScrubStart() {
mEventQueue.onQuickScrubStart();
sQuickScrubEnabled = true;
+ TraceHelper.partitionSection("SysUiBinder", "onQuickScrubStart");
}
@Override
@@ -109,6 +129,7 @@
@Override
public void onQuickScrubEnd() {
mEventQueue.onQuickScrubEnd();
+ TraceHelper.endSection("SysUiBinder", "onQuickScrubEnd");
sQuickScrubEnabled = false;
}
};
diff --git a/src/com/android/launcher3/FirstFrameAnimatorHelper.java b/src/com/android/launcher3/FirstFrameAnimatorHelper.java
index cea7e43..4eac4a4 100644
--- a/src/com/android/launcher3/FirstFrameAnimatorHelper.java
+++ b/src/com/android/launcher3/FirstFrameAnimatorHelper.java
@@ -73,13 +73,7 @@
view.getViewTreeObserver().removeOnDrawListener(sGlobalDrawListener);
}
- TraceHelper.beginSection("TICK");
- sGlobalDrawListener = new ViewTreeObserver.OnDrawListener() {
- public void onDraw() {
- sGlobalFrameCounter++;
- TraceHelper.partitionSection("TICK", "Frame drawn");
- }
- };
+ sGlobalDrawListener = () -> sGlobalFrameCounter++;
view.getViewTreeObserver().addOnDrawListener(sGlobalDrawListener);
sVisible = true;
}
diff --git a/src/com/android/launcher3/util/TraceHelper.java b/src/com/android/launcher3/util/TraceHelper.java
index bde9c0a..ac381cc 100644
--- a/src/com/android/launcher3/util/TraceHelper.java
+++ b/src/com/android/launcher3/util/TraceHelper.java
@@ -15,12 +15,16 @@
*/
package com.android.launcher3.util;
+import static android.util.Log.VERBOSE;
+import static android.util.Log.isLoggable;
+
import android.os.SystemClock;
import android.os.Trace;
import android.util.ArrayMap;
import android.util.Log;
import android.util.MutableLong;
+import com.android.launcher3.Utilities;
import com.android.launcher3.config.FeatureFlags;
/**
@@ -31,7 +35,8 @@
*/
public class TraceHelper {
- private static final boolean ENABLED = FeatureFlags.IS_DOGFOOD_BUILD;
+ private static final boolean FORCE_LOG = Utilities.IS_DEBUG_DEVICE;
+ private static final boolean ENABLED = FORCE_LOG || FeatureFlags.IS_DOGFOOD_BUILD;
private static final boolean SYSTEM_TRACE = false;
private static final ArrayMap<String, MutableLong> sUpTimes = ENABLED ? new ArrayMap<>() : null;
@@ -40,7 +45,7 @@
if (ENABLED) {
MutableLong time = sUpTimes.get(sectionName);
if (time == null) {
- time = new MutableLong(Log.isLoggable(sectionName, Log.VERBOSE) ? 0 : -1);
+ time = new MutableLong((FORCE_LOG || isLoggable(sectionName, VERBOSE)) ? 0 : -1);
sUpTimes.put(sectionName, time);
}
if (time.value >= 0) {