diff options
author | Jay Shrauner <shrauner@google.com> | 2015-11-18 10:46:50 -0800 |
---|---|---|
committer | Jay Shrauner <shrauner@google.com> | 2015-11-18 10:46:50 -0800 |
commit | 471f63aa71568456b368b80d38a5e43f7051d28d (patch) | |
tree | a657607c19bab37bdffd1ac4653e15f3a8068489 | |
parent | ea8f82a9ee5f55909134bd76c498ac3a6bede424 (diff) |
Fix NPE in getRevealAnimator
Fix NPE when no longer attached to activity.
Bug:25764709
Change-Id: I1a8a1da184930a99cefc079de9c074b9c69f0bf5
-rw-r--r-- | InCallUI/src/com/android/incallui/CircularRevealFragment.java | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/InCallUI/src/com/android/incallui/CircularRevealFragment.java b/InCallUI/src/com/android/incallui/CircularRevealFragment.java index f8cc424fe..f4a2e91ff 100644 --- a/InCallUI/src/com/android/incallui/CircularRevealFragment.java +++ b/InCallUI/src/com/android/incallui/CircularRevealFragment.java @@ -127,16 +127,18 @@ public class CircularRevealFragment extends Fragment { vto.removeOnPreDrawListener(this); } final Animator animator = getRevealAnimator(mTouchPoint); - animator.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - view.setClipToOutline(false); - if (mListener != null) { - mListener.onCircularRevealComplete(getFragmentManager()); + if (animator != null) { + animator.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd(Animator animation) { + view.setClipToOutline(false); + if (mListener != null) { + mListener.onCircularRevealComplete(getFragmentManager()); + } } - } - }); - animator.start(); + }); + animator.start(); + } return false; } }); @@ -144,6 +146,9 @@ public class CircularRevealFragment extends Fragment { private Animator getRevealAnimator(Point touchPoint) { final Activity activity = getActivity(); + if (activity == null) { + return null; + } final View view = activity.getWindow().getDecorView(); final Display display = activity.getWindowManager().getDefaultDisplay(); final Point size = new Point(); |