summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Taran Singh <tarandeep@google.com> 2024-12-07 01:34:37 +0000
committer Taran Singh <tarandeep@google.com> 2024-12-09 18:34:48 +0000
commit7741b31c9643df7fdbf6ee398b74dbe742d0ee8a (patch)
tree1d410f2215d571f658f451767be79a8141532178
parentfdddba2505d08132b8bd7002b2dfa8bec6ddb781 (diff)
Make setStylusHandwritingRegion param immutable
Copy the Region to set so that its unmodifiable after the fact. Fix: 379894953 Bug: 350047836 Test: atest StylusHandwritingTest Flag: android.view.inputmethod.adaptive_handwriting_bounds Change-Id: I249d9d6db09048feab8da2a12721e829c9a09a5d
-rw-r--r--core/java/android/inputmethodservice/InputMethodService.java9
1 files changed, 5 insertions, 4 deletions
diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java
index 5f3c15d1842e..4c9e73c8b21f 100644
--- a/core/java/android/inputmethodservice/InputMethodService.java
+++ b/core/java/android/inputmethodservice/InputMethodService.java
@@ -3202,7 +3202,8 @@ public class InputMethodService extends AbstractInputMethodService {
*/
@FlaggedApi(Flags.FLAG_ADAPTIVE_HANDWRITING_BOUNDS)
public final void setStylusHandwritingRegion(@NonNull Region handwritingRegion) {
- if (handwritingRegion.equals(mLastHandwritingRegion)) {
+ final Region immutableHandwritingRegion = new Region(handwritingRegion);
+ if (immutableHandwritingRegion.equals(mLastHandwritingRegion)) {
Log.v(TAG, "Failed to set setStylusHandwritingRegion():"
+ " same region set twice.");
return;
@@ -3210,10 +3211,10 @@ public class InputMethodService extends AbstractInputMethodService {
if (DEBUG) {
Log.d(TAG, "Setting new handwriting region for stylus handwriting "
- + handwritingRegion + " from last " + mLastHandwritingRegion);
+ + immutableHandwritingRegion + " from last " + mLastHandwritingRegion);
}
- mPrivOps.setHandwritingTouchableRegion(handwritingRegion);
- mLastHandwritingRegion = handwritingRegion;
+ mPrivOps.setHandwritingTouchableRegion(immutableHandwritingRegion);
+ mLastHandwritingRegion = immutableHandwritingRegion;
}
/**