|
|
@@ -198,6 +198,7 @@ class ViewController: NSViewController {
|
|
|
private weak var paywallContinueButton: NSView?
|
|
|
private var paywallPurchaseTask: Task<Void, Never>?
|
|
|
private var paywallContinueEnabled = true
|
|
|
+ private var lastKnownPremiumAccess = false
|
|
|
private var allScheduledMeetings: [ScheduledMeeting] = []
|
|
|
private var selectedMeetingsDayStart: Date = Calendar.current.startOfDay(for: Date())
|
|
|
private var selectedHomeSidebarItem: String = "Home"
|
|
|
@@ -1519,7 +1520,14 @@ class ViewController: NSViewController {
|
|
|
storeKitStartupTask?.cancel()
|
|
|
storeKitCoordinator.onEntitlementsChanged = { [weak self] _ in
|
|
|
DispatchQueue.main.async {
|
|
|
- self?.updatePremiumButtons()
|
|
|
+ guard let self else { return }
|
|
|
+ let newIsPremium = self.storeKitCoordinator.hasPremiumAccess
|
|
|
+ let wasPremium = self.lastKnownPremiumAccess
|
|
|
+ self.lastKnownPremiumAccess = newIsPremium
|
|
|
+ self.updatePremiumButtons()
|
|
|
+ if wasPremium && !newIsPremium {
|
|
|
+ self.showPaywall()
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
storeKitStartupTask = Task { [weak self] in
|