Skip to content

Commit

Permalink
move blur lib fork to a patch
Browse files Browse the repository at this point in the history
  • Loading branch information
siddarthkay committed Apr 16, 2024
1 parent 9aa9dc1 commit 851dbcb
Show file tree
Hide file tree
Showing 9 changed files with 132 additions and 6 deletions.
4 changes: 2 additions & 2 deletions ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -879,7 +879,7 @@ PODS:
- React-Core
- react-native-blob-util (0.13.18):
- React-Core
- react-native-blur (4.3.3):
- react-native-blur (4.3.0):
- React-Core
- react-native-cameraroll (5.10.0):
- React-Core
Expand Down Expand Up @@ -1474,7 +1474,7 @@ SPEC CHECKSUMS:
react-native-background-timer: 1f7d560647b40e6a60b01c452ba29c54bf581fc4
react-native-biometrics: 352e5a794bfffc46a0c86725ea7dc62deb085bdc
react-native-blob-util: 600972b1782380a5a7d5db61a3817ea32349dae9
react-native-blur: c6d0a1dc2b4b519f7afe3b14d8151998632b6d18
react-native-blur: 50c9feabacbc5f49b61337ebc32192c6be7ec3c3
react-native-cameraroll: 4701ae7c3dbcd3f5e9e150ca17f250a276154b35
react-native-config: 5330c8258265c1e5fdb8c009d2cabd6badd96727
react-native-hole-view: 6935448993bac79f2b5a4ad7e9741094cf810679
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"@react-native-camera-roll/camera-roll": "git+https://github.com/status-im/react-native-camera-roll.git#refs/tags/v5.1.1.1",
"@react-native-clipboard/clipboard": "1.13.2",
"@react-native-community/audio-toolkit": "git+https://github.com/tbenr/react-native-audio-toolkit.git#refs/tags/v2.0.3-status-v6",
"@react-native-community/blur": "git+https://github.com/status-im/react-native-blur.git#refs/tags/v4.3.3-status",
"@react-native-community/blur": "4.3.0",
"@react-native-community/hooks": "^3.0.0",
"@react-native-community/masked-view": "^0.1.6",
"@react-native-community/netinfo": "^4.4.0",
Expand Down
10 changes: 10 additions & 0 deletions patches/BlurView.ios.tsx.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- /tmp/tmp-status-mobile-61974dae4/tmp.6k5ZPUa0Hp/BlurView.ios.tsx 2024-04-16 17:07:33.229847000 +0200
+++ ./node_modules/@react-native-community/blur/src/components/BlurView.ios.tsx 2024-04-16 17:07:58.540617624 +0200
@@ -6,6 +6,7 @@
| 'dark'
| 'light'
| 'xlight'
+ | 'transparent'
| 'prominent'
| 'regular'
| 'extraDark'
66 changes: 66 additions & 0 deletions patches/BlurView.mm.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
--- /tmp/tmp-status-mobile-61974dae4/tmp.tvVYHZMYBf/BlurView.mm 2024-04-16 17:06:06.410185000 +0200
+++ ./node_modules/@react-native-community/blur/ios/BlurView.mm 2024-04-16 17:06:49.352719720 +0200
@@ -73,7 +73,7 @@
{
const auto &oldViewProps = *std::static_pointer_cast<const BlurViewProps>(_props);
const auto &newViewProps = *std::static_pointer_cast<const BlurViewProps>(props);
-
+
if (oldViewProps.blurAmount != newViewProps.blurAmount) {
NSNumber *blurAmount = [NSNumber numberWithInt:newViewProps.blurAmount];
[self setBlurAmount:blurAmount];
@@ -83,12 +83,12 @@
NSString *blurType = [NSString stringWithUTF8String:toString(newViewProps.blurType).c_str()];
[self setBlurType:blurType];
}
-
+
if (oldViewProps.reducedTransparencyFallbackColor != newViewProps.reducedTransparencyFallbackColor) {
UIColor *color = RCTUIColorFromSharedColor(newViewProps.reducedTransparencyFallbackColor);
[self setReducedTransparencyFallbackColor:color];
}
-
+
[super updateProps:props oldProps:oldProps];
}
#endif // RCT_NEW_ARCH_ENABLED
@@ -131,6 +131,7 @@

