final SelectedState selectedState = data.getSelectedState();
final boolean oldSelected = selectedState.isSelected(path);
final boolean newSelected = selectedIndices.contains(rowIndex);
if (newSelected != oldSelected) {
if (newSelected) {
selectedState.select(path);
} else {
selectedState.unselect(path);
}
}