 
     unless data._initial
 
+      kd.utils.killWait @_wait
+
       if action
         @messageButton.setTitle action.title  if action.title
-        if typeof action is 'function'
-          @messageButton.setCallback action
+        if typeof action.fn is 'function'
+          @messageButton.setCallback action.fn
         else if actionEvent = action.event
           @messageButton.setCallback =>
             @emit Events.Banner.Close

        @messageButton.hide()

      if autohide
        kd.utils.wait autohide, @bound 'close'

    return data



    super options, data

    @_wait = null

    @messageButton = new kd.ButtonView
      cssClass : 'message-button solid blue small'
      title    : @getData 'buttonTitle'
