Skip to content

Commit 3786691

Browse files
committed
fix: RCTAlertController transparent background override
1 parent 20c2749 commit 3786691

File tree

2 files changed

+110
-86
lines changed

2 files changed

+110
-86
lines changed

packages/react-native/React/CoreModules/RCTAlertController.mm

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,20 @@
99

1010
#import <React/RCTAlertController.h>
1111

12+
#if TARGET_OS_VISION
13+
@interface TransparentViewController : UIViewController
14+
15+
@end
16+
17+
@implementation TransparentViewController
18+
19+
- (UIContainerBackgroundStyle)preferredContainerBackgroundStyle {
20+
return UIContainerBackgroundStyleHidden;
21+
}
22+
23+
@end
24+
#endif
25+
1226
@interface RCTAlertController ()
1327

1428
@property (nonatomic, strong) UIWindow *alertWindow;
@@ -23,7 +37,11 @@ - (UIWindow *)alertWindow
2337
_alertWindow = [[UIWindow alloc] initWithWindowScene:RCTKeyWindow().windowScene];
2438

2539
if (_alertWindow) {
40+
#if TARGET_OS_VISION
41+
_alertWindow.rootViewController = [TransparentViewController new];
42+
#else
2643
_alertWindow.rootViewController = [UIViewController new];
44+
#endif
2745
_alertWindow.windowLevel = UIWindowLevelAlert + 1;
2846
}
2947
}

packages/rn-tester/Podfile.lock

