expo-screen-orientation 55.0.13 → 55.0.15

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.
Files changed (38) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/android/build.gradle +2 -2
  3. package/expo-module.config.json +1 -1
  4. package/ios/ScreenOrientationViewController.swift +24 -6
  5. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.module → 55.0.15/expo.modules.screenorientation-55.0.15.module} +7 -7
  6. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.module.md5 +1 -0
  7. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.module.sha1 +1 -0
  8. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.module.sha256 +1 -0
  9. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.module.sha512 +1 -0
  10. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.pom → 55.0.15/expo.modules.screenorientation-55.0.15.pom} +1 -1
  11. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.pom.md5 +1 -0
  12. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.pom.sha1 +1 -0
  13. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.pom.sha256 +1 -0
  14. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.15/expo.modules.screenorientation-55.0.15.pom.sha512 +1 -0
  15. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/maven-metadata.xml +4 -4
  16. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/maven-metadata.xml.md5 +1 -1
  17. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/maven-metadata.xml.sha1 +1 -1
  18. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/maven-metadata.xml.sha256 +1 -1
  19. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/maven-metadata.xml.sha512 +1 -1
  20. package/package.json +2 -2
  21. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.module.md5 +0 -1
  22. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.module.sha1 +0 -1
  23. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.module.sha256 +0 -1
  24. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.module.sha512 +0 -1
  25. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.pom.md5 +0 -1
  26. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.pom.sha1 +0 -1
  27. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.pom.sha256 +0 -1
  28. package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/55.0.13/expo.modules.screenorientation-55.0.13.pom.sha512 +0 -1
  29. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13-sources.jar → 55.0.15/expo.modules.screenorientation-55.0.15-sources.jar} +0 -0
  30. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13-sources.jar.md5 → 55.0.15/expo.modules.screenorientation-55.0.15-sources.jar.md5} +0 -0
  31. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13-sources.jar.sha1 → 55.0.15/expo.modules.screenorientation-55.0.15-sources.jar.sha1} +0 -0
  32. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13-sources.jar.sha256 → 55.0.15/expo.modules.screenorientation-55.0.15-sources.jar.sha256} +0 -0
  33. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13-sources.jar.sha512 → 55.0.15/expo.modules.screenorientation-55.0.15-sources.jar.sha512} +0 -0
  34. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.aar → 55.0.15/expo.modules.screenorientation-55.0.15.aar} +0 -0
  35. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.aar.md5 → 55.0.15/expo.modules.screenorientation-55.0.15.aar.md5} +0 -0
  36. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.aar.sha1 → 55.0.15/expo.modules.screenorientation-55.0.15.aar.sha1} +0 -0
  37. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.aar.sha256 → 55.0.15/expo.modules.screenorientation-55.0.15.aar.sha256} +0 -0
  38. /package/local-maven-repo/host/exp/exponent/expo.modules.screenorientation/{55.0.13/expo.modules.screenorientation-55.0.13.aar.sha512 → 55.0.15/expo.modules.screenorientation-55.0.15.aar.sha512} +0 -0
package/CHANGELOG.md CHANGED
@@ -10,6 +10,16 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 55.0.15 — 2026-05-13
14
+
15
+ _This version does not introduce any user-facing changes._
16
+
17
+ ## 55.0.14 — 2026-05-04
18
+
19
+ ### 🐛 Bug fixes
20
+
21
+ - [iOS] Fixed per-screen orientation not working with expo-dev-client by searching child VCs for react-native-screens orientation when an intermediate VC blocks the traversal. ([#44181](https://github.com/expo/expo/pull/44181) by [@vonovak](https://github.com/vonovak))
22
+
13
23
  ## 55.0.13 — 2026-04-09
14
24
 
15
25
  _This version does not introduce any user-facing changes._
@@ -4,12 +4,12 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '55.0.13'
7
+ version = '55.0.15'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.screenorientation"
11
11
  defaultConfig {
12
12
  versionCode 7
13
- versionName '55.0.13'
13
+ versionName '55.0.15'
14
14
  }
15
15
  }
@@ -10,7 +10,7 @@
10
10
  "publication": {
11
11
  "groupId": "host.exp.exponent",
12
12
  "artifactId": "expo.modules.screenorientation",
13
- "version": "55.0.13",
13
+ "version": "55.0.15",
14
14
  "repository": "local-maven-repo"
15
15
  }
16
16
  }
