Loading core/java/android/view/SurfaceControl.java +9 −1 Original line number Diff line number Diff line Loading @@ -239,6 +239,7 @@ public final class SurfaceControl implements Parcelable { private static native int nativeGetGPUContextPriority(); private static native void nativeSetTransformHint(long nativeObject, int transformHint); private static native int nativeGetTransformHint(long nativeObject); private static native void nativeSanitize(long transactionObject); @Nullable @GuardedBy("mLock") Loading Loading @@ -3439,6 +3440,13 @@ public final class SurfaceControl implements Parcelable { return this; } /** * @hide */ public void sanitize() { nativeSanitize(mNativeObject); } /** * Merge the other transaction into this transaction, clearing the * other transaction as if it had been applied. Loading core/jni/android_view_SurfaceControl.cpp +7 −0 Original line number Diff line number Diff line Loading @@ -875,6 +875,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()); Loading Loading @@ -2003,6 +2008,8 @@ static const JNINativeMethod sSurfaceControlMethods[] = { (void*)nativeSetTrustedOverlay }, {"nativeSetDropInputMode", "(JJI)V", (void*)nativeSetDropInputMode}, {"nativeSanitize", "(J)V", (void*) nativeSanitize } // clang-format on }; Loading services/core/java/com/android/server/wm/WindowManagerService.java +4 −0 Original line number Diff line number Diff line Loading @@ -2643,6 +2643,10 @@ public class WindowManagerService extends IWindowManager.Stub void finishDrawingWindow(Session session, IWindow client, @Nullable SurfaceControl.Transaction postDrawTransaction) { if (postDrawTransaction != null) { postDrawTransaction.sanitize(); } final long origId = Binder.clearCallingIdentity(); try { synchronized (mGlobalLock) { Loading Loading
core/java/android/view/SurfaceControl.java +9 −1 Original line number Diff line number Diff line Loading @@ -239,6 +239,7 @@ public final class SurfaceControl implements Parcelable { private static native int nativeGetGPUContextPriority(); private static native void nativeSetTransformHint(long nativeObject, int transformHint); private static native int nativeGetTransformHint(long nativeObject); private static native void nativeSanitize(long transactionObject); @Nullable @GuardedBy("mLock") Loading Loading @@ -3439,6 +3440,13 @@ public final class SurfaceControl implements Parcelable { return this; } /** * @hide */ public void sanitize() { nativeSanitize(mNativeObject); } /** * Merge the other transaction into this transaction, clearing the * other transaction as if it had been applied. Loading
core/jni/android_view_SurfaceControl.cpp +7 −0 Original line number Diff line number Diff line Loading @@ -875,6 +875,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()); Loading Loading @@ -2003,6 +2008,8 @@ static const JNINativeMethod sSurfaceControlMethods[] = { (void*)nativeSetTrustedOverlay }, {"nativeSetDropInputMode", "(JJI)V", (void*)nativeSetDropInputMode}, {"nativeSanitize", "(J)V", (void*) nativeSanitize } // clang-format on }; Loading
services/core/java/com/android/server/wm/WindowManagerService.java +4 −0 Original line number Diff line number Diff line Loading @@ -2643,6 +2643,10 @@ public class WindowManagerService extends IWindowManager.Stub void finishDrawingWindow(Session session, IWindow client, @Nullable SurfaceControl.Transaction postDrawTransaction) { if (postDrawTransaction != null) { postDrawTransaction.sanitize(); } final long origId = Binder.clearCallingIdentity(); try { synchronized (mGlobalLock) { Loading