Bug 1322650 - Support a 'continuous' mode for SurfaceTexture r=jgilbert

This is needed to support Flash on Android

MozReview-Commit-ID: 5yNIoZHonla
This commit is contained in:
James Willcox
2017-03-09 17:50:21 -06:00
parent b881e284fb
commit ccb36b4158
10 changed files with 40 additions and 13 deletions

View File

@@ -81,6 +81,7 @@ EGLImageTextureData::Serialize(SurfaceDescriptor& aOutDescriptor)
already_AddRefed<TextureClient>
AndroidSurfaceTextureData::CreateTextureClient(AndroidSurfaceTextureHandle aHandle,
gfx::IntSize aSize,
bool aContinuous,
gl::OriginPos aOriginPos,
LayersIPCChannel* aAllocator,
TextureFlags aFlags)
@@ -90,15 +91,16 @@ AndroidSurfaceTextureData::CreateTextureClient(AndroidSurfaceTextureHandle aHand
}
return TextureClient::CreateWithData(
new AndroidSurfaceTextureData(aHandle, aSize),
new AndroidSurfaceTextureData(aHandle, aSize, aContinuous),
aFlags, aAllocator
);
}
AndroidSurfaceTextureData::AndroidSurfaceTextureData(AndroidSurfaceTextureHandle aHandle,
gfx::IntSize aSize)
gfx::IntSize aSize, bool aContinuous)
: mHandle(aHandle)
, mSize(aSize)
, mContinuous(aContinuous)
{
MOZ_ASSERT(mHandle);
}
@@ -120,7 +122,7 @@ AndroidSurfaceTextureData::FillInfo(TextureData::Info& aInfo) const
bool
AndroidSurfaceTextureData::Serialize(SurfaceDescriptor& aOutDescriptor)
{
aOutDescriptor = SurfaceTextureDescriptor(mHandle, mSize);
aOutDescriptor = SurfaceTextureDescriptor(mHandle, mSize, mContinuous);
return true;
}