From 0eb2745d8819f5d6aafc6296d131fa7d0dbf32b0 Mon Sep 17 00:00:00 2001 From: Bob Sun Date: Tue, 7 Feb 2017 16:52:07 +0800 Subject: [PATCH] add HUD for erasing data --- pass/AdvancedSettingsTableViewController.swift | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pass/AdvancedSettingsTableViewController.swift b/pass/AdvancedSettingsTableViewController.swift index a937d05..d8f40bc 100644 --- a/pass/AdvancedSettingsTableViewController.swift +++ b/pass/AdvancedSettingsTableViewController.swift @@ -7,6 +7,7 @@ // import UIKit +import SVProgressHUD class AdvancedSettingsTableViewController: UITableViewController { @@ -20,9 +21,16 @@ class AdvancedSettingsTableViewController: UITableViewController { print("erase data") let alert = UIAlertController(title: "Erase Password Store Data?", message: "This will delete all local data and settings. Password store data on your remote server will not be affected.", preferredStyle: UIAlertControllerStyle.alert) alert.addAction(UIAlertAction(title: "Erase Password Data", style: UIAlertActionStyle.destructive, handler: {[unowned self] (action) -> Void in - PasswordStore.shared.erase() - NotificationCenter.default.post(Notification(name: Notification.Name("passwordStoreErased"))) - self.navigationController!.popViewController(animated: true) + SVProgressHUD.show(withStatus: "Erasing ...") + DispatchQueue.global(qos: .userInitiated).sync { + PasswordStore.shared.erase() + DispatchQueue.main.async { + NotificationCenter.default.post(Notification(name: Notification.Name("passwordStoreErased"))) + self.navigationController!.popViewController(animated: true) + SVProgressHUD.showSuccess(withStatus: "Done") + SVProgressHUD.dismiss(withDelay: 1) + } + } })) alert.addAction(UIAlertAction(title: "Dismiss", style: UIAlertActionStyle.cancel, handler:nil)) self.present(alert, animated: true, completion: nil)