     }
 
     override func shouldPersist(browser: Browser) -> Bool {
+
         if browser.url != prevURL {
+            if let timer = self.timer {
+                timer()
+            } else {
+                self.count++
+            }
+
             prevURL = browser.url
-            count++
             return count < maxCount
         }
 


/**
 * A special version of a snackbar that persists for maxCount page loads.
 * Defaults to waiting for 2 loads (i.e. will persist over one page load,
 * which is useful for things like saving passwords.
 */
class CountdownSnackBar: SnackBar {
    private var maxCount: Int? = nil
    private var count = 0
    private var prevURL: NSURL? = nil

    init(maxCount: Int = 2, attrText: NSAttributedString, img: UIImage?, buttons: [SnackButton]?) {
        self.maxCount = maxCount
        super.init(attrText: attrText, img: img, buttons: buttons)
    }

    override init(frame: CGRect) {


import Foundation
import SnapKit
import Shared

class SnackBarUX {
    static var MaxWidth: CGFloat = 400
