From 8aef79f2b5dd3c7a126754a369506dda138b7ecf Mon Sep 17 00:00:00 2001 From: Joanne Chung Date: Tue, 30 Mar 2021 22:55:02 +0800 Subject: [PATCH] Allow to report finsh/pause state if Activity isn't resume. Currently, we only report the ui translation state if the Activity is resumed. But in the real use case, the developer may call finishTranslation when the Activity moves to background or lock screen is shown. We should allow the finish/pause state can be updated for these cases. Bug: 183980346 Test: manual. Use sample app, press home and call APIs. Test: atest CtsTranslationTestCases Change-Id: I4a5cfab9d272e4d5dc23b2f679b4fbeb4a6c9d20 --- .../java/android/view/translation/UiTranslationController.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/java/android/view/translation/UiTranslationController.java b/core/java/android/view/translation/UiTranslationController.java index 0fa6e16b2e038..e97e64b5d91e0 100644 --- a/core/java/android/view/translation/UiTranslationController.java +++ b/core/java/android/view/translation/UiTranslationController.java @@ -100,7 +100,8 @@ public class UiTranslationController { */ public void updateUiTranslationState(@UiTranslationState int state, TranslationSpec sourceSpec, TranslationSpec destSpec, List views) { - if (!mActivity.isResumed()) { + if (!mActivity.isResumed() && (state == STATE_UI_TRANSLATION_STARTED + || state == STATE_UI_TRANSLATION_RESUMED)) { return; } Log.i(TAG, "updateUiTranslationState state: " + stateToString(state)