Correct issue with readding an item after removing it

I have no idea why the complicated _getOptionList call is there. The lists are both created at start up, and a (not)selected item will always be added to the same list for the same selection state.