         else
           $el.setSelectionRange(position, position)
       else
-        @setState(value: $el.value)
+        @setState(value: $el.value, visualValue: $el.value)
 
     buildExtractRegexp: (pattern) ->
       matches = @getMatches(@templateRegexp, pattern)

          @setValidationState()

    onKeyDown: (event) ->
      if event.keyCode == 8 or event.keyCode == 46
        event.preventDefault()

        @updateValue(event.target, true)
      else
        @updateValue(event.target, false)

      @runValidation()

    onBlur: (_) ->
      @controlValidationTooltip(true)

      (@state.value or '').search(new RegExp(@props.params.regex)) >= 0

    validationRequired: ->
      !!@props.params.regex or !!@props.params.pattern

    buildVisualAndHiddenValues: (extractValueRegexp, valueParts, pattern, nextVal) ->
      value = @substitute(valueParts, @getSubstitutions(extractValueRegexp, nextVal))
