@sbaiahmed1/react-native-blur 4.6.0 → 4.6.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -110,6 +110,9 @@ import UIKit
110
110
 
111
111
  public override func didMoveToWindow() {
112
112
  super.didMoveToWindow()
113
+ if window != nil {
114
+ updateView()
115
+ }
113
116
  }
114
117
 
115
118
  deinit {
@@ -9,20 +9,20 @@ class BlurEffectView: UIVisualEffectView {
9
9
  private var animator: UIViewPropertyAnimator?
10
10
  private var blurStyle: UIBlurEffect.Style = .systemMaterial
11
11
  private var intensity: Double = 1.0
12
+ private var hasConfiguredBlur = false
12
13
 
13
14
  override init(effect: UIVisualEffect?) {
14
15
  super.init(effect: effect)
15
- setupBlur()
16
16
  }
17
17
 
18
18
  required init?(coder: NSCoder) {
19
19
  super.init(coder: coder)
20
- setupBlur()
21
20
  }
22
21
 
23
22
  func updateBlur(style: UIBlurEffect.Style, intensity: Double) {
24
23
  self.blurStyle = style
25
24
  self.intensity = intensity
25
+ hasConfiguredBlur = true
26
26
  setupBlur()
27
27
  }
28
28
 
@@ -46,9 +46,17 @@ class BlurEffectView: UIVisualEffectView {
46
46
  // Set intensity
47
47
  animator?.fractionComplete = intensity
48
48
  // Stop the animation at the current state
49
- DispatchQueue.main.async { [weak self] in
50
- self?.animator?.stopAnimation(true)
51
- self?.animator?.finishAnimation(at: .current)
49
+ DispatchQueue.main.async { [weak self, weak animator] in
50
+ guard let self = self, let currentAnimator = self.animator, currentAnimator === animator else { return }
51
+ currentAnimator.stopAnimation(true)
52
+ currentAnimator.finishAnimation(at: .current)
53
+ }
54
+ }
55
+
56
+ override func didMoveToWindow() {
57
+ super.didMoveToWindow()
58
+ if window != nil && hasConfiguredBlur {
59
+ setupBlur()
52
60
  }
53
61
  }
54
62
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sbaiahmed1/react-native-blur",
3
- "version": "4.6.0",
3
+ "version": "4.6.1-beta.1",
4
4
  "description": "React native modern blur view",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",