         ul.scrollTop -= viewport.top - item.top
 
     search = (q) ->
-      if $scope.prevSearch != q
-        $scope.shownItems = filter(q, $scope.items, $scope.valueAttr).slice(0, $scope.limit)
-        $scope.activeItem = $scope.shownItems[0]
-      $scope.prevSearch = q
+      $scope.shownItems = filter(q, $scope.items, $scope.valueAttr).slice(0, $scope.limit)
+      $scope.activeItem = $scope.shownItems[0]
 
     $scope.selection = (item)->
       $scope.selectedItem = item

comp = (a, b)->
  a.toLowerCase().indexOf(b.toLowerCase()) > -1

filter = (x, xs, valueAttr)->
  if x then xs.filter ((i)-> comp(i[valueAttr], x)) else xs

        when 33 then move(-11)

    $scope.$watch 'search', search
    $scope.$watch 'limit', -> search('')

    $scope.$watch 'active', (value) ->
      window.setTimeout((()-> scrollIfNeeded(getActiveIndex())) , 0) if value
