     'change .ev-entry': 'changeEv'
     'change .select-hidden-power': 'changeHiddenPower'
     'keyup .selected_moves input': 'keyupMoves'
-    'focus .selected_moves input': 'keyupMoves'
-    'click .table-moves tbody tr': 'selectMove'
-    'click .move-button': 'deselectMove'
+    'blur .selected_moves input': 'blurMoves'
+    'click .table-moves tbody tr': 'clickMoveName'
+    'click .move-button': 'clickSelectedMove'
 
   initialize: =>
     # TODO: Save these to something more global

        movesArray.push(moveName)
    @getSelectedPokemon().set("moves", movesArray)

  deselectMove: (e) =>
    $this = $(e.currentTarget)
    $input = $("<input type='text' value='#{$this.text()}'/>")
    $this.replaceWith($input)
    $input.focus()

  buttonify: ($input, moveName) =>
    return  if moveName not of MoveData
    type = MoveData[moveName].type.toLowerCase()
    $input.replaceWith("""<div class="button move-button #{type}">#{moveName}</div>""")

  setSelectedIndex: (index) =>
    pokemon = @collection.at(index)

          $nextMove.addClass('active')
      else
        # Otherwise we're filtering moves
        moveName = $input.val()
        @filterMovesBy(moveName)

  filterMovesBy: (moveName) =>
