update tracklist items in-place to avoid unnecessary reflow