diff options
| author | 2024-12-07 01:34:37 +0000 | |
|---|---|---|
| committer | 2024-12-09 18:34:48 +0000 | |
| commit | 7741b31c9643df7fdbf6ee398b74dbe742d0ee8a (patch) | |
| tree | 1d410f2215d571f658f451767be79a8141532178 | |
| parent | fdddba2505d08132b8bd7002b2dfa8bec6ddb781 (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.java | 9 |
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; } /** |