drm_hwcomposer: Use float type to store alpha internally
0.0-1.0F range is a natural way to store alpha value internally,
to be converted later to DRM-specific 0-0xFFFF fixed point type at
DRM layer.
Change-Id: Iedf2b11e53bf38efd08cd4eda1346647b9ff721f
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
diff --git a/drm/DrmPlane.cpp b/drm/DrmPlane.cpp
index 76846d5..36f29b7 100644
--- a/drm/DrmPlane.cpp
+++ b/drm/DrmPlane.cpp
@@ -289,7 +289,9 @@
return -EINVAL;
}
- if (alpha_property_ && !alpha_property_.AtomicSet(pset, layer.pi.alpha)) {
+ if (alpha_property_ &&
+ !alpha_property_.AtomicSet(pset,
+ std::lround(layer.pi.alpha * UINT16_MAX))) {
return -EINVAL;
}