       type: 'overlay'
       item: this
 
-  set: (@textContent) ->
-    @show()
-
-  add: (text) ->
-    @textContent += text
-
   reset: ->
-    @set ''
+    @textContent = ''
     @marker?.destroy()
 
   destroy: ->

module.exports = {
  ViewModel
  SearchViewModel
  Hover
  HoverElement
  VimNormalModeInputElement
}


class Hover
  constructor: (@vimState, text='') ->
    @view = atom.views.getView(this)
    @set text

  set: (text) ->
    @view.textContent = text
    @view.show()

  add: (text) ->
    @view.textContent += text
    @view.show()

  reset: -> @view.reset()

  destroy: ->
    @vimState = null
    @view.destroy()

class HoverElement extends HTMLElement
  createdCallback: ->
