   show: ->
     @view.style.display = 'block'
     @emitter.emit 'didShow'
-    setTimeout ( => @view.classList.remove 'dontshow'), 20
+    setTimeout ( =>
+      @positionOverlay()
+      @view.classList.remove 'dontshow'), 20
 
   destroy: ->
     if document.body.contains @view

      hideTimer = setTimeout (=> @hide()), @hideDelay

  positionOverlay: ->
    p = @parent
    pos = @position
    v = @view
    positioner = ->
      bounding = p.getBoundingClientRect()
      v.style.bottom   = document.documentElement.clientHeight - bounding.top + 'px'
      switch pos
        when 'left'
          v.style.left = bounding.left + 'px'
        when 'right'
          v.style.left = bounding.left + bounding.width -  v.offsetWidth + 'px'
      window.requestAnimationFrame positioner
    window.requestAnimationFrame positioner

    @oldOnMouseOut = @parent.onmouseout

    @showOnHover()
    this

  onDidShow: (f) ->
