diff options
Diffstat (limited to 'arm64/include/frameworks/native/libs/gui/include')
-rw-r--r-- | arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h | 14 | ||||
-rw-r--r-- | arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h | 4 |
2 files changed, 17 insertions, 1 deletions
diff --git a/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h b/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h index e60f677..39dbe9e 100644 --- a/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h +++ b/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h @@ -25,6 +25,7 @@ #include <gui/ITransactionCompletedListener.h> #include <math/mat4.h> +#include <android/gui/DropInputMode.h> #ifndef NO_INPUT #include <input/InputWindow.h> #endif @@ -105,6 +106,8 @@ struct layer_state_t { eBackgroundBlurRadiusChanged = 0x80'00000000, eProducerDisconnect = 0x100'00000000, eFixedTransformHintChanged = 0x200'00000000, + eTrustedOverlayChanged = 0x400'00000000, + eDropInputModeChanged = 0x8000'00000000, }; layer_state_t() @@ -139,7 +142,9 @@ struct layer_state_t { frameRateSelectionPriority(-1), frameRate(0.0f), frameRateCompatibility(ANATIVEWINDOW_FRAME_RATE_COMPATIBILITY_DEFAULT), - fixedTransformHint(ui::Transform::ROT_INVALID) { + fixedTransformHint(ui::Transform::ROT_INVALID), + isTrustedOverlay(false), + dropInputMode(gui::DropInputMode::NONE) { matrix.dsdx = matrix.dtdy = 1.0f; matrix.dsdy = matrix.dtdx = 0.0f; hdrMetadata.validTypes = 0; @@ -237,6 +242,13 @@ struct layer_state_t { // a buffer of a different size. -1 means the transform hint is not set, // otherwise the value will be a valid ui::Rotation. ui::Transform::RotationFlags fixedTransformHint; + + // An inherited state that indicates that this surface control and its children + // should be trusted for input occlusion detection purposes + bool isTrustedOverlay; + + // Force inputflinger to drop all input events for the layer and its children. + gui::DropInputMode dropInputMode; }; struct ComposerState { diff --git a/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h b/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h index adcb898..2e189e5 100644 --- a/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h +++ b/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h @@ -529,6 +529,10 @@ public: // a buffer of a different size. Transaction& setFixedTransformHint(const sp<SurfaceControl>& sc, int32_t transformHint); + // Sets that this surface control and its children are trusted overlays for input + Transaction& setTrustedOverlay(const sp<SurfaceControl>& sc, bool isTrustedOverlay); + + Transaction& setDropInputMode(const sp<SurfaceControl>& sc, gui::DropInputMode mode); status_t setDisplaySurface(const sp<IBinder>& token, const sp<IGraphicBufferProducer>& bufferProducer); |