Skip to content

Commit db1c87a

Browse files
committed
1 parent ea52561 commit db1c87a

File tree

3 files changed

+83
-5
lines changed

3 files changed

+83
-5
lines changed

bun.lock

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"@expo/fingerprint": "0.15.2",
88
"react": "19.0.0",
99
"react-native": "0.79.6",
10-
"react-native-macos": "0.79.0",
10+
"react-native-macos": "0.79.1",
1111
},
1212
"devDependencies": {
1313
"@babel/core": "7.28.5",
@@ -60,6 +60,9 @@
6060
},
6161
},
6262
},
63+
"patchedDependencies": {
64+
65+
},
6366
"packages": {
6467
"@0no-co/graphql.web": ["@0no-co/[email protected]", "", { "peerDependencies": { "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0" }, "optionalPeers": ["graphql"] }, "sha512-/1iHy9TTr63gE1YcR5idjx8UREz1s0kFhydf3bBLCXyqjhkIc6igAzTOx3zPifCwFR87tsh/4Pa9cNts6d2otw=="],
6568

@@ -525,7 +528,7 @@
525528

526529
"@react-native-community/cli-types": ["@react-native-community/[email protected]", "", { "dependencies": { "joi": "^17.2.1" } }, "sha512-J84+4IRXl8WlVdoe1maTD5skYZZO9CbQ6LNXEHx1kaZcFmvPZKfjsaxuyQ+8BsSqZnM2izOw8dEWnAp/Zuwb0w=="],
527530

528-
"@react-native-macos/virtualized-lists": ["@react-native-macos/[email protected].0", "", { "dependencies": { "invariant": "^2.2.4", "nullthrows": "^1.1.1" }, "peerDependencies": { "@types/react": "^19.0.0", "react": "*", "react-native": "*" }, "optionalPeers": ["@types/react"] }, "sha512-ZpetoqqzTYQ9LFCaQw1zKgPE6OciCYAZfTiLAodgwJPEe62IEATpZtmgJyF08jCHRxfrSi2+ACL6zEcwjYJdkg=="],
531+
"@react-native-macos/virtualized-lists": ["@react-native-macos/[email protected].1", "", { "dependencies": { "invariant": "^2.2.4", "nullthrows": "^1.1.1" }, "peerDependencies": { "@types/react": "^19.0.0", "react": "*", "react-native": "*" }, "optionalPeers": ["@types/react"] }, "sha512-YWVcPPNhiMvysCpJIFe/QkzxcrUbPuuKJ0a9YZORBRtM7ptkvFhfx95eMc783s4QJjrnShe86PjDidkQfM5sZg=="],
529532

530533
"@react-native/assets-registry": ["@react-native/[email protected]", "", {}, "sha512-UVSP1224PWg0X+mRlZNftV5xQwZGfawhivuW8fGgxNK9MS/U84xZ+16lkqcPh1ank6MOt239lIWHQ1S33CHgqA=="],
531534

@@ -1619,7 +1622,7 @@
16191622

16201623
"react-native": ["[email protected]", "", { "dependencies": { "@jest/create-cache-key-function": "^29.7.0", "@react-native/assets-registry": "0.79.6", "@react-native/codegen": "0.79.6", "@react-native/community-cli-plugin": "0.79.6", "@react-native/gradle-plugin": "0.79.6", "@react-native/js-polyfills": "0.79.6", "@react-native/normalize-colors": "0.79.6", "@react-native/virtualized-lists": "0.79.6", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", "babel-jest": "^29.7.0", "babel-plugin-syntax-hermes-parser": "0.25.1", "base64-js": "^1.5.1", "chalk": "^4.0.0", "commander": "^12.0.0", "event-target-shim": "^5.0.1", "flow-enums-runtime": "^0.0.6", "glob": "^7.1.1", "invariant": "^2.2.4", "jest-environment-node": "^29.7.0", "memoize-one": "^5.0.0", "metro-runtime": "^0.82.0", "metro-source-map": "^0.82.0", "nullthrows": "^1.1.1", "pretty-format": "^29.7.0", "promise": "^8.3.0", "react-devtools-core": "^6.1.1", "react-refresh": "^0.14.0", "regenerator-runtime": "^0.13.2", "scheduler": "0.25.0", "semver": "^7.1.3", "stacktrace-parser": "^0.1.10", "whatwg-fetch": "^3.0.0", "ws": "^6.2.3", "yargs": "^17.6.2" }, "peerDependencies": { "@types/react": "^19.0.0", "react": "^19.0.0" }, "optionalPeers": ["@types/react"], "bin": { "react-native": "cli.js" } }, "sha512-kvIWSmf4QPfY41HC25TR285N7Fv0Pyn3DAEK8qRL9dA35usSaxsJkHfw+VqnonqJjXOaoKCEanwudRAJ60TBGA=="],
16211624

1622-
"react-native-macos": ["[email protected]", "", { "dependencies": { "@jest/create-cache-key-function": "^29.7.0", "@react-native-macos/virtualized-lists": "0.79.0", "@react-native/assets-registry": "0.79.6", "@react-native/codegen": "0.79.6", "@react-native/community-cli-plugin": "0.79.6", "@react-native/gradle-plugin": "0.79.6", "@react-native/js-polyfills": "0.79.6", "@react-native/normalize-colors": "0.79.6", "@react-native/virtualized-lists": "0.79.6", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", "babel-jest": "^29.7.0", "babel-plugin-syntax-hermes-parser": "0.25.1", "base64-js": "^1.5.1", "chalk": "^4.0.0", "commander": "^12.0.0", "event-target-shim": "^5.0.1", "flow-enums-runtime": "^0.0.6", "glob": "^7.1.1", "invariant": "^2.2.4", "jest-environment-node": "^29.7.0", "memoize-one": "^5.0.0", "metro-runtime": "^0.82.0", "metro-source-map": "^0.82.0", "nullthrows": "^1.1.1", "pretty-format": "^29.7.0", "promise": "^8.3.0", "react-devtools-core": "^6.1.1", "react-refresh": "^0.14.0", "regenerator-runtime": "^0.13.2", "scheduler": "0.25.0", "semver": "^7.1.3", "stacktrace-parser": "^0.1.10", "whatwg-fetch": "^3.0.0", "ws": "^6.2.3", "yargs": "^17.6.2" }, "peerDependencies": { "@types/react": "^19.0.0", "react": "^19.0.0", "react-native": "0.79.6" }, "optionalPeers": ["@types/react"], "bin": { "react-native": "cli.js", "react-native-macos": "cli.js" } }, "sha512-J0HHZISoi0OQYirB1xU4fp0noLgUDTZDuM1gIuZYt7E//EE85yT9mnCVL2RYgRUlfenNISS3SSv5RzIQiYurXg=="],
1625+
"react-native-macos": ["[email protected]", "", { "dependencies": { "@jest/create-cache-key-function": "^29.7.0", "@react-native-macos/virtualized-lists": "0.79.1", "@react-native/assets-registry": "0.79.6", "@react-native/codegen": "0.79.6", "@react-native/community-cli-plugin": "0.79.6", "@react-native/gradle-plugin": "0.79.6", "@react-native/js-polyfills": "0.79.6", "@react-native/normalize-colors": "0.79.6", "@react-native/virtualized-lists": "0.79.6", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", "babel-jest": "^29.7.0", "babel-plugin-syntax-hermes-parser": "0.25.1", "base64-js": "^1.5.1", "chalk": "^4.0.0", "commander": "^12.0.0", "event-target-shim": "^5.0.1", "flow-enums-runtime": "^0.0.6", "glob": "^7.1.1", "invariant": "^2.2.4", "jest-environment-node": "^29.7.0", "memoize-one": "^5.0.0", "metro-runtime": "^0.82.0", "metro-source-map": "^0.82.0", "nullthrows": "^1.1.1", "pretty-format": "^29.7.0", "promise": "^8.3.0", "react-devtools-core": "^6.1.1", "react-refresh": "^0.14.0", "regenerator-runtime": "^0.13.2", "scheduler": "0.25.0", "semver": "^7.1.3", "stacktrace-parser": "^0.1.10", "whatwg-fetch": "^3.0.0", "ws": "^6.2.3", "yargs": "^17.6.2" }, "peerDependencies": { "@types/react": "^19.0.0", "react": "^19.0.0", "react-native": "0.79.6" }, "optionalPeers": ["@types/react"], "bin": { "react-native": "cli.js", "react-native-macos": "cli.js" } }, "sha512-y4jm0V7pyb1vybOQlAx+KG6Iqo5K5LcdH5jzHzvutGK+OOdGBIk4Z7QV7BwRVNfGnDdtJDr1kQSlYdDTjCYUpg=="],
16231626

16241627
"react-refresh": ["[email protected]", "", {}, "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA=="],
16251628

package.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"@expo/fingerprint": "0.15.2",
1515
"react": "19.0.0",
1616
"react-native": "0.79.6",
17-
"react-native-macos": "0.79.0"
17+
"react-native-macos": "0.79.1"
1818
},
1919
"devDependencies": {
2020
"@babel/core": "7.28.5",
@@ -43,5 +43,8 @@
4343
},
4444
"workspaces": [
4545
"build-cache-provider"
46-
]
46+
],
47+
"patchedDependencies": {
48+
49+
}
4750
}

patches/[email protected]

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
diff --git a/React/CoreModules/RCTDevLoadingView.mm b/React/CoreModules/RCTDevLoadingView.mm
2+
index 64276ea56676ada0f61595ef84df2fc729e3ba34..ff71221beb16bd95ddc064369e33e660db1fcdc4 100644
3+
--- a/React/CoreModules/RCTDevLoadingView.mm
4+
+++ b/React/CoreModules/RCTDevLoadingView.mm
5+
@@ -128,33 +128,21 @@ - (void)showMessage:(NSString *)message color:(RCTUIColor *)color backgroundColo
6+
self->_window = [[UIWindow alloc] initWithWindowScene:mainWindow.windowScene];
7+
self->_window.windowLevel = UIWindowLevelStatusBar + 1;
8+
self->_window.rootViewController = [UIViewController new];
9+
-#else // [macOS
10+
- self->_window = [[NSWindow alloc] initWithContentRect:NSMakeRect(0, 0, 375, 20)
11+
- styleMask:NSWindowStyleMaskBorderless | NSWindowStyleMaskFullSizeContentView
12+
- backing:NSBackingStoreBuffered
13+
- defer:YES];
14+
- [self->_window setIdentifier:sRCTDevLoadingViewWindowIdentifier];
15+
-#endif // macOS]
16+
17+
- self->_container = [[RCTUIView alloc] init]; // [macOS]
18+
+ self->_container = [[UIView alloc] init];
19+
self->_container.backgroundColor = backgroundColor;
20+
self->_container.translatesAutoresizingMaskIntoConstraints = NO;
21+
22+
- self->_label = [[RCTUILabel alloc] init]; // [macOS]
23+
+ self->_label = [[UILabel alloc] init];
24+
self->_label.translatesAutoresizingMaskIntoConstraints = NO;
25+
self->_label.font = [UIFont monospacedDigitSystemFontOfSize:12.0 weight:UIFontWeightRegular];
26+
self->_label.textAlignment = NSTextAlignmentCenter;
27+
self->_label.textColor = color;
28+
self->_label.text = message;
29+
30+
-#if !TARGET_OS_OSX // [macOS]
31+
[self->_window.rootViewController.view addSubview:self->_container];
32+
-#else // [macOS
33+
- [self->_window.contentView addSubview:self->_container];
34+
-#endif // macOS]
35+
[self->_container addSubview:self->_label];
36+
37+
-#if !TARGET_OS_OSX // [macOS]
38+
CGFloat topSafeAreaHeight = mainWindow.safeAreaInsets.top;
39+
CGFloat height = topSafeAreaHeight + 25;
40+
self->_window.frame = CGRectMake(0, 0, mainWindow.frame.size.width, height);
41+
@@ -175,6 +163,31 @@ - (void)showMessage:(NSString *)message color:(RCTUIColor *)color backgroundColo
42+
[self->_label.bottomAnchor constraintEqualToAnchor:self->_container.bottomAnchor constant:-5],
43+
]];
44+
#else // [macOS
45+
+ if (!self->_label) {
46+
+ self->_label = [[RCTUILabel alloc] init]; // [macOS]
47+
+ self->_label.translatesAutoresizingMaskIntoConstraints = NO;
48+
+ self->_label.font = [UIFont monospacedDigitSystemFontOfSize:12.0 weight:UIFontWeightRegular];
49+
+ self->_label.textAlignment = NSTextAlignmentCenter;
50+
+ }
51+
+ self->_label.textColor = color;
52+
+ self->_label.text = message;
53+
+
54+
+ if (!self->_container) {
55+
+ self->_container = [[RCTUIView alloc] init]; // [macOS]
56+
+ self->_container.translatesAutoresizingMaskIntoConstraints = NO;
57+
+ [self->_container addSubview:self->_label];
58+
+ }
59+
+ self->_container.backgroundColor = backgroundColor;
60+
+
61+
+ if (!self->_window) {
62+
+ self->_window = [[NSWindow alloc] initWithContentRect:NSMakeRect(0, 0, 375, 20)
63+
+ styleMask:NSWindowStyleMaskBorderless | NSWindowStyleMaskFullSizeContentView
64+
+ backing:NSBackingStoreBuffered
65+
+ defer:YES];
66+
+ [self->_window setIdentifier:sRCTDevLoadingViewWindowIdentifier];
67+
+ [self->_window.contentView addSubview:self->_container];
68+
+ }
69+
+
70+
// Container constraints
71+
[NSLayoutConstraint activateConstraints:@[
72+
[self->_container.topAnchor constraintEqualToAnchor:self->_window.contentView.topAnchor],

0 commit comments

Comments
 (0)