Skip to content

Commit f8535cf

Browse files
authored
Merge pull request #1 from swansontec/patch-1
Do not crash when the main activity is unavailable
2 parents 9d2d744 + a87cd4a commit f8535cf

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

android/src/main/java/com/cmcewen/blurview/BlurViewManager.java

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,14 @@
11
package com.cmcewen.blurview;
22

3+
import android.app.Activity;
34
import android.graphics.drawable.Drawable;
45
import android.view.View;
56
import android.view.ViewGroup;
67

78
import com.facebook.react.uimanager.ViewGroupManager;
8-
import com.facebook.react.uimanager.SimpleViewManager;
99
import com.facebook.react.uimanager.ThemedReactContext;
1010
import com.facebook.react.uimanager.annotations.ReactProp;
1111

12-
import java.util.Objects;
13-
1412
import javax.annotation.Nonnull;
1513

1614
import eightbitlab.com.blurview.BlurView;
@@ -32,14 +30,17 @@ class BlurViewManager extends ViewGroupManager<BlurView> {
3230
@Override
3331
public @Nonnull BlurView createViewInstance(@Nonnull ThemedReactContext ctx) {
3432
BlurView blurView = new BlurView(ctx);
35-
View decorView = Objects.requireNonNull(ctx.getCurrentActivity()).getWindow().getDecorView();
36-
ViewGroup rootView = decorView.findViewById(android.R.id.content);
37-
Drawable windowBackground = decorView.getBackground();
38-
blurView.setupWith(rootView)
39-
.setFrameClearDrawable(windowBackground)
40-
.setBlurAlgorithm(new RenderScriptBlur(ctx))
41-
.setBlurRadius(defaultRadius)
42-
.setHasFixedTransformationMatrix(false);
33+
Activity currentActivity = ctx.getCurrentActivity();
34+
if (currentActivity != null) {
35+
View decorView = currentActivity.getWindow().getDecorView();
36+
ViewGroup rootView = decorView.findViewById(android.R.id.content);
37+
Drawable windowBackground = decorView.getBackground();
38+
blurView.setupWith(rootView)
39+
.setFrameClearDrawable(windowBackground)
40+
.setBlurAlgorithm(new RenderScriptBlur(ctx))
41+
.setBlurRadius(defaultRadius)
42+
.setHasFixedTransformationMatrix(false);
43+
}
4344
return blurView;
4445
}
4546

0 commit comments

Comments
 (0)