- (UIBlurEffectStyle)blurEffectStyle
{
+ if ([self.blurType isEqual: @"transparent"]) return UIBlurEffectStyleDark;
if ([self.blurType isEqual: @"xlight"]) return UIBlurEffectStyleExtraLight;
if ([self.blurType isEqual: @"light"]) return UIBlurEffectStyleLight;
if ([self.blurType isEqual: @"dark"]) return UIBlurEffectStyleDark;
@@ -139,7 +140,7 @@
if ([self.blurType isEqual: @"regular"]) return UIBlurEffectStyleRegular;
if ([self.blurType isEqual: @"prominent"]) return UIBlurEffectStyleProminent;
#endif
-
+
#if defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 130000 /* __IPHONE_13_0 */
// Adaptable blur styles
if ([self.blurType isEqual: @"chromeMaterial"]) return UIBlurEffectStyleSystemChromeMaterial;
@@ -160,7 +161,7 @@
if ([self.blurType isEqual: @"thinMaterialLight"]) return UIBlurEffectStyleSystemThinMaterialLight;
if ([self.blurType isEqual: @"ultraThinMaterialLight"]) return UIBlurEffectStyleSystemUltraThinMaterialLight;
#endif
-
+
#if TARGET_OS_TV
if ([self.blurType isEqual: @"regular"]) return UIBlurEffectStyleRegular;
if ([self.blurType isEqual: @"prominent"]) return UIBlurEffectStyleProminent;
@@ -183,6 +184,13 @@
UIBlurEffectStyle style = [self blurEffectStyle];
self.blurEffect = [BlurEffectWithAmount effectWithStyle:style andBlurAmount:self.blurAmount];
self.blurEffectView.effect = self.blurEffect;
+
+ if ([self.blurType isEqual: @"transparent"]) {
+ for (UIView *subview in self.blurEffectView.subviews) {
+ subview.backgroundColor = [UIColor clearColor];
+ }
+ }
+
}

- (void)updateFallbackView
11 changes: 11 additions & 0 deletions patches/BlurViewManagerImpl.java.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- /tmp/tmp-status-mobile-61974dae4/tmp.mlMQWwuuYK/BlurViewManagerImpl.java 2024-04-16 17:04:08.840327000 +0200
+++ ./node_modules/@react-native-community/blur/android/src/main/java/com/reactnativecommunity/blurview/BlurViewManagerImpl.java 2024-04-16 17:04:31.902236892 +0200
@@ -29,7 +29,7 @@
.getDecorView();
ViewGroup rootView = decorView.findViewById(android.R.id.content);
Drawable windowBackground = decorView.getBackground();
- if (Build.VERSION.SDK_INT >= 31) {
+ if (Build.VERSION.SDK_INT >= 31 && blurView.isHardwareAccelerated()) {
blurView
.setupWith(rootView, new RenderEffectBlur())
.setFrameClearDrawable(windowBackground)
10 changes: 10 additions & 0 deletions patches/BlurViewNativeComponent.ts.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- /tmp/tmp-status-mobile-61974dae4/tmp.NHLSFZG6LG/BlurViewNativeComponent.ts 2024-04-16 17:08:42.755929000 +0200
+++ ./node_modules/@react-native-community/blur/src/fabric/BlurViewNativeComponent.ts 2024-04-16 17:08:57.634037113 +0200
@@ -10,6 +10,7 @@
| 'dark'
| 'light'
| 'xlight'
+ | 'transparent'
| 'prominent'
| 'regular'
| 'extraDark'
10 changes: 10 additions & 0 deletions patches/VibrancyViewNativeComponent.ts.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- /tmp/tmp-status-mobile-61974dae4/tmp.zy6uXqO4gW/VibrancyViewNativeComponent.ts 2024-04-16 17:09:23.772623000 +0200
+++ ./node_modules/@react-native-community/blur/src/fabric/VibrancyViewNativeComponent.ts 2024-04-16 17:09:39.033737349 +0200
@@ -10,6 +10,7 @@
| 'dark'
| 'light'
| 'xlight'
+ | 'transparent'
| 'prominent'
| 'regular'
| 'extraDark'
18 changes: 18 additions & 0 deletions patches/build.gradle.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
--- /tmp/tmp-status-mobile-61974dae4/tmp.J4PMGrqP44/build.gradle 2024-04-16 17:03:10.810339000 +0200
+++ ./node_modules/@react-native-community/blur/android/build.gradle 2024-04-16 17:03:33.299457138 +0200
@@ -5,7 +5,7 @@
}

dependencies {
- classpath 'com.android.tools.build:gradle:3.5.3'
+ classpath 'com.android.tools.build:gradle:3.5.4'
}
}

@@ -138,5 +138,5 @@
implementation "com.facebook.react:react-native:+"
// From node_modules

- implementation 'com.github.Dimezis:BlurView:version-2.0.2'
+ implementation 'com.github.Dimezis:BlurView:version-2.0.3'
}
7 changes: 4 additions & 3 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2593,9 +2593,10 @@
eventemitter3 "^1.2.0"
lodash "^4.17.15"

"@react-native-community/blur@git+https://github.com/status-im/react-native-blur.git#refs/tags/v4.3.3-status":
version "4.3.3"
resolved "git+https://github.com/status-im/react-native-blur.git#c140cc8e7d54e3318af0a7c149b5d64b54de3419"
"@react-native-community/[email protected]":
version "4.3.0"
resolved "https://registry.yarnpkg.com/@react-native-community/blur/-/blur-4.3.0.tgz#e5018b3b0bd6de9632ac6cf34e9f8e0f1a9a28ec"
integrity sha512-d6phh39kKcbZ4IluDftiVWqfeFOgjl1AbQWzN47x+hLKQ5GvQJ6QhRvgAuDZ+xbJksrbXgNpMjVYkjsbcVehxg==

"@react-native-community/[email protected]":
version "12.3.6"
Expand Down

0 comments on commit 851dbcb

Please sign in to comment.