       @emitDidRefresh()
       @emitDidStopRefreshing()
 
+  refreshManually: (options) ->
+    @emitWillRefreshManually()
+    @refresh(options)
+
   renderItems: (items) ->
     texts = items.map (item) => @provider.viewForItem(item)
     @withIgnoreChange =>

    return if @destroyed

    @destroyed = true
    @constructor.unregister(this)
    @highlighter.destroy()
    @syncSubcriptions?.dispose()

      range = @editor.setTextInBufferRange(itemArea, texts.join("\n"), undo: 'skip')
      @setModifiedState(false)
      @editorLastRow = range.end.row

  observeChange: ->
    @editor.buffer.onDidChange (event) =>
