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

Commit cd68212f authored by John Reck's avatar John Reck
Browse files

Make updateSurface non-blocking

Bug: 30442298

We already do this for initialize(), fix
it so that update() is parallel with the
UI thread as well.

Shaves ~7ms off of the 99th percentile on
NotificationShade open & close

Change-Id: I1791df495453fb9e1e12362c68e3d20e837e62be
parent 0b26adbb
Loading
Loading
Loading
Loading
+0 −10
Original line number Diff line number Diff line
@@ -519,16 +519,6 @@ public final class ThreadedRenderer {
        }
    }

    /**
     * This method should be invoked whenever the current hardware renderer
     * context should be reset.
     *
     * @param surface The surface to hardware accelerate
     */
    void invalidate(Surface surface) {
        updateSurface(surface);
    }

    /**
     * Detaches the layer's surface texture from the GL context and releases
     * the texture id
+1 −1
Original line number Diff line number Diff line
@@ -158,7 +158,7 @@ void RenderProxy::updateSurface(const sp<Surface>& surface) {
    SETUP_TASK(updateSurface);
    args->context = mContext;
    args->surface = surface.get();
    postAndWait(task);
    post(task);
}

CREATE_BRIDGE2(pauseSurface, CanvasContext* context, Surface* surface) {