diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 6d861dd00e9cc..a8fe875f34858 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -30928,6 +30928,16 @@ public class View implements Drawable.Callback, KeyEvent.Callback, mViewTranslationResponse = response; } + /** + * Clears the ViewTranslationResponse stored by the default implementation of {@link + * #onViewTranslationResponse}. + * + * @hide + */ + public void clearViewTranslationResponse() { + mViewTranslationResponse = null; + } + /** * Called when the content from {@link View#onCreateVirtualViewTranslationRequests} had been * translated by the TranslationService. diff --git a/core/java/android/view/translation/UiTranslationController.java b/core/java/android/view/translation/UiTranslationController.java index 790b93a1f4951..5ac878d88100b 100644 --- a/core/java/android/view/translation/UiTranslationController.java +++ b/core/java/android/view/translation/UiTranslationController.java @@ -155,6 +155,7 @@ public class UiTranslationController { destroyTranslators(); runForEachView((view, callback) -> { callback.onClearTranslation(view); + view.clearViewTranslationResponse(); if (view.hasTranslationTransientState()) { view.setHasTransientState(false); view.setHasTranslationTransientState(false);