Merge "Fix UiTranslationStateCallback crash due to null locales." into sc-dev am: 2c6a3b5cd0 am: 97f4293f4d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14419522

Change-Id: I9e1c167f771089fb0f58b232802378cea0990718
This commit is contained in:
Joanne Chung
2021-05-04 14:16:54 +00:00
committed by Automerger Merge Worker

View File

@@ -315,6 +315,8 @@ public final class UiTranslationManager {
private static class UiTranslationStateRemoteCallback extends IRemoteCallback.Stub { private static class UiTranslationStateRemoteCallback extends IRemoteCallback.Stub {
private final Executor mExecutor; private final Executor mExecutor;
private final UiTranslationStateCallback mCallback; private final UiTranslationStateCallback mCallback;
private ULocale mSourceLocale;
private ULocale mTargetLocale;
UiTranslationStateRemoteCallback(Executor executor, UiTranslationStateRemoteCallback(Executor executor,
UiTranslationStateCallback callback) { UiTranslationStateCallback callback) {
@@ -331,10 +333,12 @@ public final class UiTranslationManager {
int state = bundle.getInt(EXTRA_STATE); int state = bundle.getInt(EXTRA_STATE);
switch (state) { switch (state) {
case STATE_UI_TRANSLATION_STARTED: case STATE_UI_TRANSLATION_STARTED:
mSourceLocale = (ULocale) bundle.getSerializable(EXTRA_SOURCE_LOCALE);
mTargetLocale = (ULocale) bundle.getSerializable(EXTRA_TARGET_LOCALE);
mCallback.onStarted(mSourceLocale, mTargetLocale);
break;
case STATE_UI_TRANSLATION_RESUMED: case STATE_UI_TRANSLATION_RESUMED:
mCallback.onStarted( mCallback.onStarted(mSourceLocale, mTargetLocale);
(ULocale) bundle.getSerializable(EXTRA_SOURCE_LOCALE),
(ULocale) bundle.getSerializable(EXTRA_TARGET_LOCALE));
break; break;
case STATE_UI_TRANSLATION_PAUSED: case STATE_UI_TRANSLATION_PAUSED:
mCallback.onPaused(); mCallback.onPaused();