`selectAllPending` is used for the state where we press in select all button but the list is still not loaded.

That will make any new contact added while the list is still being loaded to be marked as selected.

In the case 2), I realised that we will need to add another flag to control when we clicked, cause the `selectedAllPending` won't have any effect since the list is already loaded. A weird situation but can happen.

Case 3) is the same than case.

So basically we will need another flag to control that we selected all contacts and the list was saved. In this case we have that flag already, that is the 'Select All' button, which will be disabled if we checked this.

Oh boy, more corner cases :)