|
@@ -1132,6 +1132,16 @@ private extension ViewController {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ private func dismissPaywallIfPresented() {
|
|
|
|
|
+ if !Thread.isMainThread {
|
|
|
|
|
+ DispatchQueue.main.async { [weak self] in
|
|
|
|
|
+ self?.dismissPaywallIfPresented()
|
|
|
|
|
+ }
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
|
|
+ closePaywallClicked(nil)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@objc private func paywallFooterLinkClicked(_ sender: NSClickGestureRecognizer) {
|
|
@objc private func paywallFooterLinkClicked(_ sender: NSClickGestureRecognizer) {
|
|
|
guard let view = sender.view else { return }
|
|
guard let view = sender.view else { return }
|
|
|
let action = paywallFooterActionByView[ObjectIdentifier(view)]
|
|
let action = paywallFooterActionByView[ObjectIdentifier(view)]
|
|
@@ -1331,6 +1341,7 @@ private extension ViewController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if !hadPremiumAccess && hasPremiumAccess {
|
|
if !hadPremiumAccess && hasPremiumAccess {
|
|
|
|
|
+ dismissPaywallIfPresented()
|
|
|
if selectedSidebarPage != .joinMeetings {
|
|
if selectedSidebarPage != .joinMeetings {
|
|
|
Task { [weak self] in
|
|
Task { [weak self] in
|
|
|
await self?.loadSchedule()
|
|
await self?.loadSchedule()
|
|
@@ -1532,7 +1543,7 @@ private extension ViewController {
|
|
|
await self?.loadSchedule()
|
|
await self?.loadSchedule()
|
|
|
}
|
|
}
|
|
|
self.showSimpleAlert(title: "Purchase Complete", message: "Premium has been unlocked successfully.")
|
|
self.showSimpleAlert(title: "Purchase Complete", message: "Premium has been unlocked successfully.")
|
|
|
- self.paywallWindow?.performClose(nil)
|
|
|
|
|
|
|
+ self.dismissPaywallIfPresented()
|
|
|
self.scheduleRatingPromptAfterPremiumUpgrade()
|
|
self.scheduleRatingPromptAfterPremiumUpgrade()
|
|
|
case .cancelled:
|
|
case .cancelled:
|
|
|
break
|
|
break
|