|
@@ -134,7 +134,7 @@ class KMPurchaseEmbeddedWindowController: NSWindowController {
|
|
|
|
|
|
private var timer: Timer?
|
|
|
private var pollCount = 0
|
|
|
- private let maxPolls = 18
|
|
|
+ private let maxPolls = 36
|
|
|
private let interval: TimeInterval = 5.0
|
|
|
|
|
|
private var _activityAlertViewController: KMActivityALertViewController?
|
|
@@ -1358,7 +1358,9 @@ class KMPurchaseEmbeddedWindowController: NSWindowController {
|
|
|
private func openWebView(_ urlPath: String) -> Void {
|
|
|
DispatchQueue.main.async { [weak self] in
|
|
|
guard let self = self else { return }
|
|
|
+
|
|
|
self.pollCount = 0
|
|
|
+ self.startPolling()
|
|
|
self.embeddedPaymentPopWC = KMEmbeddedPaymentPopWC.currentFirstTrialWC(urlPath)
|
|
|
if self.paymentMethod == .paddle {
|
|
|
self.embeddedPaymentPopWC?.isPaddle = true
|
|
@@ -1369,7 +1371,6 @@ class KMPurchaseEmbeddedWindowController: NSWindowController {
|
|
|
self.embeddedPaymentPopWC?.callback = { isClose in
|
|
|
}
|
|
|
}
|
|
|
- startPolling()
|
|
|
}
|
|
|
|
|
|
private func convertBase64StringToNSImage(base64String: String) -> NSImage? {
|
|
@@ -1399,13 +1400,7 @@ class KMPurchaseEmbeddedWindowController: NSWindowController {
|
|
|
|
|
|
self.qrCodeImageView.image = img
|
|
|
|
|
|
- self.startPolling()
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- private func pollingResult() -> Void {
|
|
|
- DispatchQueue.main.asyncAfter(deadline: .now() + 1) { [weak self] in
|
|
|
- guard let self = self else { return }
|
|
|
+ self.pollCount = 0
|
|
|
self.startPolling()
|
|
|
}
|
|
|
}
|
|
@@ -1552,8 +1547,9 @@ extension KMPurchaseEmbeddedWindowController: NSTextFieldDelegate {
|
|
|
|
|
|
extension KMPurchaseEmbeddedWindowController: NSWindowDelegate {
|
|
|
func windowWillClose(_ notification: Notification) {
|
|
|
- if orderID != "" {
|
|
|
- pollingResult()
|
|
|
+ if let data = self.window?.isEqual(to: notification.object), data {
|
|
|
+ // 窗口关闭,关闭轮询
|
|
|
+ stopPolling()
|
|
|
}
|
|
|
if self.embeddedPaymentPopWC != nil {
|
|
|
self.embeddedPaymentPopWC?.close()
|