From c502cb751508dd2008ee5e0601d4aae31cbaf6ca Mon Sep 17 00:00:00 2001 From: Peiyong Lin Date: Fri, 1 Mar 2019 15:00:23 -0800 Subject: [SurfaceFlinger] Add setColorSpaceAgnostic API. Some layers, for example ScreenDecorOverlay*, only carry black, white or gray with some transpanrency, these values are special as they are color space agnostic. We don't need to do color conversion on them, instead we want to intercept the color space before we send to hardware composer for validation. This patch adds an API to allow this to happen. BUG: 126616348 Test: Build, flash and boot. Verify by calling in Letterbox. Change-Id: I62c9bf4feb320b466584a90df707c2b04213339c --- libs/gui/LayerState.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libs/gui/LayerState.cpp') diff --git a/libs/gui/LayerState.cpp b/libs/gui/LayerState.cpp index 962d2630bc..84ba64494f 100644 --- a/libs/gui/LayerState.cpp +++ b/libs/gui/LayerState.cpp @@ -100,6 +100,7 @@ status_t layer_state_t::write(Parcel& output) const output.writeFloat(bgColorAlpha); output.writeUint32(static_cast(bgColorDataspace)); + output.writeBool(colorSpaceAgnostic); return NO_ERROR; } @@ -177,6 +178,7 @@ status_t layer_state_t::read(const Parcel& input) bgColorAlpha = input.readFloat(); bgColorDataspace = static_cast(input.readUint32()); + colorSpaceAgnostic = input.readBool(); return NO_ERROR; } -- cgit v1.2.3-59-g8ed1b