Use dimming ratio when detecting hdr type for local TMO
...otherwise UltraHDR isn't counted as HDR, which then disables
tonemapping to SDR.
Bug: 329464641
Flag: com.android.graphics.surfaceflinger.flags.local_tonemap_screenshots
Test: screenshot Chrome showing an HDR image
Change-Id: I71febc9ef3477938deb4cb904a464f3ab4e598f9
diff --git a/libs/renderengine/skia/SkiaRenderEngine.cpp b/libs/renderengine/skia/SkiaRenderEngine.cpp
index c39da95..5f37125 100644
--- a/libs/renderengine/skia/SkiaRenderEngine.cpp
+++ b/libs/renderengine/skia/SkiaRenderEngine.cpp
@@ -525,7 +525,8 @@
static_cast<ui::PixelFormat>(targetBuffer->getPixelFormat()))
: std::nullopt;
- const auto hdrType = getHdrRenderType(parameters.layer.sourceDataspace, format);
+ const auto hdrType = getHdrRenderType(parameters.layer.sourceDataspace, format,
+ parameters.layerDimmingRatio);
const auto usingLocalTonemap =
parameters.display.tonemapStrategy == DisplaySettings::TonemapStrategy::Local &&