SF: DisplayCommand.colorTransform is just a matrix
Remove the hint from DisplayCommand.colorTransform as currently
we only use ColorTransform::IDENTITY and ColorTransform::ARBITRARY_MATRIX,
which both can be expressed using a matrix.
Bug: 208879711
Test: VTS
Change-Id: I1c335647aabb7f89c2c89e54abfc839d10a659fb
diff --git a/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp b/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp
index c3214d8..96f4496 100644
--- a/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp
+++ b/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp
@@ -507,9 +507,12 @@
return unwrapRet(ret);
}
-Error HidlComposer::setColorTransform(Display display, const float* matrix, ColorTransform hint) {
+Error HidlComposer::setColorTransform(Display display, const float* matrix) {
mWriter.selectDisplay(display);
- mWriter.setColorTransform(matrix, hint);
+ const bool isIdentity = (mat4(matrix) == mat4());
+ mWriter.setColorTransform(matrix,
+ isIdentity ? ColorTransform::IDENTITY
+ : ColorTransform::ARBITRARY_MATRIX);
return Error::NONE;
}