@@ -64,9 +64,15 @@ class ScreenOrientationViewController: UIViewController {
64
64
  }
65
65
 
66
66
  override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
67
- guard !shouldUseRNScreenOrientation() else {
68
- return super.supportedInterfaceOrientations
67
+ if let vc = vcWithRNScreenOrientation() {
68
+ // react-native-screens has per-screen orientation set. Return that VC's
69
+ // supportedInterfaceOrientations — which RNScreens has swizzled to resolve
70
+ // the active screen's orientation mask.
71
+ return vc.supportedInterfaceOrientations
69
72
  }
73
+
74
+ // No react-native-screens orientation — use expo-screen-orientation's registry mask
75
+ // (set via lockAsync) or the default from Info.plist.
70
76
  let mask = screenOrientationRegistry.requiredOrientationMask()
71
77
  return !mask.isEmpty ? mask : defaultOrientationMask
72
78
  }
@@ -92,12 +98,24 @@ class ScreenOrientationViewController: UIViewController {
92
98
  })
93
99
  }
94
100
 
95
- private func shouldUseRNScreenOrientation() -> Bool {
96
- // If RNScreens has set the orientation we want to use it instead of our orientation
101
+ /// Finds the VC whose subtree has a react-native-screens screen with orientation set.
102
+ /// Checks self first (the common case), then each child VC. The child-level search handles
103
+ /// cases where an intermediate VC (e.g. DevLauncherViewController from expo-dev-client)
104
+ /// sits between this root VC and the RNSNavigationController, blocking the single-level
105
+ /// traversal that RNScreens' shouldAskScreensForScreenOrientation performs.
106
+ private func vcWithRNScreenOrientation() -> UIViewController? {
97
107
  guard let screenWindowTraitsClass = NSClassFromString("RNSScreenWindowTraits") else {
98
- return false
108
+ return nil
109
+ }
110
+ if screenWindowTraitsClass.shouldAskScreensForScreenOrientation?(in: self) ?? false {
111
+ return self
112
+ }
113
+ for child in children {
114
+ if screenWindowTraitsClass.shouldAskScreensForScreenOrientation?(in: child) ?? false {
115
+ return child
116
+ }
99
117
  }
100
- return screenWindowTraitsClass.shouldAskScreensForScreenOrientation?(in: self) ?? false
118
+ return nil
101
119
  }
102
120
 
103
121
  /**
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.screenorientation",
6
- "version": "55.0.13",
6
+ "version": "55.0.15",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -24,8 +24,8 @@
24
24
  },
25
25
  "files": [
26
26
  {
27
- "name": "expo.modules.screenorientation-55.0.13.aar",
28
- "url": "expo.modules.screenorientation-55.0.13.aar",
27
+ "name": "expo.modules.screenorientation-55.0.15.aar",
28
+ "url": "expo.modules.screenorientation-55.0.15.aar",
29
29
  "size": 36365,
30
30
  "sha512": "79b78c175584bffc9070c529309e89373b6a0296abeecfb2153b23662326ef1d045f940985aaf4fad2b31941c5157974b79c2836cdfc66b05ed574d681028eee",
31
31
  "sha256": "d6772ad24c27669f8d32e5179d91f63854c9f04fdb856021a918f2b41af6653d",
@@ -53,8 +53,8 @@
53
53
  ],
54
54
  "files": [
55
55
  {
56
- "name": "expo.modules.screenorientation-55.0.13.aar",
57
- "url": "expo.modules.screenorientation-55.0.13.aar",
56
+ "name": "expo.modules.screenorientation-55.0.15.aar",
57
+ "url": "expo.modules.screenorientation-55.0.15.aar",
58
58
  "size": 36365,
59
59
  "sha512": "79b78c175584bffc9070c529309e89373b6a0296abeecfb2153b23662326ef1d045f940985aaf4fad2b31941c5157974b79c2836cdfc66b05ed574d681028eee",
60
60
  "sha256": "d6772ad24c27669f8d32e5179d91f63854c9f04fdb856021a918f2b41af6653d",
@@ -73,8 +73,8 @@
73
73
  },
74
74
  "files": [
75
75
  {
76
- "name": "expo.modules.screenorientation-55.0.13-sources.jar",
77
- "url": "expo.modules.screenorientation-55.0.13-sources.jar",
76
+ "name": "expo.modules.screenorientation-55.0.15-sources.jar",
77
+ "url": "expo.modules.screenorientation-55.0.15-sources.jar",
78
78
  "size": 5194,
79
79
  "sha512": "e06be0d0236539250b81b1d5670d89f70600b03c82fa53c245602afdcb2bab06d04d42e6dd85e9686867d069a8b09dd3fbc04f562bc1760e33f68ea614b2ec42",
80
80
  "sha256": "d63ace679c73e409ffd1706ac43973134e9151254bf644d73a33c27539db1037",
@@ -0,0 +1 @@
1
+ 63812f49eb950042008152b7fd54430733caad4d409285ddd16f66fa46b7ac9d
@@ -0,0 +1 @@
1
+ 46cdb0be10415bc996cbdf27f41b3fdafa7c3b6476fe76293fbb9a2609468eb78d56b015677ef22fc687b6a4b0bccee1adf96009eb971d1de60c6e668741ea2e
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>host.exp.exponent</groupId>
11
11
  <artifactId>expo.modules.screenorientation</artifactId>
12
- <version>55.0.13</version>
12
+ <version>55.0.15</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.screenorientation</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ 837ca20dd974eefd70187339625638bea2f7ffc3461e9feb00049c10bea21f00
@@ -0,0 +1 @@
1
+ 95de5d3a13c147738bcbadbae402528668a663d99864f6d1180db78956767eeedda97a61df39416e94332e6b88426931336e8adeb886e51533bc18ddeda399bc
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.screenorientation</artifactId>
5
5
  <versioning>
6
- <latest>55.0.13</latest>
7
- <release>55.0.13</release>
6
+ <latest>55.0.15</latest>
7
+ <release>55.0.15</release>
8
8
  <versions>
9
- <version>55.0.13</version>
9
+ <version>55.0.15</version>
10
10
  </versions>
11
- <lastUpdated>20260409135054</lastUpdated>
11
+ <lastUpdated>20260513100106</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 80216ecf4f720a692e38d851a4a9c787
1
+ 560f13bd23817a56f1b7ce66ac5f2c77
@@ -1 +1 @@
1
- cc3a524217eb1c4b281a040a641f8691df839f35
1
+ 69c4555bfc5a07c409a206b292c3dd5a55c3ab75
@@ -1 +1 @@
1
- f9749d2b623b27d047b29a98a5cf7887cdd43ef4f52404cf11f197b896e8ef1d
1
+ ac90cd58b7b565882b543d839d2e17882026c45cb1a32e4dc3b85ed4b3f09eb1
@@ -1 +1 @@
1
- 105000a5af25d5aacd937440c94ad365b8b307ac36ce39664508c11316c697fa23a316c6169734f10b34629e921de48c81e89fca20778f9f6ecdf3b397a38939
1
+ 5f6dd5952fe1766de05fa4b060397868e3e31d6fec40603d698ebf21e2e13f35f7f6fdfeb327704fbbb30c67184bf07c255308f1d83e0e2c6e75e3d3a6ac3891
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-screen-orientation",
3
- "version": "55.0.13",
3
+ "version": "55.0.15",
4
4
  "description": "Expo universal module for managing device's screen orientation",
5
5
  "main": "build/ScreenOrientation.js",
6
6
  "types": "build/ScreenOrientation.d.ts",
@@ -42,5 +42,5 @@
42
42
  "expo": "*",
43
43
  "react-native": "*"
44
44
  },
45
- "gitHead": "b0ada30fd6a819c5f98a23d99b1b89a2ed68743d"
45
+ "gitHead": "0675db12d13a5309e3109e8ecf7f6011522194c6"
46
46
  }
@@ -1 +0,0 @@
1
- db2d6c892cb95b8bcd65aefc0ea8b719aa705908be1f9f2260cc163f3f6ca976
@@ -1 +0,0 @@
1
- 2d292a5e38bc51a946acc11b85ce865462915e9ac0752714d72a3aabef1d1f5a029523e2e801007702e9367f82bb516129635a4daed11cc7d96f0922114fb3f9
@@ -1 +0,0 @@
1
- 0e8bffe65d87bb2caaa1ee8c85a484189c6c9eb0cda236907d452af65678905e
@@ -1 +0,0 @@
1
- fa02c5389a5d95aebb6551a758510461d2665a67bbdd0b20b9c25db93236141fb420d3786e65805eb08f3a9962692a77cbc429346358024da3a92f8cc583c0f1