Loading services/surfaceflinger/DisplayDevice.cpp +2 −2 Original line number Original line Diff line number Diff line Loading @@ -761,12 +761,12 @@ bool DisplayDevice::hasRenderIntent(RenderIntent intent) const { return iter != mColorModes.end() && iter->second.renderIntent == intent; return iter != mColorModes.end() && iter->second.renderIntent == intent; } } bool DisplayDevice::hasModernHdrSupport(Dataspace dataspace) const { bool DisplayDevice::hasLegacyHdrSupport(Dataspace dataspace) const { if ((dataspace == Dataspace::BT2020_PQ && hasHDR10Support()) || if ((dataspace == Dataspace::BT2020_PQ && hasHDR10Support()) || (dataspace == Dataspace::BT2020_HLG && hasHLGSupport())) { (dataspace == Dataspace::BT2020_HLG && hasHLGSupport())) { auto iter = auto iter = mColorModes.find(getColorModeKey(dataspace, RenderIntent::TONE_MAP_COLORIMETRIC)); mColorModes.find(getColorModeKey(dataspace, RenderIntent::TONE_MAP_COLORIMETRIC)); return iter != mColorModes.end() && iter->second.dataspace == dataspace; return iter == mColorModes.end() || iter->second.dataspace != dataspace; } } return false; return false; Loading services/surfaceflinger/DisplayDevice.h +3 −3 Original line number Original line Diff line number Diff line Loading @@ -150,9 +150,9 @@ public: bool hasHLGSupport() const { return mHasHLG; } bool hasHLGSupport() const { return mHasHLG; } bool hasDolbyVisionSupport() const { return mHasDolbyVision; } bool hasDolbyVisionSupport() const { return mHasDolbyVision; } // Return true if the corresponding color mode for the HDR dataspace is // Return true if the HDR dataspace is supported but // supported. // there is no corresponding color mode. bool hasModernHdrSupport(ui::Dataspace dataspace) const; bool hasLegacyHdrSupport(ui::Dataspace dataspace) const; // The returned HdrCapabilities is the combination of HDR capabilities from // The returned HdrCapabilities is the combination of HDR capabilities from // hardware composer and RenderEngine. When the DisplayDevice supports wide // hardware composer and RenderEngine. When the DisplayDevice supports wide Loading services/surfaceflinger/SurfaceFlinger.cpp +2 −2 Original line number Original line Diff line number Diff line Loading @@ -1932,9 +1932,9 @@ void SurfaceFlinger::pickColorMode(const sp<DisplayDevice>& displayDevice, Dataspace hdrDataSpace; Dataspace hdrDataSpace; Dataspace bestDataSpace = getBestDataspace(displayDevice, &hdrDataSpace); Dataspace bestDataSpace = getBestDataspace(displayDevice, &hdrDataSpace); // respect hdrDataSpace only when there is modern HDR support // respect hdrDataSpace only when there is no legacy HDR support const bool isHdr = hdrDataSpace != Dataspace::UNKNOWN && const bool isHdr = hdrDataSpace != Dataspace::UNKNOWN && displayDevice->hasModernHdrSupport(hdrDataSpace); !displayDevice->hasLegacyHdrSupport(hdrDataSpace); if (isHdr) { if (isHdr) { bestDataSpace = hdrDataSpace; bestDataSpace = hdrDataSpace; } } Loading Loading
services/surfaceflinger/DisplayDevice.cpp +2 −2 Original line number Original line Diff line number Diff line Loading @@ -761,12 +761,12 @@ bool DisplayDevice::hasRenderIntent(RenderIntent intent) const { return iter != mColorModes.end() && iter->second.renderIntent == intent; return iter != mColorModes.end() && iter->second.renderIntent == intent; } } bool DisplayDevice::hasModernHdrSupport(Dataspace dataspace) const { bool DisplayDevice::hasLegacyHdrSupport(Dataspace dataspace) const { if ((dataspace == Dataspace::BT2020_PQ && hasHDR10Support()) || if ((dataspace == Dataspace::BT2020_PQ && hasHDR10Support()) || (dataspace == Dataspace::BT2020_HLG && hasHLGSupport())) { (dataspace == Dataspace::BT2020_HLG && hasHLGSupport())) { auto iter = auto iter = mColorModes.find(getColorModeKey(dataspace, RenderIntent::TONE_MAP_COLORIMETRIC)); mColorModes.find(getColorModeKey(dataspace, RenderIntent::TONE_MAP_COLORIMETRIC)); return iter != mColorModes.end() && iter->second.dataspace == dataspace; return iter == mColorModes.end() || iter->second.dataspace != dataspace; } } return false; return false; Loading
services/surfaceflinger/DisplayDevice.h +3 −3 Original line number Original line Diff line number Diff line Loading @@ -150,9 +150,9 @@ public: bool hasHLGSupport() const { return mHasHLG; } bool hasHLGSupport() const { return mHasHLG; } bool hasDolbyVisionSupport() const { return mHasDolbyVision; } bool hasDolbyVisionSupport() const { return mHasDolbyVision; } // Return true if the corresponding color mode for the HDR dataspace is // Return true if the HDR dataspace is supported but // supported. // there is no corresponding color mode. bool hasModernHdrSupport(ui::Dataspace dataspace) const; bool hasLegacyHdrSupport(ui::Dataspace dataspace) const; // The returned HdrCapabilities is the combination of HDR capabilities from // The returned HdrCapabilities is the combination of HDR capabilities from // hardware composer and RenderEngine. When the DisplayDevice supports wide // hardware composer and RenderEngine. When the DisplayDevice supports wide Loading
services/surfaceflinger/SurfaceFlinger.cpp +2 −2 Original line number Original line Diff line number Diff line Loading @@ -1932,9 +1932,9 @@ void SurfaceFlinger::pickColorMode(const sp<DisplayDevice>& displayDevice, Dataspace hdrDataSpace; Dataspace hdrDataSpace; Dataspace bestDataSpace = getBestDataspace(displayDevice, &hdrDataSpace); Dataspace bestDataSpace = getBestDataspace(displayDevice, &hdrDataSpace); // respect hdrDataSpace only when there is modern HDR support // respect hdrDataSpace only when there is no legacy HDR support const bool isHdr = hdrDataSpace != Dataspace::UNKNOWN && const bool isHdr = hdrDataSpace != Dataspace::UNKNOWN && displayDevice->hasModernHdrSupport(hdrDataSpace); !displayDevice->hasLegacyHdrSupport(hdrDataSpace); if (isHdr) { if (isHdr) { bestDataSpace = hdrDataSpace; bestDataSpace = hdrDataSpace; } } Loading