Post

Replies

Boosts

Views

Activity

Reply to MFMailCompose won't accept input after iOS 18 upgrade
I found it! Please let me know if there's a better way to do this. If I don't call this method, it fixes MFMailComposeViewController and the mail dialog accepts input again. Unfortunately, now my main app window only takes up one corner of the screen on a 12.9 inch iPad. -(void) changeScreenScaling { /* Scaling up for iPads that are not 9.7 1024x768. See also: - https://forums.developer.apple.com/thread/36336 - https://forums.developer.apple.com/thread/78680 - https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/launch-screen/ - https://developer.apple.com/ios/submit/ Note that the resolutions NOT mentioned in the Info.plist UILaunchImageMinimumOSVersion are automatically scaled to 9.7" (1024x768) by the iOS. That usually works well, but for example the 11" has different aspect ratio so it doesn't really work, an the 2018 12.9" has round corners/safe areas, so that doesn't scale well either. I'd leave them all to auto-scale anyway, but Apple mandated the proper 12.9" support starting March 2019. So. Right now info.plist references 1024x768 and 1366x1024 (12.9" device), that way everything is auto-scaled to 9.7", except for the 12.9" that we now handle ourselves (by doing the same scaling further down this function). The 11" on the other hand is not mandated yet, so we're leaving it out. It's a real pain because a different aspect ratio would require change the control layout across the entire app. As support for more resolutions is added, we be adding them to Info.plist UILaunchImageMinimumOSVersion */ CGSize screenSize = [UIScreen mainScreen].bounds.size; CGFloat screenLength = MAX(screenSize.height, screenSize.width); CGFloat scale = screenLength / 1024; if (scale!=1) { CGAffineTransform tr = CGAffineTransformMakeScale(scale, scale); self.window.transform = tr; } }
Sep ’24
Reply to MFMailCompose won't accept input after iOS 18 upgrade
I would have opened a bug report already, except that I can only repo the problem in our main app. Everything works just as it's supposed to in my sample project. I've confirmed I can repro the problem with our main app on an iPad Pro 12.9in 5th gen (Model MHNF3LL/A), after upgrading it to iOS 18.0. I tried deleting and reinstalling the app, and upgrading to iOS beta 18.1, but the problem remained so I did a refresh, wiped the iPad clean and reinstalled non-beta 18.0 (build 22A3354), but the problem still remains on that iPad. Since then we've upgraded an older iPad (~10in, 8th gen, model MYL92LL/A) to iOS 18 (build 22A3354) and that seems to work fine with our main app. So it seems like it's somehow tied to either the newer hardware, or the larger-format screen. I believe there is some layout code in the app that treats larger format screens differently, so that's the next thing for me to look at.
Sep ’24
Reply to X button disappeared on iPadOS 26.4 in MFMailComposeViewController
And it's still a problem in iPadOS 26 beta. I filed FB22878196 on May 28 2026, and told them to mark it as a duplicate of Apple internal bug r. 172868867. Haven't had any response from Apple yet.
Topic: UI Frameworks SubTopic: UIKit
Replies
Boosts
Views
Activity
10h
Reply to MFMailComposeViewController in visionOS does not have a cancel button
Any updates on this? I filed FB22878196 on May 28 2026, and told them to mark it as a duplicate of Apple internal bug (r. 172868867). It was still broken in iPadOS 26.6 beta. We're dealing with customer calls about it from people who are using iPadOS 26.5.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
10h
Reply to MFMailCompose won't accept input after iOS 18 upgrade
I was finally able to repro the problem in a minimal demo app, and have submitted the demo app along with a bug report. The report ID is FB15182286
Replies
Boosts
Views
Activity
Sep ’24
Reply to MFMailCompose won't accept input after iOS 18 upgrade
I found it! Please let me know if there's a better way to do this. If I don't call this method, it fixes MFMailComposeViewController and the mail dialog accepts input again. Unfortunately, now my main app window only takes up one corner of the screen on a 12.9 inch iPad. -(void) changeScreenScaling { /* Scaling up for iPads that are not 9.7 1024x768. See also: - https://forums.developer.apple.com/thread/36336 - https://forums.developer.apple.com/thread/78680 - https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/launch-screen/ - https://developer.apple.com/ios/submit/ Note that the resolutions NOT mentioned in the Info.plist UILaunchImageMinimumOSVersion are automatically scaled to 9.7" (1024x768) by the iOS. That usually works well, but for example the 11" has different aspect ratio so it doesn't really work, an the 2018 12.9" has round corners/safe areas, so that doesn't scale well either. I'd leave them all to auto-scale anyway, but Apple mandated the proper 12.9" support starting March 2019. So. Right now info.plist references 1024x768 and 1366x1024 (12.9" device), that way everything is auto-scaled to 9.7", except for the 12.9" that we now handle ourselves (by doing the same scaling further down this function). The 11" on the other hand is not mandated yet, so we're leaving it out. It's a real pain because a different aspect ratio would require change the control layout across the entire app. As support for more resolutions is added, we be adding them to Info.plist UILaunchImageMinimumOSVersion */ CGSize screenSize = [UIScreen mainScreen].bounds.size; CGFloat screenLength = MAX(screenSize.height, screenSize.width); CGFloat scale = screenLength / 1024; if (scale!=1) { CGAffineTransform tr = CGAffineTransformMakeScale(scale, scale); self.window.transform = tr; } }
Replies
Boosts
Views
Activity
Sep ’24
Reply to MFMailCompose won't accept input after iOS 18 upgrade
I would have opened a bug report already, except that I can only repo the problem in our main app. Everything works just as it's supposed to in my sample project. I've confirmed I can repro the problem with our main app on an iPad Pro 12.9in 5th gen (Model MHNF3LL/A), after upgrading it to iOS 18.0. I tried deleting and reinstalling the app, and upgrading to iOS beta 18.1, but the problem remained so I did a refresh, wiped the iPad clean and reinstalled non-beta 18.0 (build 22A3354), but the problem still remains on that iPad. Since then we've upgraded an older iPad (~10in, 8th gen, model MYL92LL/A) to iOS 18 (build 22A3354) and that seems to work fine with our main app. So it seems like it's somehow tied to either the newer hardware, or the larger-format screen. I believe there is some layout code in the app that treats larger format screens differently, so that's the next thing for me to look at.
Replies
Boosts
Views
Activity
Sep ’24
Reply to MFMailCompose won't accept input after iOS 18 upgrade
One more bit of information: when I comment out these lines (removing everything I can see that changes the MFMailComposeViewController's appearance at all) our app still has the same problem. So... where else might I look? [mailComposer setToRecipients:mfrEmail]; [mailComposer setToRecipients:mfrEmail];
Replies
Boosts
Views
Activity
Sep ’24