             dismissable: true
           atom.notifications.addFatalError("Uncaught #{error.stack.split('\n')[0]}", options)
 
+    @logsPanelView = new LogsPanelView
+    @logsPanel = atom.workspace.addBottomPanel({item: @logsPanelView.getElement(), visible: false})
+    @subscriptions.add atom.commands.add 'atom-workspace', 'notifications:toggle-logs', -> Notifications.toggleLogs()
+
   deactivate: ->
     @subscriptions.dispose()
     @notificationsElement?.remove()

      timeSpan = notification.getTimestamp() - @lastNotification.getTimestamp()
      unless timeSpan < @duplicateTimeDelay and notification.isEqual(@lastNotification)
        @notificationsElement.appendChild(atom.views.getView(notification).element)
    else
      @notificationsElement.appendChild(atom.views.getView(notification).element)

    notification.setDisplayed(true)
    @lastNotification = notification


    @isInitialized = true

  toggleLogs: ->
    if @logsPanel.isVisible()
      @logsPanel.hide()
    else
      @logsPanel.show()

  addNotificationView: (notification) ->
    return unless notification?
    @initializeIfNotInitialized()
