From 93e654d66c6bcc6158e4579d3b17829d23f9342f Mon Sep 17 00:00:00 2001 From: Darrell Shi Date: Thu, 8 Sep 2022 16:43:43 +0000 Subject: [PATCH] DO NOT MERGE: add interim startDream api. DreamManager#startDream has been updated on QPR and master which removes the unnecessary component name parameter, but it breaks TM CTS tests. The interim api added in this change will prevent breakage on TM, and should not be merged downstream. Test: atest DreamManagerServiceTests Fix: 245223722 Fix: 245058392 Fix: 245070240 Change-Id: Id9e8cc67003da9fc3e03bffd6ec50643d10652b5 --- core/api/test-current.txt | 1 + core/java/android/app/DreamManager.java | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/core/api/test-current.txt b/core/api/test-current.txt index 2b09e6bad8739..36888c4d2ba67 100644 --- a/core/api/test-current.txt +++ b/core/api/test-current.txt @@ -287,6 +287,7 @@ package android.app { method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void setDreamOverlay(@Nullable android.content.ComponentName); method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setScreensaverEnabled(boolean); method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void setSystemDreamComponent(@Nullable android.content.ComponentName); + method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void startDream(@Nullable android.content.ComponentName); method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void startDream(); method @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) public void stopDream(); } diff --git a/core/java/android/app/DreamManager.java b/core/java/android/app/DreamManager.java index 7c8b0fd499e36..3bb66581d5027 100644 --- a/core/java/android/app/DreamManager.java +++ b/core/java/android/app/DreamManager.java @@ -84,6 +84,25 @@ public class DreamManager { com.android.internal.R.bool.config_dreamsSupported); } + /** + * Starts dreaming. + * + * This API is equivalent to {@link DreamManager#startDream()} but with a nullable component + * name to be compatible with TM CTS tests. + * + *

This is only used for testing the dream service APIs. + * + * @see DreamManager#startDream() + * + * @hide + */ + @TestApi + @UserHandleAware + @RequiresPermission(android.Manifest.permission.WRITE_DREAM_STATE) + public void startDream(@Nullable ComponentName name) { + startDream(); + } + /** * Starts dreaming. *