     if @visible
       @update()
 
-      @tooltips ?= new CompositeDisposable
-
-      @subscriptions ?= new CompositeDisposable
-      @subscriptions.add @editor.onDidSave => @update()
+      @disposables ?= new CompositeDisposable
+      @disposables.add @editor.onDidSave => @update()
 
       @gutter.show()
 
     else
       @gutter.hide()
+
+      @disposables?.dispose()
+      @disposables = null
+
       @removeAllMarkers()
-      @subscriptions?.dispose()
-      @subscriptions = null
 
   update: () ->
 

      msgItem = document.createElement('div')
      msgItem.classList.add 'blame-tooltip'

      @tooltips.add atom.tooltips.add item, title: msgItem

      getCommit @editor.getPath(), hash.replace(/^[\^]/, ''), (msg) =>
        avatar = gravatar.url(msg.email, {s: 80});
        msgItem.innerHTML = """
          <div class="head">
            <img class="avatar" src="http:#{avatar}"/>

  removeAllMarkers: ->
    marker.destroy() for marker in @markers
    @markers = []

  resizeStarted: (e) =>
    document.addEventListener 'mousemove', @resizeMove
