summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Epin <ayepin@google.com>2022-09-13 15:48:37 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2022-09-13 15:48:37 +0000
commit4c318891765c374c8a098fa69031af36f8d09baa (patch)
treebb22b37127f2d90edcb3847c20d6487ecd3eb6d7
parent1a4b98ce27346f0a300cce0646b7e8100202ffd3 (diff)
parent2912adc6dd1cd514da44ab0024e8053e7f01d0ec (diff)
Merge "Add null-safety checks" into tm-qpr-dev
-rw-r--r--core/java/com/android/internal/app/ChooserActivity.java21
1 files changed, 14 insertions, 7 deletions
diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java
index cb30021ee4f5..8f0fc2db5d26 100644
--- a/core/java/com/android/internal/app/ChooserActivity.java
+++ b/core/java/com/android/internal/app/ChooserActivity.java
@@ -2940,12 +2940,14 @@ public class ChooserActivity extends ResolverActivity implements
private void startFinishAnimation() {
View rootView = findRootView();
- rootView.startAnimation(new FinishAnimation(this, rootView));
+ if (rootView != null) {
+ rootView.startAnimation(new FinishAnimation(this, rootView));
+ }
}
private boolean maybeCancelFinishAnimation() {
View rootView = findRootView();
- Animation animation = rootView.getAnimation();
+ Animation animation = rootView == null ? null : rootView.getAnimation();
if (animation instanceof FinishAnimation) {
boolean hasEnded = animation.hasEnded();
animation.cancel();
@@ -4073,11 +4075,13 @@ public class ChooserActivity extends ResolverActivity implements
*/
private static class FinishAnimation extends AlphaAnimation implements
Animation.AnimationListener {
+ @Nullable
private Activity mActivity;
+ @Nullable
private View mRootView;
private final float mFromAlpha;
- FinishAnimation(Activity activity, View rootView) {
+ FinishAnimation(@NonNull Activity activity, @NonNull View rootView) {
super(rootView.getAlpha(), 0.0f);
mActivity = activity;
mRootView = rootView;
@@ -4101,7 +4105,9 @@ public class ChooserActivity extends ResolverActivity implements
@Override
public void cancel() {
- mRootView.setAlpha(mFromAlpha);
+ if (mRootView != null) {
+ mRootView.setAlpha(mFromAlpha);
+ }
cleanup();
super.cancel();
}
@@ -4112,9 +4118,10 @@ public class ChooserActivity extends ResolverActivity implements
@Override
public void onAnimationEnd(Animation animation) {
- if (mActivity != null) {
- mActivity.finish();
- cleanup();
+ Activity activity = mActivity;
+ cleanup();
+ if (activity != null) {
+ activity.finish();
}
}