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

Commit 04b63d2b authored by Winson Chung's avatar Winson Chung Committed by Automerger Merge Worker
Browse files

Merge "Lazy initialize the choreographer" into sc-dev am: cacddc52

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

Change-Id: I5538605bdcf42821c663d2268ae8ae86a0f2a5b3
parents e3c0949c cacddc52
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ public class FrameProtoTracer<P, S extends P, T extends P, R>
    private final TraceBuffer<P, S, T> mBuffer;
    private final File mTraceFile;
    private final ProtoTraceParams<P, S, T, R> mParams;
    private final Choreographer mChoreographer;
    private Choreographer mChoreographer;
    private final Queue<T> mPool = new LinkedList<>();
    private final ArrayList<ProtoTraceable<R>> mTraceables = new ArrayList<>();
    private final ArrayList<ProtoTraceable<R>> mTmpTraceables = new ArrayList<>();
@@ -94,7 +94,6 @@ public class FrameProtoTracer<P, S extends P, T extends P, R>
            }
        });
        mTraceFile = params.getTraceFile();
        mChoreographer = Choreographer.getMainThreadInstance();
    }

    public void start() {
@@ -140,6 +139,9 @@ public class FrameProtoTracer<P, S extends P, T extends P, R>
        }

        // Schedule an update on the next frame
        if (mChoreographer == null) {
            mChoreographer = Choreographer.getMainThreadInstance();
        }
        mChoreographer.postFrameCallback(this);
        mFrameScheduled = true;
    }