MailNews:Address Book New Card Inline

From MozillaWiki
Jump to: navigation, search

This page is for describing a smaller and more lightweight way of adding and editing address book cards than the MailNews:Address Book New Card dialog will be.

Inline means that you can add a new address to your address book inline to whatever you're doing inside thunderbird. The dialog is not modal and looks more like the new Firefox bookmark dialog.

Actions

Save Email / Name for New Contact

When an email address is unknown to Thunderbird we show the entire name and email aaddress and place an empty star besides the address. Inspired from the Firefox bookmarking system, this star indicates that the address isn't saved. When the star is clicked it fills in with a gold color. The contacts name is saved along with the email as best as Thunderbird can determine the formats.

Unstarred email address.

Bryan Clark <clarkbw@example.com> (%)

Starred email address has been saved as a contact. There isn't a refresh of the name so the position of the star won't change.

Bryan Clark <clarkbw@example.com> (*)


Edit Contact

A contact who is already in a person's address book will have a filled in yellow star showing. When this star is clicked the inline contact dialog appears showing the options for editing.

Inline Edit Dialog with these options:

  • Edit Name
  • Edit Email
  • Cancel
  • Save
  • Full Edit Dialog
Bryan Clark *^*
             +------------------------------------------+
             | *^* Edit Contact                         |
             |                                          |
             | Name:    [ Bryan Clark                 ] |
             | Email:   [ clarkbw@example.com         ] |
             |                                          |
             | {Edit Details}     ( Cancel )  ( Done )  |
             +------------------------------------------+

A delete contact action may make sense at this point, however initially we can defer that action to the full contact editor available via Edit Details.


Add Email to Existing Contact

When a person emails you from an email address that is not in the system, however they have a name that matches what is in the system we need to offer the ability to append data to an existing contact.

With some kind of indication of a partial match, like a 1/2 star showing we can indicate that Thunderbird has located a match for the listed person's name, but not for their email. Clicking on that star opens an inline dialog for editing the existing person or creating a new person.

Inline dialog

Bryan Clark */*  <-- half star?  some indication that this is a new email address with a name matching a contact
             +------------------------------------------+
             | *^* Add to Contact                       |
             |                                          |
             | Contact: [ Bryan Clark               |v] |  <-- auto-complete + drop down list?
             |            clarkbw@example.com           |
             |                                          |
             | [Email |v]:[ bryan@example.com         ] |
             |                                          |
             | {Edit Details}     ( Cancel )  ( Done )  |
             +------------------------------------------+

Bryan Clark */*
             +------------------------------------------+
             | *^* Add to Contact                       |
             |                                          |
             | Contact: [+-------------------------+|v] |  <-- auto-complete + drop down list?
             |           | Bryan Clark             |    |
             |           | Brian Clarke            |    |
             |           |-------------------------|    |
             |           | New Contact ...         |    |
             |           +-------------------------+    |
             |                                          |
             | [Email |v]:[ bryan@example.com         ] |
             |                                          |
             | {Edit Details}     ( Cancel )  ( Done )  |
             +------------------------------------------+

Bryan Clark */*
             +------------------------------------------+
             | *^* Add to Contact                       |
             |                                          |
             | Contact: [ Bryan Kralc               |v] |  <-- auto-complete + drop down list?
             |            /new contact/                 |
             |                                          |
             | [Email |v]:[ bryan@example.com         ] |
             |                                          |
             | {Edit Details}     ( Cancel )  ( Done )  |
             +------------------------------------------+