Lines changed: 92 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ PODS:
5353
- ReactCommon/turbomodule/bridging
5454
- ReactCommon/turbomodule/core
5555
- Yoga
56-
- OCMock (3.9.1)
56+
- OCMock (3.9.2)
5757
- RCT-Folly (2024.01.01.00):
5858
- boost
5959
- DoubleConversion
@@ -122,7 +122,7 @@ PODS:
122122
- React-perflogger
123123
- React-runtimescheduler
124124
- React-utils
125-
- SocketRocket (= 0.7.0)
125+
- SocketRocket (= 0.7.0.1)
126126
- Yoga
127127
- React-Core/CoreModulesHeaders (1000.0.0):
128128
- glog
@@ -137,7 +137,7 @@ PODS:
137137
- React-perflogger
138138
- React-runtimescheduler
139139
- React-utils
140-
- SocketRocket (= 0.7.0)
140+
- SocketRocket (= 0.7.0.1)
141141
- Yoga
142142
- React-Core/Default (1000.0.0):
143143
- glog
@@ -151,7 +151,7 @@ PODS:
151151
- React-perflogger
152152
- React-runtimescheduler
153153
- React-utils
154-
- SocketRocket (= 0.7.0)
154+
- SocketRocket (= 0.7.0.1)
155155
- Yoga
156156
- React-Core/DevSupport (1000.0.0):
157157
- glog
@@ -168,7 +168,7 @@ PODS:
168168
- React-perflogger
169169
- React-runtimescheduler
170170
- React-utils
171-
- SocketRocket (= 0.7.0)
171+
- SocketRocket (= 0.7.0.1)
172172
- Yoga
173173
- React-Core/RCTActionSheetHeaders (1000.0.0):
174174
- glog
@@ -183,7 +183,7 @@ PODS:
183183
- React-perflogger
184184
- React-runtimescheduler
185185
- React-utils
186-
- SocketRocket (= 0.7.0)
186+
- SocketRocket (= 0.7.0.1)
187187
- Yoga
188188
- React-Core/RCTAnimationHeaders (1000.0.0):
189189
- glog
@@ -198,7 +198,7 @@ PODS:
198198
- React-perflogger
199199
- React-runtimescheduler
200200
- React-utils
201-
- SocketRocket (= 0.7.0)
201+
- SocketRocket (= 0.7.0.1)
202202
- Yoga
203203
- React-Core/RCTBlobHeaders (1000.0.0):
204204
- glog
@@ -213,7 +213,7 @@ PODS:
213213
- React-perflogger
214214
- React-runtimescheduler
215215
- React-utils
216-
- SocketRocket (= 0.7.0)
216+
- SocketRocket (= 0.7.0.1)
217217
- Yoga
218218
- React-Core/RCTImageHeaders (1000.0.0):
219219
- glog
@@ -228,7 +228,7 @@ PODS:
228228
- React-perflogger
229229
- React-runtimescheduler
230230
- React-utils
231-
- SocketRocket (= 0.7.0)
231+
- SocketRocket (= 0.7.0.1)
232232
- Yoga
233233
- React-Core/RCTLinkingHeaders (1000.0.0):
234234
- glog
@@ -243,7 +243,7 @@ PODS:
243243
- React-perflogger
244244
- React-runtimescheduler
245245
- React-utils
246-
- SocketRocket (= 0.7.0)
246+
- SocketRocket (= 0.7.0.1)
247247
- Yoga
248248
- React-Core/RCTNetworkHeaders (1000.0.0):
249249
- glog
@@ -258,7 +258,7 @@ PODS:
258258
- React-perflogger
259259
- React-runtimescheduler
260260
- React-utils
261-
- SocketRocket (= 0.7.0)
261+
- SocketRocket (= 0.7.0.1)
262262
- Yoga
263263
- React-Core/RCTPushNotificationHeaders (1000.0.0):
264264
- glog
@@ -273,7 +273,7 @@ PODS:
273273
- React-perflogger
274274
- React-runtimescheduler
275275
- React-utils
276-
- SocketRocket (= 0.7.0)
276+
- SocketRocket (= 0.7.0.1)
277277
- Yoga
278278
- React-Core/RCTSettingsHeaders (1000.0.0):
279279
- glog
@@ -288,7 +288,7 @@ PODS:
288288
- React-perflogger
289289
- React-runtimescheduler
290290
- React-utils
291-
- SocketRocket (= 0.7.0)
291+
- SocketRocket (= 0.7.0.1)
292292
- Yoga
293293
- React-Core/RCTTextHeaders (1000.0.0):
294294
- glog
@@ -303,7 +303,7 @@ PODS:
303303
- React-perflogger
304304
- React-runtimescheduler
305305
- React-utils
306-
- SocketRocket (= 0.7.0)
306+
- SocketRocket (= 0.7.0.1)
307307
- Yoga
308308
- React-Core/RCTVibrationHeaders (1000.0.0):
309309
- glog
@@ -318,7 +318,7 @@ PODS:
318318
- React-perflogger
319319
- React-runtimescheduler
320320
- React-utils
321-
- SocketRocket (= 0.7.0)
321+
- SocketRocket (= 0.7.0.1)
322322
- Yoga
323323
- React-Core/RCTWebSocket (1000.0.0):
324324
- glog
@@ -333,7 +333,7 @@ PODS:
333333
- React-perflogger
334334
- React-runtimescheduler
335335
- React-utils
336-
- SocketRocket (= 0.7.0)
336+
- SocketRocket (= 0.7.0.1)
337337
- Yoga
338338
- React-CoreModules (1000.0.0):
339339
- RCT-Folly (= 2024.01.01.00)
@@ -345,7 +345,7 @@ PODS:
345345
- React-RCTBlob
346346
- React-RCTImage (= 1000.0.0)
347347
- ReactCommon
348-
- SocketRocket (= 0.7.0)
348+
- SocketRocket (= 0.7.0.1)
349349
- React-cxxreact (1000.0.0):
350350
- boost (= 1.83.0)
351351
- DoubleConversion
@@ -1213,7 +1213,7 @@ PODS:
12131213
- ReactCommon/turbomodule/bridging
12141214
- ReactCommon/turbomodule/core
12151215
- Yoga
1216-
- SocketRocket (0.7.0)
1216+
- SocketRocket (0.7.0.1)
12171217
- Yoga (0.0.0)
12181218

12191219
DEPENDENCIES:
@@ -1225,7 +1225,7 @@ DEPENDENCIES:
12251225
- hermes-engine (from `../react-native/sdks/hermes-engine/hermes-engine.podspec`)
12261226
- MyNativeView (from `NativeComponentExample`)
12271227
- NativeCxxModuleExample (from `NativeCxxModuleExample`)
1228-
- OCMock (~> 3.9.1)
1228+
- OCMock (from `https://github.com/erikdoe/ocmock.git`, tag `v3.9.2`)
12291229
- RCT-Folly (from `../react-native/third-party-podspecs/RCT-Folly.podspec`)
12301230
- RCT-Folly/Fabric (from `../react-native/third-party-podspecs/RCT-Folly.podspec`)
12311231
- RCTDeprecation (from `../react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`)
@@ -1278,13 +1278,9 @@ DEPENDENCIES:
12781278
- ReactCommon-Samples (from `../react-native/ReactCommon/react/nativemodule/samples`)
12791279
- ReactCommon/turbomodule/core (from `../react-native/ReactCommon`)
12801280
- ScreenshotManager (from `NativeModuleExample`)
1281+
- SocketRocket (from `../react-native/third-party-podspecs/SocketRocket.podspec`)
12811282
- Yoga (from `../react-native/ReactCommon/yoga`)
12821283

