diff --git a/src/notification-manager.coffee b/src/notification-manager.coffee index 3e47c11e8..f811a501f 100644 --- a/src/notification-manager.coffee +++ b/src/notification-manager.coffee @@ -48,3 +48,10 @@ class NotificationManager ### getNotifications: -> @notifications + + ### + Section: Managing Notifications + ### + + clear: -> + @notifications = [] diff --git a/src/notification.coffee b/src/notification.coffee index bc0261ad8..0ca82e724 100644 --- a/src/notification.coffee +++ b/src/notification.coffee @@ -8,10 +8,14 @@ class Notification @timestamp = new Date() @dismissed = true @dismissed = false if @isDismissable() + @displayed = false onDidDismiss: (callback) -> @emitter.on 'did-dismiss', callback + onDidDisplay: (callback) -> + @emitter.on 'did-display', callback + getOptions: -> @options getType: -> @type @@ -30,12 +34,17 @@ class Notification dismiss: -> return unless @isDismissable() and not @isDismissed() @dismissed = true - @emitter.emit 'did-dismiss' + @emitter.emit 'did-dismiss', this isDismissed: -> @dismissed isDismissable: -> !!@options.dismissable + wasDisplayed: -> @displayed + + setDisplayed: (@displayed) -> + @emitter.emit 'did-display', this + getIcon: -> return @options.icon if @options.icon? switch @type