diff options
| -rw-r--r-- | core/java/android/widget/TextView.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index 27d8a8f23e46..b74c8795ffb1 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -6938,12 +6938,26 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener * parameters used to create the PrecomputedText mismatches * with this TextView. */ - @android.view.RemotableViewMethod + @android.view.RemotableViewMethod(asyncImpl = "setTextAsync") public final void setText(CharSequence text) { setText(text, mBufferType); } /** + * RemotableViewMethod's asyncImpl of {@link #setText(CharSequence)}. + * This should be called on a background thread, and returns a Runnable which is then must be + * called on the main thread to complete the operation and set text. + * @param text text to be displayed + * @return Runnable that sets text; must be called on the main thread by the caller of this + * method to complete the operation + * @hide + */ + @NonNull + public Runnable setTextAsync(@Nullable CharSequence text) { + return () -> setText(text); + } + + /** * Sets the text to be displayed but retains the cursor position. Same as * {@link #setText(CharSequence)} except that the cursor position (if any) is retained in the * new text. |