If you select all items in a ListView that allows multiple selection, there is not way to deselect using the keyboard. One would expect that releasing shift and moving the arrows would revert to selecting a single element, but this is not the case. The supplied patch allows deselection in the following manner:
1. If you select all elements with the keyboard "downwards", release shift and then press Keyboard.KeyCode.UP, the "next last" element in the list is selected.
2. If you select all elements with the keyboard "upwards", release shift and then press Keyboard.KeyCode.DOWN, the "next first" element in the list is selected.
I tried to take enabled state into account when finding the approproate element to select, so the patch may be more involved than nessecary.
I tested against ScriptApplication -