Merge "Revert "Check mInputEventReceiver before sending timeline"" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
f3779061f4
@@ -1200,7 +1200,8 @@ public final class ViewRootImpl implements ViewParent,
|
||||
Looper.myLooper());
|
||||
|
||||
if (mAttachInfo.mThreadedRenderer != null) {
|
||||
InputMetricsListener listener = new InputMetricsListener();
|
||||
InputMetricsListener listener =
|
||||
new InputMetricsListener(mInputEventReceiver);
|
||||
mHardwareRendererObserver = new HardwareRendererObserver(
|
||||
listener, listener.data, mHandler, true /*waitForPresentTime*/);
|
||||
mAttachInfo.mThreadedRenderer.addObserver(mHardwareRendererObserver);
|
||||
@@ -1396,9 +1397,6 @@ public final class ViewRootImpl implements ViewParent,
|
||||
if (mAttachInfo.mThreadedRenderer != null) {
|
||||
mAttachInfo.mHardwareAccelerated =
|
||||
mAttachInfo.mHardwareAccelerationRequested = true;
|
||||
if (mHardwareRendererObserver != null) {
|
||||
mAttachInfo.mThreadedRenderer.addObserver(mHardwareRendererObserver);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8083,9 +8081,6 @@ public final class ViewRootImpl implements ViewParent,
|
||||
ThreadedRenderer hardwareRenderer = mAttachInfo.mThreadedRenderer;
|
||||
|
||||
if (hardwareRenderer != null) {
|
||||
if (mHardwareRendererObserver != null) {
|
||||
hardwareRenderer.removeObserver(mHardwareRendererObserver);
|
||||
}
|
||||
if (mView != null) {
|
||||
hardwareRenderer.destroyHardwareResources(mView);
|
||||
}
|
||||
@@ -8587,12 +8582,18 @@ public final class ViewRootImpl implements ViewParent,
|
||||
super.dispose();
|
||||
}
|
||||
}
|
||||
private WindowInputEventReceiver mInputEventReceiver;
|
||||
WindowInputEventReceiver mInputEventReceiver;
|
||||
|
||||
final class InputMetricsListener
|
||||
implements HardwareRendererObserver.OnFrameMetricsAvailableListener {
|
||||
public long[] data = new long[FrameMetrics.Index.FRAME_STATS_COUNT];
|
||||
|
||||
private InputEventReceiver mReceiver;
|
||||
|
||||
InputMetricsListener(InputEventReceiver receiver) {
|
||||
mReceiver = receiver;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFrameMetricsAvailable(int dropCountSinceLastInvocation) {
|
||||
final int inputEventId = (int) data[FrameMetrics.Index.INPUT_EVENT_ID];
|
||||
@@ -8605,11 +8606,6 @@ public final class ViewRootImpl implements ViewParent,
|
||||
// available, we cannot compute end-to-end input latency metrics.
|
||||
return;
|
||||
}
|
||||
final long gpuCompletedTime = data[FrameMetrics.Index.GPU_COMPLETED];
|
||||
if (mInputEventReceiver == null) {
|
||||
return;
|
||||
}
|
||||
mInputEventReceiver.reportTimeline(inputEventId, gpuCompletedTime, presentTime);
|
||||
}
|
||||
}
|
||||
HardwareRendererObserver mHardwareRendererObserver;
|
||||
|
||||
Reference in New Issue
Block a user