Loading services/surfaceflinger/CompositionEngine/include/compositionengine/impl/OutputLayer.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -104,7 +104,7 @@ private: void detectDisallowedCompositionTypeChange( void detectDisallowedCompositionTypeChange( aidl::android::hardware::graphics::composer3::Composition from, aidl::android::hardware::graphics::composer3::Composition from, aidl::android::hardware::graphics::composer3::Composition to) const; aidl::android::hardware::graphics::composer3::Composition to) const; bool isClientCompositionForced(bool isPeekingThrough, bool isCached) const; bool isClientCompositionForced(bool isPeekingThrough) const; void updateLuts(const LayerFECompositionState&, void updateLuts(const LayerFECompositionState&, const std::optional<std::vector<std::optional<LutProperties>>>& properties); const std::optional<std::vector<std::optional<LutProperties>>>& properties); }; }; Loading services/surfaceflinger/CompositionEngine/src/OutputLayer.cpp +3 −7 Original line number Original line Diff line number Diff line Loading @@ -876,8 +876,7 @@ void OutputLayer::writeCompositionTypeToHWC(HWC2::Layer* hwcLayer, bool isPeekingThrough, bool skipLayer) { bool isPeekingThrough, bool skipLayer) { auto& outputDependentState = editState(); auto& outputDependentState = editState(); bool isCached = !skipLayer && outputDependentState.overrideInfo.buffer; if (isClientCompositionForced(isPeekingThrough)) { if (isClientCompositionForced(isPeekingThrough, isCached)) { // If we are forcing client composition, we need to tell the HWC // If we are forcing client composition, we need to tell the HWC requestedCompositionType = Composition::CLIENT; requestedCompositionType = Composition::CLIENT; } } Loading Loading @@ -967,12 +966,9 @@ void OutputLayer::detectDisallowedCompositionTypeChange(Composition from, Compos } } } } bool OutputLayer::isClientCompositionForced(bool isPeekingThrough, bool isCached) const { bool OutputLayer::isClientCompositionForced(bool isPeekingThrough) const { // If this layer was flattened into a CachedSet then it is not necessary for // the GPU to compose it. bool requiresClientDrawnRoundedCorners = !isCached && getLayerFE().hasRoundedCorners(); return getState().forceClientComposition || return getState().forceClientComposition || (!isPeekingThrough && requiresClientDrawnRoundedCorners); (!isPeekingThrough && getLayerFE().hasRoundedCorners()); } } void OutputLayer::applyDeviceCompositionTypeChange(Composition compositionType) { void OutputLayer::applyDeviceCompositionTypeChange(Composition compositionType) { Loading services/surfaceflinger/FrontEnd/LayerSnapshot.cpp +2 −2 Original line number Original line Diff line number Diff line Loading @@ -540,7 +540,7 @@ char LayerSnapshot::classifyCompositionForDebug( case Composition::INVALID: case Composition::INVALID: return 'i'; return 'i'; case Composition::SOLID_COLOR: case Composition::SOLID_COLOR: return 'e'; return 'c'; case Composition::CURSOR: case Composition::CURSOR: return 'u'; return 'u'; case Composition::SIDEBAND: case Composition::SIDEBAND: Loading @@ -548,7 +548,7 @@ char LayerSnapshot::classifyCompositionForDebug( case Composition::DISPLAY_DECORATION: case Composition::DISPLAY_DECORATION: return 'a'; return 'a'; case Composition::REFRESH_RATE_INDICATOR: case Composition::REFRESH_RATE_INDICATOR: return 'f'; return 'r'; case Composition::CLIENT: case Composition::CLIENT: case Composition::DEVICE: case Composition::DEVICE: break; break; Loading Loading
services/surfaceflinger/CompositionEngine/include/compositionengine/impl/OutputLayer.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -104,7 +104,7 @@ private: void detectDisallowedCompositionTypeChange( void detectDisallowedCompositionTypeChange( aidl::android::hardware::graphics::composer3::Composition from, aidl::android::hardware::graphics::composer3::Composition from, aidl::android::hardware::graphics::composer3::Composition to) const; aidl::android::hardware::graphics::composer3::Composition to) const; bool isClientCompositionForced(bool isPeekingThrough, bool isCached) const; bool isClientCompositionForced(bool isPeekingThrough) const; void updateLuts(const LayerFECompositionState&, void updateLuts(const LayerFECompositionState&, const std::optional<std::vector<std::optional<LutProperties>>>& properties); const std::optional<std::vector<std::optional<LutProperties>>>& properties); }; }; Loading
services/surfaceflinger/CompositionEngine/src/OutputLayer.cpp +3 −7 Original line number Original line Diff line number Diff line Loading @@ -876,8 +876,7 @@ void OutputLayer::writeCompositionTypeToHWC(HWC2::Layer* hwcLayer, bool isPeekingThrough, bool skipLayer) { bool isPeekingThrough, bool skipLayer) { auto& outputDependentState = editState(); auto& outputDependentState = editState(); bool isCached = !skipLayer && outputDependentState.overrideInfo.buffer; if (isClientCompositionForced(isPeekingThrough)) { if (isClientCompositionForced(isPeekingThrough, isCached)) { // If we are forcing client composition, we need to tell the HWC // If we are forcing client composition, we need to tell the HWC requestedCompositionType = Composition::CLIENT; requestedCompositionType = Composition::CLIENT; } } Loading Loading @@ -967,12 +966,9 @@ void OutputLayer::detectDisallowedCompositionTypeChange(Composition from, Compos } } } } bool OutputLayer::isClientCompositionForced(bool isPeekingThrough, bool isCached) const { bool OutputLayer::isClientCompositionForced(bool isPeekingThrough) const { // If this layer was flattened into a CachedSet then it is not necessary for // the GPU to compose it. bool requiresClientDrawnRoundedCorners = !isCached && getLayerFE().hasRoundedCorners(); return getState().forceClientComposition || return getState().forceClientComposition || (!isPeekingThrough && requiresClientDrawnRoundedCorners); (!isPeekingThrough && getLayerFE().hasRoundedCorners()); } } void OutputLayer::applyDeviceCompositionTypeChange(Composition compositionType) { void OutputLayer::applyDeviceCompositionTypeChange(Composition compositionType) { Loading
services/surfaceflinger/FrontEnd/LayerSnapshot.cpp +2 −2 Original line number Original line Diff line number Diff line Loading @@ -540,7 +540,7 @@ char LayerSnapshot::classifyCompositionForDebug( case Composition::INVALID: case Composition::INVALID: return 'i'; return 'i'; case Composition::SOLID_COLOR: case Composition::SOLID_COLOR: return 'e'; return 'c'; case Composition::CURSOR: case Composition::CURSOR: return 'u'; return 'u'; case Composition::SIDEBAND: case Composition::SIDEBAND: Loading @@ -548,7 +548,7 @@ char LayerSnapshot::classifyCompositionForDebug( case Composition::DISPLAY_DECORATION: case Composition::DISPLAY_DECORATION: return 'a'; return 'a'; case Composition::REFRESH_RATE_INDICATOR: case Composition::REFRESH_RATE_INDICATOR: return 'f'; return 'r'; case Composition::CLIENT: case Composition::CLIENT: case Composition::DEVICE: case Composition::DEVICE: break; break; Loading