mardi 12 avril 2011

Multipage selection buggy on Google Contacts

Copy-and-paste from my writing at Google Help forum.

Summary: if you want to do an operation on contacts scattered on multiple pages, you may run into problems — so move to 250 contacts per page (the maximum).

Say you have 75 contacts. You configured Gmail to have only 50 contacts per page. Consequently, your contacts will be splitted in two pages (1-50 on page 1 and 51-75 on page 2).

Now, you want to export 4 contacts. 3 of them are on page 1, the fourth one is on page 2. You can check the fourth boxes; Google Contacts (or is Chrome? Or is it OS X?) remembers which boxes you checked for every page, which is good… and bad, because it will spread confusion, read further.

The problem arises when you want to export these contacts. Click on export and select “Selected Contacts”. If you were on page 1 when you asked for exportation, the counter will tell you there is 3 contacts to export. If you were on page 2, it will tell you there is 1 contact to export. This is because, even if Google Contacts/Chrome/OS X is able to remember the checked boxes, the script for actually counting the selected contacts is not able to remember.

Unfortunately, this is not just a display bug. It will export the contacts on the page, not the whole selection!

Worse, the same bug happens with group creation. If the contacts you want to select are on different pages, Google Contacts will only add the contacts on the active page into the group. So, if you want to add contacts from different pages to one group, you have to select all contacts on one page, add them to the group, move to the next page and start the process again.

Now, there are two questions here:
- What is responsible for the “remember checked boxes across pages”, interface-level, behaviour? Chrome or OS X (so, unrelated to Google Contacts) or Google Contacts itself? In other words, is this behaviour an artifact or a part of the problem?
- The script-level lack of memory at the across pages has to be fixed.