Superwall-iOS
Superwall-iOS copied to clipboard
[BUG] Paywall becoming blank after second presentation on macOS (Catalyst)
New issue checklist
- [x] I have reviewed the
READMEand documentation - [x] I have searched existing issues and this is not a duplicate
- [ ] I have attempted to reproduce the issue and include an example project.
General information
Superwallversion: 4.4.1- Xcode version: 16.4
- Devices/Simulators affected: macOS 15.5 via Catalyst
Describe the bug
The paywall controller is created via Superwall.shared.getPaywall(forPlacement:... then assigned to a window.
The first time it's presented, it works as expected, you can interact with it, subscribe... But the second time, it becomes blank as soon as you click anywhere. Not necessarily on a button.
Here is a screenshot of the paywall window after a random click on it, the second time it was presented:
Steps to reproduce
- Present paywall
- Close it
- Present paywall
- Click anywhere
Other Information
The code to present the paywall on an iPad, is the same but there it works as expected, no blank paywall issue even after two or more presentation.
Hi, I've been able to reproduce this, it's very strange. If I use register or a PaywallView though, this doesn't happen. Instead of using getPaywall are you able to use a PaywallView? Otherwise, what's your setup for getPaywall exactly, can you give code samples for how you're presenting the view etc.
Hi, thank you for the reply.
are you able to use a PaywallView?
It would require much more changes as our current code around paywalls is based on UIKit. So for now, no.
can you give code samples for how you're presenting
I simplified a bit but that's pretty much it:
func presentInWindow(_ window: UIWindow) {
let paywallVC = Superwall.shared.getPaywall(forPlacement: value, delegate: self)
window.rootViewController = viewController
}
Still looking into this. Are you able to use register? What's the reason you opted for getPaywall?
Are you able to use register? What's the reason you opted for getPaywall?
We have our own abstracted logic to present any paywall from any provider (Superwall, RC...) on any platform (iOS, iPadOS, macOS). So no, we cannot use register as we need a UIViewController.
Any update on this?