summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorRhed Jao <rhedjao@google.com>2018-10-22 11:37:10 +0800
committerRhed Jao <rhedjao@google.com>2018-10-23 11:05:03 +0800
commit3a0a6ee1ff5565d95e9b9d2b7c60e9a98522a995 (patch)
tree9641eb7fdc69716af9995abc8747310c34ab1599 /core/java/android
parenta23e09652c88ad8913c81f795cfcccf9897a9632 (diff)
Fixed NPE in TouchDelegateInfo.
TouchDelegate allows nullable bounds of delegated view. We provide a default bounds to create TouchDelegateInfo if it's null. Bug: 117951101 Test: atest atest AccessibilityEndToEndTest Change-Id: I914a44520edf159bba37af0b0eb00ab97c00b177
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/view/TouchDelegate.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/core/java/android/view/TouchDelegate.java b/core/java/android/view/TouchDelegate.java
index 06b73dd29b3d..6fb32e36fb3f 100644
--- a/core/java/android/view/TouchDelegate.java
+++ b/core/java/android/view/TouchDelegate.java
@@ -165,7 +165,11 @@ public class TouchDelegate {
public TouchDelegateInfo getTouchDelegateInfo() {
if (mTouchDelegateInfo == null) {
final ArrayMap<Region, View> targetMap = new ArrayMap<>(1);
- targetMap.put(new Region(mBounds), mDelegateView);
+ Rect bounds = mBounds;
+ if (bounds == null) {
+ bounds = new Rect();
+ }
+ targetMap.put(new Region(bounds), mDelegateView);
mTouchDelegateInfo = new TouchDelegateInfo(targetMap);
}
return mTouchDelegateInfo;