autocomplete: clear active item after selection

After an item is chosen, we should clear the selected item in the list view. The implementation is a little weird. I noticed that code was pretty old that I was editing :). This fixes a bug where the same item will be selected multiple times when it shouldn't be.
If you have two different copies of the very same object then `is` operator returns false and comparing argument of the function against list data misses the item you want to be processed.

This is what we have experienced with removing an item from list view. Data was fetched from two different sources. Identical two objects stored in different places in the memory. `is` operator was returning `false`. So, implementation improved to take data path into account if it's provided to compare identity of the argument and item in the list.

This is the case I wanted to be covered.