Contacts/2007

From Openmoko

Jump to: navigation, search
In progress: This article or section documents one or more features whose implementation are in progress.


Contents

Overview

This article defines the Contact Application, an extensible application designed for the OpenMoko platform. The Contacts Application is the central location to store all address-related information. This is a Native Stylus-Based application.

Use Cases

Here are some possible use cases:

  • I want to add a few contacts which I have on paper
  • I want to add a few contacts from my PC
  • I want to call an existing contact
  • I want to correct the details of an existing contact
  • I want to send an existing contact via a Bluetooth connection to a nearby device (Neo or other) via a standard protocol
  • I want to send an existing contact via SMS message
  • I want to have OpenMoko notify me of upcoming events (anniversaries like birthdays, wedding anniversaries) linked to a contact
  • I want to have OpenMoko sync the above anniversaries as part of the contact instead of with calender data

Layout Components

image:Screen_contact.png

Application Area

Application Menu

Item Action Constraints
Group Membership Specify contacts existing within current group Grayed-out when zero custom groups are defined
Group Rename Rename the current group Grayed-out when zero custom groups are defined or active group is not a custom group.
Import Import a single contact from valid vCard data
Export Export a single contact in vCard format Grayed-out when zero contacts exist
Send Send a single contact via bluetooth, SMS, IR, etc. Grayed-out when zero contacts exist, opens submenu with send options (via Bluetooth, via SMS, via IR, etc.)
Help Opens Help Viewer Application with help for this application

Filter Menu

Item Action Constraints
All Displays all contacts
<groups> Displays all contacts from this group
Unknown Displays all contacts and names without a specified group
Search Results Displays all contacts matching current search string

Navigation Area

Displays list of contacts from current Group using the Navigation Widget. Has the following structure:

Item Action Constraints
Column 1 Displays name of contact
Column 2 Displays the first number listed in the contact's details.

Tap selecting a row, will display correspoding contact information in the Details Area.

Toolbar

Search

Search reindexes, after every keypress, the contact membership of the Search Results Group.

Action Buttons

New
Item Action Constraints
New Contact Creates a new contact called No Name Performs no action when pressed repeatedly
New Group Opens Dialog prompting for Group Name
Mode
Item Action Constraints
Mode View Activates View Mode for Details Area
Mode Edit Activates Edit Mode for Details Area
Mode Group Membership Activates Group Membership Mode for Details Area
Mode History Activates History Mode for Details Area
Delete
Item Action Constraints
Delete Contact Opens Dialog prompting for confirmation Grayed-out when zero contacts exist
Delete Group Opens Dialog prompting for confirmation Grayed-out when zero custom groups are defined or active group is not a custom group.

Details Area

A Details List that behaves different in each of the following modes:

View Mode

image:Screen_contact_full.png

  • 1) Icon / Photo -- Photo of contact (if available) will be displayed. Uses the Picture Thumbnail Field widget.
  • 2) Mobile Number -- Mobile Number. Uses the Phone Number Field widget.
  • 3) Home Address -- Home address. Uses the Address Field widget.
  • 4) Birthday -- Birthday. Uses the Event Field widget.
  • 5) Notes -- Notes related to this contact. Uses the Message Body widget.
  • 6) Name -- The contact's name.
  • 7) Company -- The contact's company name.
  • 8) Email -- Email address. Uses the Address Field widget.
  • 9) IM -- IM address. Uses the Address Field widget.

Edit Mode

Upon entering this mode the UI switches to full screen mode:

image:Screen_contact_full_edit.png

  • 1) Remove Field -- This will empty the field contents. Empty fields will disappear in view mode. When there is only a single instance of a field it cannot be removed, so this icon will be hidden.
  • 2) Add Field -- This will duplicate the field. Some fields cannot be duplicated, such as the name or company field.
  • 3) Type Selector -- This will change the field type. The available types are defined by the field widget.
  • 4) Edit Region -- When editting a field's contents the background will visually represent this process.
  • 5) Uncomplete Field Options -- When field options are not completed they will appear in gray.


NOTE: If the name or first number is modified, the Navigation Area will update accordingly.

Group Membership Mode

image:Screen_contact_group_edit.png

  • 1) Membership checkbox -- When checked, the selected contact will be added to this group.
  • 2) Selected Contact -- The current selected contact.
  • 3) Close -- Close Groups Membership Mode (return to regular view)
  • 4) Group List Navigation -- Press Up/Down to cycle through list of groups. Number shows pages of groups.

History Mode

image:Screen_contact_history_mode.png

  • 1) History Entry -- History entries that related to the current selected contact. These are Preview Widgets.
  • 2) Selected Contact -- The current selected contact.

Footer Area

Status Bar

Displays the total number of contacts in the current filter.

Constraints

  • First time entering application defaults to View Mode.

Sessions

  • The current contact selection and Details Area mode is persistant.

Architectural Details

Implementation Recommendations

UI Icons

Download the contact icons: click here

  • Address.png --Address
  • Birthday.png --Birthday
  • Email.png --E-Mail
  • Phone.png --Phone

Download the communication history icons: click here

  • Mail.png --Message Preview
  • In coming call_32x32.png -- Received Call Preview
  • Out going call_32x32.png --Dialed Call Preview
  • Miss call_32x32.png -- Miss call Preview
  • IM_32X32.png -- Sound / Recording Preview

UI position

  • Contacts position

Image:Stylus 01 contact P.png

  • Group Membership Mode

Image:Stylus 05 application dialog p1.png

  • History Mode

Image:Screen contact history mode p1.png

Interactions

  • (See individual widgets for their interactions with other applications.)

Unresolved Issues

  • Do I want to change the field displayed in 2nd column the Navigation Area?
  • Do we want an interface to add many contacts to a single group?
  • Do we want to handle SIM card contacts?

Questions and Answers

(see Talk:Contacts)

Personal tools