Skip to content
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

Support UIModalPresentationStyle.overFullScreen #544

Open
wtmoose opened this issue Jan 3, 2023 · 0 comments
Open

Support UIModalPresentationStyle.overFullScreen #544

wtmoose opened this issue Jan 3, 2023 · 0 comments
Assignees
Labels

Comments

@wtmoose
Copy link

wtmoose commented Jan 3, 2023

Is your feature request related to a problem? Please describe.

The framework currently requires UIModalPresentationStyle.fullScreen. However, can (and does) break some apps that use custom view controller presentation. We had to rework (and degrade) the navigation of our app to work with TOCropViewController.

With UIModalPresentationStyle.fullScreen, UIKit removes the presenting view controller's view from the view hierarchy. On dismissal, UIKit reinstalls the presenting view controller's view. However, this process is not robust when the presenting view controller itself is presented using a custom presentation.

In my specific case, we're using custom view controller presentation provided by SwiftMessages to display the presenting view controller. When TOCropViewController is dismissed, the presenting view controller's view is no longer visible because UIKit didn't properly restore the custom presentation's view hierarchy.

Describe the solution you'd like

Potential solutions in order of preference:

  1. Support all modal presentation styles
  2. Support UIModalPresentationStyle.overFullScreen
  3. Change from UIModalPresentationStyle.fullScreen to UIModalPresentationStyle.overFullScreen

Describe alternatives you've considered

We had to deviate from our app's navigation paradigm and use standard modal presentation with the flow that involves TOCropViewController.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants