Incidentally, TinyMCE seems to do this as well.
Though in our case, we're actually proxying through to the browser for this handling (all of the list insertion/removal). As such, there aren't really any feasible changes that could be made (as it would generally require writing an entire implementation of the behavior).