From 6275bda96e7fc186ea5c397215dbbc6f9032d6b8 Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Mon, 20 Apr 2026 14:44:38 +0300 Subject: [PATCH] avoid using `UIScreen.main` --- .../ios/ExpoBlueskyContextMenuView.swift | 2 +- .../ios/ImagePreviewController.swift | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/expo-bluesky-context-menu/ios/ExpoBlueskyContextMenuView.swift b/modules/expo-bluesky-context-menu/ios/ExpoBlueskyContextMenuView.swift index 35b89f4838..19acc10ede 100644 --- a/modules/expo-bluesky-context-menu/ios/ExpoBlueskyContextMenuView.swift +++ b/modules/expo-bluesky-context-menu/ios/ExpoBlueskyContextMenuView.swift @@ -29,7 +29,7 @@ class ExpoBlueskyContextMenuView: ExpoView, UIContextMenuInteractionDelegate { override var bounds: CGRect { get { let b = super.bounds - let s = UIScreen.main.scale + let s = self.window?.screen.scale ?? UIScreen.main.scale return CGRect( x: b.origin.x, y: b.origin.y, diff --git a/modules/expo-bluesky-context-menu/ios/ImagePreviewController.swift b/modules/expo-bluesky-context-menu/ios/ImagePreviewController.swift index 29aab212d6..7800952c53 100644 --- a/modules/expo-bluesky-context-menu/ios/ImagePreviewController.swift +++ b/modules/expo-bluesky-context-menu/ios/ImagePreviewController.swift @@ -86,9 +86,11 @@ final class ImagePreviewController: UIViewController { /// Caps the preview to a comfortable size within the current key window. private static func sizeForAspect(_ aspect: CGFloat) -> CGSize { - let screen = UIScreen.main.bounds - let maxW = screen.width - 32 - let maxH = screen.height * 0.7 + let screenBounds = UIApplication.shared.connectedScenes + .compactMap { $0 as? UIWindowScene } + .first?.screen.bounds ?? UIScreen.main.bounds + let maxW = screenBounds.width - 32 + let maxH = screenBounds.height * 0.7 var w = maxW var h = w / aspect if h > maxH {