 
   handleChange: ->
     value = @refs.textInput.value
+
+    if @props.annotation.value?.length > value.length
+      @setState rows: 1
+    @handleResize()
+
     newAnnotation = Object.assign @props.annotation, {value}
     @props.onChange newAnnotation
-    @handleResize()

    newAnnotation = Object.assign @props.annotation, {value}
    @props.onChange newAnnotation

  handleResize: ->
    scroll = @refs.textInput.scrollHeight
    offset = @refs.textInput.offsetHeight
    heightChange = scroll - offset + 2
    return unless heightChange > 0


  render: ->
    <GenericTask question={@props.task.instruction} help={@props.task.help} required={@props.task.required}>
      <label className="answer">
        <textarea autoFocus={@props.autoFocus} className="standard-input full" rows={@state.rows} ref="textInput" value={@props.annotation.value} onKeyDown={@handleReset} onChange={@handleChange} />
      </label>
      {if @props.task.text_tags
        <div className="transcription-metadata-tags">
