The `updateRowSelection()` function has to iterate through `rowsOnScreen` to find a match.  The purpose of pushing to the list first is to avoid performing this iteration N times when we have N ids.  I guess since the list based `updateRowSelection()` then has to do an `idList.indexOf()` this might be a wash, though.

Note, though, you can't just pass the current `row` to `updateSingleRowSelection()` because the `id` may have multiple rows on screen if its a favorite.