diff options
author | Chris Craik <ccraik@google.com> | 2015-11-11 16:42:34 -0800 |
---|---|---|
committer | Chris Craik <ccraik@google.com> | 2015-11-12 13:05:35 -0800 |
commit | 9fded232a9548a304e0145011df8849fba0dcda7 (patch) | |
tree | ffe48b03342817dd2681825498ecdf3799e01a0d /libs/hwui/RenderProperties.h | |
parent | 8b8be50c640a13b98d364b3f36962d9cf185d6d9 (diff) |
Recycle OffscreenBuffers
Change-Id: Ia2e219026f211a5308ecf8209c5f986bb888aadd
Diffstat (limited to 'libs/hwui/RenderProperties.h')
-rw-r--r-- | libs/hwui/RenderProperties.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/libs/hwui/RenderProperties.h b/libs/hwui/RenderProperties.h index ca7789e6f19a..0bd5b65f86aa 100644 --- a/libs/hwui/RenderProperties.h +++ b/libs/hwui/RenderProperties.h @@ -608,12 +608,16 @@ public: && getOutline().getAlpha() != 0.0f; } - bool promotedToLayer() const { + bool fitsOnLayer() const { const DeviceInfo* deviceInfo = DeviceInfo::get(); LOG_ALWAYS_FATAL_IF(!deviceInfo, "DeviceInfo uninitialized"); + return mPrimitiveFields.mWidth <= deviceInfo->maxTextureSize() + && mPrimitiveFields.mHeight <= deviceInfo->maxTextureSize(); + } + + bool promotedToLayer() const { return mLayerProperties.mType == LayerType::None - && mPrimitiveFields.mWidth <= deviceInfo->maxTextureSize() - && mPrimitiveFields.mHeight <= deviceInfo->maxTextureSize() + && fitsOnLayer() && (mComputedFields.mNeedLayerForFunctors || (!MathUtils::isZero(mPrimitiveFields.mAlpha) && mPrimitiveFields.mAlpha < 1 |