diff options
author | Rob Carr <racarr@google.com> | 2022-04-05 22:14:00 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2022-04-05 22:14:00 +0000 |
commit | 0d84110c372c909bf577796b087d0569008056d3 (patch) | |
tree | 090d40147e2636921c2bad736bc531691a38832e /core | |
parent | f0f218dd01c1bab8d383a119ef20e8f46d72d0b9 (diff) | |
parent | 20303e05bf73796124ab70a279cf849b61b97905 (diff) |
Merge "DO NOT MERGE: WM: Call Transaction#sanitize" into sc-v2-dev
Diffstat (limited to 'core')
-rw-r--r-- | core/java/android/view/SurfaceControl.java | 8 | ||||
-rw-r--r-- | core/jni/android_view_SurfaceControl.cpp | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/core/java/android/view/SurfaceControl.java b/core/java/android/view/SurfaceControl.java index 960d23d7afb0..a686cbf257ef 100644 --- a/core/java/android/view/SurfaceControl.java +++ b/core/java/android/view/SurfaceControl.java @@ -245,6 +245,7 @@ public final class SurfaceControl implements Parcelable { @SurfaceControl.BufferTransform int transformHint); private static native int nativeGetTransformHint(long nativeObject); private static native int nativeGetLayerId(long nativeObject); + private static native void nativeSanitize(long transactionObject); /** * Transforms that can be applied to buffers as they are displayed to a window. @@ -3544,6 +3545,13 @@ public final class SurfaceControl implements Parcelable { } /** + * @hide + */ + public void sanitize() { + nativeSanitize(mNativeObject); + } + + /** * Merge the other transaction into this transaction, clearing the * other transaction as if it had been applied. * diff --git a/core/jni/android_view_SurfaceControl.cpp b/core/jni/android_view_SurfaceControl.cpp index 1452c67ae3c6..33fc92d60d62 100644 --- a/core/jni/android_view_SurfaceControl.cpp +++ b/core/jni/android_view_SurfaceControl.cpp @@ -877,6 +877,11 @@ static void nativeSetDropInputMode(JNIEnv* env, jclass clazz, jlong transactionO transaction->setDropInputMode(ctrl, static_cast<gui::DropInputMode>(mode)); } +static void nativeSanitize(JNIEnv* env, jclass clazz, jlong transactionObj) { + auto transaction = reinterpret_cast<SurfaceComposerClient::Transaction*>(transactionObj); + transaction->sanitize(); +} + static jlongArray nativeGetPhysicalDisplayIds(JNIEnv* env, jclass clazz) { const auto displayIds = SurfaceComposerClient::getPhysicalDisplayIds(); jlongArray array = env->NewLongArray(displayIds.size()); @@ -2030,6 +2035,8 @@ static const JNINativeMethod sSurfaceControlMethods[] = { (void*)nativeSetDropInputMode }, {"nativeGetLayerId", "(J)I", (void*)nativeGetLayerId }, + {"nativeSanitize", "(J)V", + (void*) nativeSanitize } // clang-format on }; |