     }
 }
 
-public class NotificationBanner: UIToolbar {
-
+public class NotificationBanner: UIView {
+    
+    public static var animateDuration: NSTimeInterval = 0.3
+    public static var fallbackToBannerOnMainWindow: Bool = false
+    public var errorBackgroundColor = UIColor(white: 0.2, alpha: 1.0)
+    public var regularBackgroundColor = UIColor.greenColor()
+    
+    override public var backgroundColor: UIColor! {
+        didSet {
+            underStatusBarView?.backgroundColor = backgroundColor?.colorWithAlphaComponent(0.85)
+        }
+    }
+    
     public static func showMessage(message: Message) {
         
         guard NSThread.mainThread() == NSThread.currentThread() else {

    }

    @IBOutlet private weak var messageLabel: UILabel!
    private var underStatusBarView: UIView!
    public static var sharedToolbar: NotificationBanner = {
        let bundle = NSBundle(forClass: NotificationBanner.classForCoder())
        let t = bundle.loadNibNamed(String(NotificationBanner), owner: nil, options: nil).first as! NotificationBanner
        t.hideHairlineBorder()
        t.barTintColor = UIColor(white: 0.2, alpha: 0.4)
        t.addStatusBarBackingView()
        UIApplication.sharedApplication().keyWindow!.addSubview(t)
        return t
    }()
    

    private static var currentMessage: Message?
    private static var pendingMessages = [Message]()
    
    private class var messageShownFrame: CGRect {
        
        let y: CGFloat
        
        if let navigationBar = activeNavigationController?.navigationBar where sharedToolbar.superview == navigationBar {
            y = navigationBar.frame.height
        } else {
            y = UIApplication.sharedApplication().statusBarHidden ? 0 : UIApplication.sharedApplication().statusBarFrame.height
        }
        
        return CGRect(x: 0, y: y, width: UIScreen.mainScreen().bounds.width, height: sharedToolbar.frame.height)
    }
    private class var messageHiddenFrame: CGRect {
        return CGRect(x: 0, y: -sharedToolbar.frame.height, width: UIScreen.mainScreen().bounds.width, height: sharedToolbar.frame.height)
    }
    
    required public init?(coder aDecoder: NSCoder) {
