diff options
| author | Treehugger Robot <treehugger-gerrit@google.com> | 2021-12-15 17:27:35 +0000 |
|---|---|---|
| committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-12-15 17:27:35 +0000 |
| commit | 0c024d11ede9448474c9ee19746ddcd76b0d259a (patch) | |
| tree | 6de3297fdce5986a8a7ae28d9a9a707cf2133763 /core/java/android | |
| parent | b38f3d77444dd9b98569d277d4c3902b6fabe3c4 (diff) | |
| parent | e908851af58c4972419451f0b1edab1cc7b5997c (diff) | |
Merge "Fix an off-by-one bug in EditableInputConnection#endBatchEdit() return value" am: e908851af5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1923058
Change-Id: Ib201dd44251497cc10c89f5010f9aa4eb4c846d3
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/view/inputmethod/InputConnection.java | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/core/java/android/view/inputmethod/InputConnection.java b/core/java/android/view/inputmethod/InputConnection.java index 5f036a348808..4d7d182f0013 100644 --- a/core/java/android/view/inputmethod/InputConnection.java +++ b/core/java/android/view/inputmethod/InputConnection.java @@ -770,20 +770,25 @@ public interface InputConnection { boolean beginBatchEdit(); /** - * Tell the editor that you are done with a batch edit previously - * initiated with {@link #beginBatchEdit}. This ends the latest - * batch only. - * - * <p><strong>IME authors:</strong> make sure you call this - * exactly once for each call to {@link #beginBatchEdit}.</p> - * - * <p><strong>Editor authors:</strong> please be careful about - * batch edit nesting. Updates still to be held back until the end - * of the last batch edit.</p> + * Tell the editor that you are done with a batch edit previously initiated with + * {@link #beginBatchEdit()}. This ends the latest batch only. + * + * <p><strong>IME authors:</strong> make sure you call this exactly once for each call to + * {@link #beginBatchEdit()}.</p> + * + * <p><strong>Editor authors:</strong> please be careful about batch edit nesting. Updates still + * to be held back until the end of the last batch edit. In case you are delegating this API + * call to the one obtained from + * {@link android.widget.EditText#onCreateInputConnection(EditorInfo)}, there was an off-by-one + * that had returned {@code true} when its nested batch edit count becomes {@code 0} as a result + * of invoking this API. This bug is fixed in {@link android.os.Build.VERSION_CODES#TIRAMISU}. + * </p> * - * @return true if there is still a batch edit in progress after closing - * the latest one (in other words, if the nesting count is > 0), false - * otherwise or if the input connection is no longer valid. + * @return For editor authors, you must return {@code true} if a batch edit is still in progress + * after closing the latest one (in other words, if the nesting count is still a + * positive number). Return {@code false} otherwise. For IME authors, you will + * always receive {@code true} as long as the request was sent to the editor, and + * receive {@code false} only if the input connection is no longer valid. */ boolean endBatchEdit(); |
