Fixed
Status Update
Comments
ki...@google.com <ki...@google.com>
te...@google.com <te...@google.com> #2
al...@google.com <al...@google.com>
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit 02b91b2d5a14b7161e1fc09e1f335515385f5819
Author: Alan Viverette <alanv@google.com>
Date: Mon Apr 12 14:15:46 2021
Avoid NPE when handling null custom selection action mode callback
Also ensures that get/set are symmetric by unerapping callback.
Relnote: """Avoid NPE when handling null custom selection action mode
callbacks on AppCompat-backed views."""
Test: AppCompatTextViewTest et al
Fixes: 173435375
Change-Id: I033c712ffa477853f122788f2335e7cab9a877fb
M appcompat/appcompat/src/androidTest/AndroidManifest.xml
A appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatAutoCompleteTextViewActivity.java
A appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatAutoCompleteTextViewTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatButtonTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatCheckedTextViewTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatEditTextTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatTextViewTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/SwitchCompatTest.java
A appcompat/appcompat/src/androidTest/res/layout/appcompat_autocompletetextview_activity.xml
M appcompat/appcompat/src/androidTest/res/values/strings.xml
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatAutoCompleteTextView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatButton.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatCheckedTextView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatEditText.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatTextView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/SwitchCompat.java
D core/core/api/current.ignore
M core/core/api/restricted_current.ignore
M core/core/api/restricted_current.txt
M core/core/src/main/java/androidx/core/widget/TextViewCompat.java
https://android-review.googlesource.com/1673613
Branch: androidx-main
commit 02b91b2d5a14b7161e1fc09e1f335515385f5819
Author: Alan Viverette <alanv@google.com>
Date: Mon Apr 12 14:15:46 2021
Avoid NPE when handling null custom selection action mode callback
Also ensures that get/set are symmetric by unerapping callback.
Relnote: """Avoid NPE when handling null custom selection action mode
callbacks on AppCompat-backed views."""
Test: AppCompatTextViewTest et al
Fixes: 173435375
Change-Id: I033c712ffa477853f122788f2335e7cab9a877fb
M appcompat/appcompat/src/androidTest/AndroidManifest.xml
A appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatAutoCompleteTextViewActivity.java
A appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatAutoCompleteTextViewTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatButtonTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatCheckedTextViewTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatEditTextTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/AppCompatTextViewTest.java
M appcompat/appcompat/src/androidTest/java/androidx/appcompat/widget/SwitchCompatTest.java
A appcompat/appcompat/src/androidTest/res/layout/appcompat_autocompletetextview_activity.xml
M appcompat/appcompat/src/androidTest/res/values/strings.xml
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatAutoCompleteTextView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatButton.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatCheckedTextView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatEditText.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/AppCompatTextView.java
M appcompat/appcompat/src/main/java/androidx/appcompat/widget/SwitchCompat.java
D core/core/api/current.ignore
M core/core/api/restricted_current.ignore
M core/core/api/restricted_current.txt
M core/core/src/main/java/androidx/core/widget/TextViewCompat.java
Description
Component used: AppCompat Version used: appcompat-1.2.0 Devices/Android versions reproduced on: Oreo, API level 26 & 27
To reproduce:
This arises from the fact that
AppCompatTextView.setCustomActionModeCallback
accepts nullables, but internally calls toTextViewCompat.wrapCustomSelectionActionModeCallback
, which requires a non-null callback.Offending lines:
To fix this, the OreoCallback wrapping should be skipped if the callback is null.