summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
author Vishnu Nair <vishnun@google.com> 2023-01-19 04:44:02 +0000
committer Vishnu Nair <vishnun@google.com> 2023-01-25 01:09:05 +0000
commitcfb2d25e176dfd912580f0ebcd6820524f8b3c28 (patch)
treeb667c6e4f750835c6c6a489e3ab82ce936e5b0e4 /libs
parent1e1a387877dcee28fa1a8d80c0745b9ec7174dea (diff)
SF: LayerSnapshotBuilder updates
- Adds support for framerate, gamemode, transformhint & input - Fixes z-order traversal bug where a layer was visited twice. - Compat fix, a layer cannot be root once its parented Test: presubmit Bug: 238781169 Change-Id: Ic33aa09b2c41fadd4872ca481b41f86400629fc8
Diffstat (limited to 'libs')
-rw-r--r--libs/gui/include/gui/LayerState.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/libs/gui/include/gui/LayerState.h b/libs/gui/include/gui/LayerState.h
index ecde47fed5..0bd59e5143 100644
--- a/libs/gui/include/gui/LayerState.h
+++ b/libs/gui/include/gui/LayerState.h
@@ -232,9 +232,9 @@ struct layer_state_t {
layer_state_t::eBackgroundBlurRadiusChanged | layer_state_t::eBackgroundColorChanged |
layer_state_t::eBlurRegionsChanged | layer_state_t::eColorChanged |
layer_state_t::eColorSpaceAgnosticChanged | layer_state_t::eColorTransformChanged |
- layer_state_t::eCornerRadiusChanged | layer_state_t::eHdrMetadataChanged |
- layer_state_t::eRenderBorderChanged | layer_state_t::eShadowRadiusChanged |
- layer_state_t::eStretchChanged;
+ layer_state_t::eCornerRadiusChanged | layer_state_t::eDimmingEnabledChanged |
+ layer_state_t::eHdrMetadataChanged | layer_state_t::eRenderBorderChanged |
+ layer_state_t::eShadowRadiusChanged | layer_state_t::eStretchChanged;
// Changes which invalidates the layer's visible region in CE.
static constexpr uint64_t CONTENT_DIRTY = layer_state_t::CONTENT_CHANGES |
@@ -245,7 +245,17 @@ struct layer_state_t {
layer_state_t::HIERARCHY_CHANGES | layer_state_t::eAlphaChanged |
layer_state_t::eColorTransformChanged | layer_state_t::eCornerRadiusChanged |
layer_state_t::eFlagsChanged | layer_state_t::eLayerStackChanged |
- layer_state_t::eTrustedOverlayChanged;
+ layer_state_t::eTrustedOverlayChanged | layer_state_t::eFrameRateChanged |
+ layer_state_t::eFixedTransformHintChanged;
+
+ // Changes affecting data sent to input.
+ static constexpr uint64_t INPUT_CHANGES = layer_state_t::GEOMETRY_CHANGES |
+ layer_state_t::HIERARCHY_CHANGES | layer_state_t::eInputInfoChanged |
+ layer_state_t::eDropInputModeChanged | layer_state_t::eTrustedOverlayChanged;
+
+ // Changes that affect the visible region on a display.
+ static constexpr uint64_t VISIBLE_REGION_CHANGES =
+ layer_state_t::GEOMETRY_CHANGES | layer_state_t::HIERARCHY_CHANGES;
bool hasValidBuffer() const;
void sanitize(int32_t permissions);