New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
iOS 13 Support #334
Comments
Thanks I will start looking at this soon, once the iOS beta and Xcode are a bit more stable. |
I have this issue too: [General] CRASH: Access to _UIBarBackground's _shadowView ivar is prohibited. This is an application bug
It seems to be an already known issue with previous iOS versions because the code obfuscates the acccess to the shadowView ivar here in _configurePopupBarFromBottomBar:
Looks like iOS 13 cannot be tricked by this anymore ;-) Possible workarounds:
|
There is always |
I will look into this soon. |
iOS 13 has the card appearance style as a default for modal presentations. Maybe an option to configure the appearance style of the popup would be useful to enforce the "old" look of the popup? |
The popup does not currently use the normal presentation methods of iOS (e.g., In any way, SwiftUI support seems out of the question, as they completely abstract view controllers from the user, despite using them heavily themselves. |
@MacMark , Actually the framework does not use presentViewController:animated method for presenting the popup content view controller. |
Yes, you're right, the popup is not affected by the card stuff and looks the same like before. My mistake. |
@LeoNatan , they just added a new value for the modalPresentationStyle property (UIModalPresentationAutomatic). A presentation style chosen by the system. And this is the default value. |
@iDevelopper So there is no way to reproduce this manually using some UIPresentationController subclass? It's all private? |
@LeoNatan , no way. It is like it was before except this new value for modalPresentationStyle property. |
Thanks |
iOS 13 beta: Also, It seems that Apple has removed the swipe gesture to present the maxi player in Music App. But she was not very good in fact ... A lot of glitch effects... |
You mean drag? |
Yes from the popup bar to open the popup content view controller by dragging up. |
But it is the first beta and in my implementation, the drag does not work properly when modalPresentationStyle is set to the default value (UIModalPresentationAutomatic) for the presenting view controller. They will surely correct... |
I've found the issue and will push a fix soon. |
iOS 13 is presenting … challenges. 🙃 |
Dark mode support will be coming later, as there are currently bugs in the system: https://twitter.com/smileyborg/status/1137511042949365761 |
Pushed a fix on master with support for iOS 13. |
Added support for iOS 13 dark mode. |
v2.7.2 is out with initial support for iOS 13 (up to and including beta 3) |
I am running 2.7.3 for some time now in my app and it runs perfectly fine without any issues. Thanks and thumbs up from my side! 😊 |
Thank you! |
He is happy this code works on Catalina via Catalyst. |
I worked on it further. It works great now on macOS. I don't believe it's a good ux for a Mac app, but if someone wants to use it, they can. |
Sorry, I have not looked enough. I did not notice the three buttons on the Mac interface. But this this thread concerns iOS 13 however. So, bravo! I'll have a look with a Mac updated with the Catalina beta. It will be better with a splitViewController, yes. What are the things to modify so that the interfarce user also appears on Mac OS X while the framework was developed for iOS? |
You enable macOS as a platform in the project. Then your iOS app runs on the Mac like it’s an iPad app. It doesn’t look like a Mac app but runs. |
I suggest you look at WWDC videos on the subject. |
Ah ok, thanks! It is like an iPhone application can be run on a iPad in a emulate mode? |
Hi @LeoNatan , I don't understand what is for these delegate methods (never called): - (nullable UIContextMenuConfiguration *)tableView:(UITableView *)tableView contextMenuConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath point:(CGPoint)point API_AVAILABLE(ios(13.0))
{
return [UIContextMenuConfiguration configurationWithIdentifier:@"Preview" previewProvider:^ UIViewController* {
NSString* cellIdentifier = [tableView cellForRowAtIndexPath:indexPath].reuseIdentifier;
id segueTemplate = [self _segueTemplateWithIdentifier:cellIdentifier];
return [segueTemplate instantiateOrFindDestinationViewControllerWithSender:self];;
} actionProvider:nil];
}
- (void)tableView:(UITableView *)tableView willPerformPreviewActionForMenuWithConfiguration:(UIContextMenuConfiguration *)configuration animator:(id<UIContextMenuInteractionCommitAnimating>)animator API_AVAILABLE(ios(13.0))
{
UIViewController* vc = animator.previewViewController;
[animator addCompletion:^{
[self presentViewController:vc animated:YES completion:nil];
}];
} |
Again, please watch the WWDC videos describing new iOS 13 features. |
I wanted to say that in your sample, these two UITableView delegate methods are never called (of course I test with iOS 13). The delegate methods of UIContextMenuInteractionDelegate are called. |
Try long pressing a cell, then tap the preview. |
Ok, my apologies! I was expecting after a long pressing on a music cell... |
But it's not in the same class. :) The music app sits in Swift land. |
Yes sorry, and? We can't do it in the Music app in Swift? |
What? Why not? |
Yes you are right but I think the best place for this demo should be in the music demo, no? |
The whole point why I added that was because in the storyboard, I have the old peek/pop API (3D touch), but there is no such API currently for context menus. So I wanted to have the same functionality as before. I also added the context menu in the normal stuff. In iOS music app, 3D touching a song displays an activity view controller, not a preview. |
Hi @LeoNatan , Nothing major, but I wanted to show it to you (Mac OS Dark Mode): |
I don't know why it looks like that on your end on macOS. It's not how it looks for me. Make sure you are running on the latest version of macOS Catalina and compiling with the latest version of Xcode. The navigation bar is not gone, it's the new navigation appearance stuff they introduced. Please read the docs: |
Hmm just reproduced the color issue on Catalina. Will fix @iDevelopper. Thanks! |
This seems like a bug in either Xcode or macOS. Wasn't there when I was working on v3 two weeks ago... |
I won't fight the system bugs. Apple's software quality is ridiculous at this point. Once they fix Xcode, it will look as it is intended to on Catalyst. The problem is that Xcode produces hardcoded RGB colors on Mac, rather than dynamic colors. This is why you see white backgrounds and dark text color. |
+1 for not fighting system bugs especially for such a new technology like catalyst. |
Yes, but Apple state of tooling and software is embarrassing. iOS 13 and tvOS 13 are full of bugs. Xcode is a crashfest and bugfest. And that's not even discussing SwiftUI and Combine, which are comedies of errors. Apple has obviously bitten way, way more than they can chew. |
I'am using the last bata version of Catalina and the last beta version of Xcode (beta 7) but in About it is beta 6! Your table view background color is not set to systemBackgroundColor. |
Duplicate feedback to Apple: FB7233302 (Xcode / Interface Builder produces broken results on macOS Catalyst) |
The dark mode issue has been resolved in Xcode 11.2 beta and macOS 15.0 beta 10. |
I think I will close this issue. I am not aware of any outstanding iOS 13 issues. Please open a new issue if you find new issues. |
Description
When presenting a popupController on iOS 13, the application crashes. The device log says:
An exception breakpoint reveals the issue to be caused in
LNPopupController.m:924
:self.popupBar.systemShadowColor = [_bottomBar valueForKeyPath:str2];
So apparently we can't set that property anymore.
Steps to Reproduce
Present a popupBar on iOS 13
Device, OS and Xcode Versions
iPhone Xs
iOS 13 beta 1
Xcode 11 beta 1
The text was updated successfully, but these errors were encountered: