Remove RenderThread from EglManager
Refactor to make EglManager re-usable.
Test: hwuiunit passes, hwuimacro works
Change-Id: Ie8e9398c703fada1dc5d8baca5f42485eadea202
diff --git a/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp b/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp
index b7aa78b..c3357a2 100644
--- a/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp
+++ b/libs/hwui/pipeline/skia/SkiaOpenGLPipeline.cpp
@@ -166,7 +166,7 @@
}
DeferredLayerUpdater* SkiaOpenGLPipeline::createTextureLayer() {
- mEglManager.initialize();
+ mRenderThread.requireGlContext();
return new DeferredLayerUpdater(mRenderThread.renderState(), createLayer, Layer::Api::OpenGL);
}
@@ -184,6 +184,7 @@
}
if (surface) {
+ mRenderThread.requireGlContext();
const bool wideColorGamut = colorMode == ColorMode::WideColorGamut;
mEglSurface = mEglManager.createSurface(surface, wideColorGamut);
}
@@ -274,7 +275,7 @@
sk_sp<Bitmap> SkiaOpenGLPipeline::allocateHardwareBitmap(renderthread::RenderThread& renderThread,
SkBitmap& skBitmap) {
- renderThread.eglManager().initialize();
+ renderThread.requireGlContext();
sk_sp<GrContext> grContext = sk_ref_sp(renderThread.getGrContext());
const SkImageInfo& info = skBitmap.info();