When multiple rows on the TableListBox are selected and right click one of them, other rows are de-selected before TableListBoxModel::cellClicked() is called.
I think this is not good behavior when the application need to do the action for selected rows by right click.
How about changing return type of TableListBoxModel::cellClicked() to bool instead of void? If the return value is true, TableListBox won’t change the row selection if the clicked row was selected, etc.