1283-
SPEC REPOS:
1284-
trunk:
1285-
- OCMock
1286-
- SocketRocket
1287-
12881284
EXTERNAL SOURCES:
12891285
boost:
12901286
:podspec: "../react-native/third-party-podspecs/boost.podspec"
@@ -1303,6 +1299,9 @@ EXTERNAL SOURCES:
13031299
:path: NativeComponentExample
13041300
NativeCxxModuleExample:
13051301
:path: NativeCxxModuleExample
1302+
OCMock:
1303+
:git: https://github.com/erikdoe/ocmock.git
1304+
:tag: v3.9.2
13061305
RCT-Folly:
13071306
:podspec: "../react-native/third-party-podspecs/RCT-Folly.podspec"
13081307
RCTDeprecation:
@@ -1403,72 +1402,79 @@ EXTERNAL SOURCES:
14031402
:path: "../react-native/ReactCommon/react/nativemodule/samples"
14041403
ScreenshotManager:
14051404
:path: NativeModuleExample
1405+
SocketRocket:
1406+
:podspec: "../react-native/third-party-podspecs/SocketRocket.podspec"
14061407
Yoga:
14071408
:path: "../react-native/ReactCommon/yoga"
14081409

1410+
CHECKOUT OPTIONS:
1411+
OCMock:
1412+
:git: https://github.com/erikdoe/ocmock.git
1413+
:tag: v3.9.2
1414+
14091415
SPEC CHECKSUMS:
1410-
boost: 26fad476bfa736552bbfa698a06cc530475c1505
1411-
DoubleConversion: fea03f2699887d960129cc54bba7e52542b6f953
1412-
FBLazyVector: f4492a543c5a8fa1502d3a5867e3f7252497cfe8
1413-
fmt: 4c2741a687cc09f0634a2e2c72a838b99f1ff120
1414-
glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2
1415-
hermes-engine: 667c9880f3588d193d7013603c5d670aea50c307
1416-
MyNativeView: 99b7fc82427fb4de5477b07eee451bb5995843db
1417-
NativeCxxModuleExample: 7a2e045ad6fb1c8143187be22223e7d238913b52
1418-
OCMock: 9491e4bec59e0b267d52a9184ff5605995e74be8
1419-
RCT-Folly: 045d6ecaa59d826c5736dfba0b2f4083ff8d79df
1416+
boost: 3f76a4d6d9d0f232d25b7782f83fcf988f47d517
1417+
DoubleConversion: 71bf0761505a44e4dfddc0aa04afa049fdfb63b5
1418+
FBLazyVector: ca1de4e0d683fb07576f60109095cd8141689762
1419+
fmt: 5d9ffa7ccba126c08b730252123601d514652320
1420+
glog: 4f05d17aa39a829fee878689fc9a41af587fabba
1421+
hermes-engine: 3fed7e58e811ae8f795063cc6450714395c0276d
1422+
MyNativeView: b0bc216ea431fe73586c6596e6e054c985b1370e
1423+
NativeCxxModuleExample: 79d0ef136e6c207f35c92eaf7c0c988fda3ef8e1
1424+
OCMock: 267d92c078398b7ce11d99e811e3a402744c06bc
1425+
RCT-Folly: d8c13e288297f63c0db8f083cfedebdd2649a299
14201426
RCTDeprecation: 3808e36294137f9ee5668f4df2e73dc079cd1dcf
1421-
RCTRequired: 82c56a03b3efd524bfdb581a906add903f78f978
1422-
RCTTypeSafety: 5f57d4ae5dfafc85a0f575d756c909b584722c52
1423-
React: cb6dc75e09f32aeddb4d8fb58a394a67219a92fe
1424-
React-callinvoker: bae59cbd6affd712bbfc703839dad868ff35069d
1425-
React-Codegen: feef8181325890b506018f693c1293f1aa627cea
1426-
React-Core: e83a7e3595b2bdfd013f40563eee196b1801fc75
1427-
React-CoreModules: 04058009e696161fd7a9f55b43e04819c41f12e3
1428-
React-cxxreact: d7e2b4279e31dee6ec2af7fd8fdd42b1fd0e655c
1429-
React-debug: 296b501a90c41f83961f58c6d96a01330d499da5
1430-
React-Fabric: 2a9b753ed7595c5357f3043fb57fa0055d2f4301
1431-
React-FabricImage: da62cc5089fe6bdaa6ec0ab6ccca75c7d679065d
1432-
React-graphics: da82f771ed590fffcfdad572f07ffde01937f11d
1433-
React-hermes: 14e7007ebbfcc9f674c9c4f3ac768aa587b6da79
1434-
React-ImageManager: 716592dcbe11a4960e1eb3d82adb264ee15b5f6d
1435-
React-jserrorhandler: 13a0cce4e1e445d2ace089dc6122fb85411a11b3
1436-
React-jsi: b7645527d3f77afdea4365488e47dbc5b293177f
1437-
React-jsiexecutor: 6baaff1e509ce9269b0457d3a9e442e3ae895c33
1438-
React-jsinspector: 6b341ac3b45ef18ad102cf3d2b44b4c6804e39a5
1439-
React-jsitracing: dd08057dd5b74119cb406beb42028da85ed5b8a5
1440-
React-logger: 8486d7a1d32b972414b1d34a93470ee2562c6ee2
1441-
React-Mapbuffer: fd0d0306c1c4326be5f18a61e978d32a66b20a85
1442-
React-nativeconfig: 40a2c848083ef4065c163c854e1c82b5f9e9db84
1443-
React-NativeModulesApple: 67ee4e22f916aceaa8ccfc9c849d3e7de5d55b0b
1444-
React-perflogger: 70d009f755dd10002183454cdf5ad9b22de4a1d7
1445-
React-RCTActionSheet: 943bd5f540f3af1e5a149c13c4de81858edf718a
1446-
React-RCTAnimation: 07583f0ebfa7154f0e696a75c32a8f8b180fc8c5
1447-
React-RCTAppDelegate: 91aa093765f1ce5b782b4f0257679144552a2873
1448-
React-RCTBlob: da87f794f188db6539a05b8e13cbc5a198c94848
1449-
React-RCTFabric: d28cb914dbf28c6316d5863d8e6e11ab66704d8f
1450-
React-RCTImage: 8f46d82257827c2332bc4108fddef1a840f440a7
1451-
React-RCTLinking: efa67827466e50e07c5471447c12e474cbc5e336
1452-
React-RCTNetwork: a80529d2d90f79caa5e31d49e840735a10d6d91a
1453-
React-RCTPushNotification: c34ef3969207da3ddc777f36a252f99754b89e2d
1454-
React-RCTSettings: 39ca10f68da0ec88a63c33152d43c222c8c38119
1455-
React-RCTTest: 3b9f62c66c3814ccace402441597160aefc9e812
1456-
React-RCTText: d9925903524a7b179cf7803162a98038e0bfb4fd
1457-
React-RCTVibration: 33bef249bc4a637ed91bf1cf0d94d9329381dc7b
1458-
React-rendererdebug: 0abbd75e947eeae23542f3bf7491b048ae063141
1459-
React-rncore: e903b3d2819a25674403c548ec103f34bf02ba2b
1460-
React-RuntimeApple: 9375c19d597468266fcadc7303802f65f7d04d62
1461-
React-RuntimeCore: b33a9d9ac5369ceee984fb394199d2c585b06dbb
1462-
React-runtimeexecutor: e1c32bc249dd3cf3919cb4664fd8dc84ef70cff7
1463-
React-RuntimeHermes: fed4ff3aae566b44ae4de1ee91dd79d7f4072079
1464-
React-runtimescheduler: 579048828d226c68a09023bef54bbacfaea3f39c
1465-
React-utils: d468de964db1cfd301b450755ba00518777704c4
1466-
ReactCommon: bedbebd4c7b921d4cf54c528f1d6c3e30f889c6b
1467-
ReactCommon-Samples: ca3ac1e08ee7f73d2b3b4a77946cfb44204d09ca
1468-
ScreenshotManager: d7a27367ef857a6d813c4f40abd46b0bff2eef68
1469-
SocketRocket: abac6f5de4d4d62d24e11868d7a2f427e0ef940d
1470-
Yoga: 463cb8e64f3b4cc13ec8d8ab56d892fff75baf5d
1427+
RCTRequired: af16a33060c5af1b0b77ab96c6d998dc97699f8c
1428+
RCTTypeSafety: f75942a7015b81127c0e4eebd93bdef865743b95
1429+
React: 0d3eeb2a8dcf8bbbf577ef277fd1b711f4797217
1430+
React-callinvoker: 63b1d53004037c06f1c6a32822d17f9c62b9b35a
1431+
React-Codegen: 04a9ac6fd2f392534ed432102c6cbf117dcbf62b
1432+
React-Core: 34d2e1049cdc85b0a51e13efd34e329871065fb0
1433+
React-CoreModules: fccd52032bc2966d7e0abf5b753c98bbc84ef3d9
1434+
React-cxxreact: e8b7c886ba19ed37195cbeebd615c33aaa93a55a
1435+
React-debug: 345b513bcd56581796f847cf52e184f000b43149
1436+
React-Fabric: 730afa574e7cfe2dccc23d2a5d354946b5edfebf
1437+
React-FabricImage: bb5b99ef313ea1559fc554c8b91df9163413cfc4
1438+
React-graphics: 9a63079e672c284cea29f50e9ba0f30db70b7698
1439+
React-hermes: 45cc15460b91dd0336f19d972ea8e02739d9fc5c
1440+
React-ImageManager: e9b7d0707e5eb19a8dc2378a8f44520d4d831256
1441+
React-jserrorhandler: 30ce02ab668be8210d168f7dc162cc47bcf14224
1442+
React-jsi: 4a30395b4811279261b4f3f041c3fc7414bd679d
1443+
React-jsiexecutor: 09509ecc30b880ecc8db4c19843b04f744cb614b
1444+
React-jsinspector: bfe452cb80097f83e23d48fbbec0c066dc5ada55
1445+
React-jsitracing: 85f246bc3812144183c8ab7395584023dd935675
1446+
React-logger: 734dc259b1f3c65dad4c05168dca143907b382ed
1447+
React-Mapbuffer: dc1d99971b35c825472b3c8329618c549b6b0f38
1448+
React-nativeconfig: 2d02ee9c8a86cdaaf8843f2c6c4d9bd7e4faaa44
1449+
React-NativeModulesApple: 918ae43f78d4ae566cca31956541a0ec248b76c6
1450+
React-perflogger: 55ede101c456ea8d339595ccef6021649421cc6c
1451+
React-RCTActionSheet: 1343dd8ed5c33451c952766a6cf42f51dff2898b
1452+
React-RCTAnimation: c1df5cb7d29e554de84eb640b6c1550cc3e1203d
1453+
React-RCTAppDelegate: 28dfd63a68d54992be06fefd34189d559d1089bc
1454+
React-RCTBlob: fdc33b9ea21833226533f80011430668db439572
1455+
React-RCTFabric: 49f767a1c7fd873256d07a9e6e4745ddd073684f
1456+
React-RCTImage: 3a06e87ed185f118895a038e7605cb99eb824208
1457+
React-RCTLinking: 7c4383c00217878ee2303e8a3a6f0f6ee284ef7e
1458+
React-RCTNetwork: f40c72ca6ce8b69f1e45cebcfcdd188c4498d127
1459+
React-RCTPushNotification: a244dd5f91e5efe618fa8b96f8d6069268dfeffc
1460+
React-RCTSettings: f48db0940edb5538719178061d64a8a944986740
1461+
React-RCTTest: 448e29a58306c61bab4893c87bebd66f8b41bbf4
1462+
React-RCTText: 10ea12a90ee463cf14707f277b792bb8e2157b85
1463+
React-RCTVibration: 9ba50b5aa53781f5665ece8b699923786e435219
1464+
React-rendererdebug: 0e6b0742c9c6d73adb47d085e8f93e878f40b862
1465+
React-rncore: c4c7f7a03260d92cf6efe8e420068f25d164e1e5
1466+
React-RuntimeApple: 59fe17e6f827db09a04f213bf363eaaf375792c7
1467+
React-RuntimeCore: 53c1a58a1770123fd9d2b8162e178b2ae09c98a4
1468+
React-runtimeexecutor: 98ca17a3d18d6d221b895266c9b43d474e5799f1
1469+
React-RuntimeHermes: a59d5ceb8ffa2f616d167d33897dad0328ca7bd0
1470+
React-runtimescheduler: 160e443daf26fd0d1bcc1e053d1ba6fd5c25c520
1471+
React-utils: e7a2a6b9d3d326bc7403fc471ae5e0945690f6cd
1472+
ReactCommon: 0f2ec7f620d348462a338c3c031a54e72e64edc6
1473+
ReactCommon-Samples: a4dff3cffacabe81f014d6894a805a1736323996
1474+
ScreenshotManager: 0e1a4b790705d8f5aa7a6a40107855fa9f79a854
1475+
SocketRocket: 0ba3e799f983d2dfa878777017659ef6c866e5c6
1476+
Yoga: 514397711a0e7e6d3c9cd230e0463a88ff8efedb
14711477

1472-
PODFILE CHECKSUM: 5afcf37691103b83159fb73be088b7cadc67af7b
1478+
PODFILE CHECKSUM: d88f0d275cb18b8f13d0c4a7a5f28ec6db2f2e70
14731479

1474-
COCOAPODS: 1.13.0
1480+
COCOAPODS: 1.14.3

0 commit comments

Comments
 (0)