   ###
   updateSizer: ->
     value = get(@, 'value') ? ''
+    value = (get(@, 'placeholder') ? '&nbsp;') if value is ''
     sizer = get(@, SIZER_PROPERTY) ? @createSizer()
     value = sizer.text(value).html().replace(/(\r\n|\n|\r)/gm, " <br/> ")
     sizer.html(value)

    get(@, SIZER_PROPERTY)?.remove()
    set(@, SIZER_PROPERTY, null)
    null

  ###
    Handle imminent destruction.

    sizer = jQuery('<div/>') #create jQuery element
    sizer.addClass SIZER_CLASS #make it stylable

    syncStyles = ->
      #copy styles from text field to sizer node
      element = get(@, 'element')
      return unless element
      sizer.attr('style', getComputedStyle(element, "").cssText)

      #hide the sizer node
      sizer.css(
        position: 'absolute'
        zIndex: -1000
        visibility: 'hidden'
        height: 'auto'
      )

      #Insert the sizer node
      @$().after(sizer)

    Ember.run.schedule 'afterRender', @, syncStyles
    set(@, SIZER_PROPERTY, sizer)
    sizer

