From 864e6a796304ced9f21d84b938299aaaff1ae62f Mon Sep 17 00:00:00 2001 From: Chavi Weingarten Date: Tue, 26 Jul 2022 21:39:12 +0000 Subject: [PATCH] Create default implementation for getSyncTarget AttachedSurfaceControl is a public API so hidden APIs need to be implemented. Create a default implementation for a new hidden API to ensure backwards compatibility. Test: testRuntimeCompatibilityWithCurrentApi_android_net_ipsec_ike Fixes: 240300753 Change-Id: I4aec403e4bc13e2db902a291f1e42d8fe3d8fdf3 --- core/java/android/view/AttachedSurfaceControl.java | 5 ++++- core/java/android/window/SurfaceSyncGroup.java | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/core/java/android/view/AttachedSurfaceControl.java b/core/java/android/view/AttachedSurfaceControl.java index 5dae31373e821..c692981921098 100644 --- a/core/java/android/view/AttachedSurfaceControl.java +++ b/core/java/android/view/AttachedSurfaceControl.java @@ -145,5 +145,8 @@ public interface AttachedSurfaceControl { * * @hide */ - SurfaceSyncGroup.SyncTarget getSyncTarget(); + @Nullable + default SurfaceSyncGroup.SyncTarget getSyncTarget() { + return null; + } } diff --git a/core/java/android/window/SurfaceSyncGroup.java b/core/java/android/window/SurfaceSyncGroup.java index 5672697f665e5..4248096f307d0 100644 --- a/core/java/android/window/SurfaceSyncGroup.java +++ b/core/java/android/window/SurfaceSyncGroup.java @@ -186,7 +186,11 @@ public final class SurfaceSyncGroup { if (viewRoot == null) { return false; } - return addToSync(viewRoot.getSyncTarget()); + SyncTarget syncTarget = viewRoot.getSyncTarget(); + if (syncTarget == null) { + return false; + } + return addToSync(syncTarget); } /**