MeMenu

Revision 3 as of 2009-12-08 17:26:01

Clear message

Designed by MarkShuttleworth, specified in detail by Ivanka Majic and MatthewPaulThomas

There should be a “Me menu” representing you in Ubuntu. It should let you broadcast to social networks such as Twitter and Facebook, set your status for instant messaging, and access settings for instant messaging and microblogging accounts and for Ubuntu One.

Rationale

The Me menu is the first port of call for the user to express their status and their identities to the world.

Use cases

Use Case

Wireframe

Menu items

First use of new install, no messaging app running and no social networks registered.

me-menu-initial.jpg

Avatar/Picture (appears as a default user icon) + Full name for user = link to About Me

Chat Preferences...
Broadcast Preferences...
Ubuntu One...

First use of new install, messaging app running and no social networks registered

me-menu-im-only.jpg

Avatar/Pic (appears as a silhouette) + Full name for user = link to About Me

Social network/messaging service icon grid (current messaging service in "connected + status" state, facebook, twitter, identica icons in "not set up status")
Custom Status text box (Active)
Online (Active)
Away (Active)
Busy (Active)
Hidden (Active)
Offline (Active)

My Accounts (Social network & messaging)
Ubuntu One…

Messaging app running, social networks registered and completed About Me

me-menu-full.jpg

User selected Avatar/Pic + Full username = link to About Me

Social network/messaging service icon grid (current messaging service and any social network services in "connected + status")
Custom Status text box (Active)
Online (Active)
Away (Active)
Busy (Active)
Hidden (Active)
Offline (Active)

My Accounts (Social network & messaging)

Ubuntu One…

The menu itself

Unless otherwise specified, activating any menu item should close the menu before carrying out its function.

Title

The title of the menu should be an icon representing your current instant messaging status, followed by your login name. If you have no instant messaging accounts set up, the icon should be the Offline icon.

Me item

The first item in the menu should consist of data from your Ubuntu account: your account picture on the leading side, and your “Real name” alongside, with 1 em spacing between them. It should behave exactly as a single menu item. Activating the item should open About Me.

The account picture should be scaled, maintaining proportion, to the largest size that will fit in a square how big?. If you have no account picture, a default user account picture should appear instead.

The name should, if necessary, wrap to two lines of text. If it would take up more than two lines, the second line should end with an ellipsis.

Service and account items

The service and account items represent your broadcast accounts and instant messaging accounts that Ubuntu knows about.

If you have no accounts set up, it should consist of three disabled items: one with the Facebook icon, with the Identi.ca icon, and one with the Twitter icon.

If you do have accounts set up, there should be one toggle item for each account you have set up. For this specification, an item in the on status is referred to as “checked”, and an item in the off state as “unchecked”.

Broadcast field

The broadcast field should be present if you have at least one broadcast account set up. It should be sensitive whenever at least one broadcast account item is checked. Entering text in the field should post that text to all broadcast accounts whose account items are checked.

Instant messaging statuses

This section is present only if you have set up any instant messaging accounts. It consists of items with icons and labels for “Available”, “Away”, “Busy”, “Hidden”, and “Offline”, and an item with label only for “Custom Status…”. Each item should be sensitive only if at the account item is checked for at least one chat account that supports it. Test case: Check the Facebook item and no other items. “Available” and “Offline” should be sensitive, while the other instant messaging items should not.

Activating any of the items except “Custom Status…” should close the menu and set your instant messaging status for all chat accounts that support that status. Activating “Custom Status…” should open a dialog for setting a custom status. If submitted, the custom status should be set for all chat accounts that support custom statuses.

custom-status.jpg

Settings items

The menu should end with a separator, a “Chat Accounts…” item, a “Broadcast Accounts…” item, and an “Ubuntu One…” item.

The “Chat Accounts…” item should be present only if Empathy is installed. Activating it should open Empathy’s Accounts window, or focus it if it is already open.

The “Broadcast Accounts…” item should be present only if Gwibber is installed. Activating it should open Gwibber’s “Manage Accounts” window, or focus it if it is already open.

The “Ubuntu One…” item should be present only if the Ubuntu One control panel is installed. It should say “Ubuntu One Settings…” instead if you are currently logged in to Ubuntu One. Activating it should open that control panel, or focus it if it is already open.

Showing menu items

  1. The social services grid has a set number of icon slots and rows are added as needed.
  2. Custom text should show last successfully transmitted entry
  3. If a user clears the custom text entry then the last successfully transmitted entry will show.

Social Networks service grid

Each toggle button needs to have the following statuses:

  • Not set up showing a default icon (e.g. facebook, identica, yahoo chat), hinting at potential use
    1. <service>_service_unconfigured

  • Connected and not selected e.g. The Facebook service is connected but not selected so no interaction in the menu will affect the status of this service
    1. <service>_online_nosend

    2. <service>_away_nosend

    3. <service>_busy_nosend

    4. <service>_hidden_nosend

  • Connected and selected: i.e. any change to status or entering text will affect this service
    1. <service>_online_send

    2. <service>_away_send

    3. <service>_busy_send

    4. <service>_hidden_send

  • Offline
    1. <service>_offline

My Accounts

For Lucid:

  • Gwibber: Twitter, Facebook, Identica
  • Empathy: msn, Google Talk, Yahoo Chat

User options: Chat preferences, Broadcast preferences

Lucid + 1

  • Unified accounts?

Custom status textbox

The Custom Status text box contains: text entry field, submit is only by hitting enter. The content of the field is persistent. A "clear field" icon is included.

Changes to About Me

about-me.jpg

Handling upgrades

Visual designs needed

  • Show first item highlighted
  • Social services grid empty state

Risks

  • Facebook Chat does not have a “Hidden” status, so including it in a global IM status menu may mislead people about whether they are actually hidden. See also http://www.szetopia.com/im-presence

Future work

  • Broadcast what I am listening to as a status
  • Review all messaging apps
  • Does the Social Networks service need an alternative list view to support accessibility?

Unresolved issues

  • Social network/messaging service icon grid - clicking on these icons does not close the menu: can we give users an 'out'?
  • Should user be able to choose whether or not any name is shown in the panel?
  • Keyboard navigation?
  • What if service has no icon?
  • Do we need to show a count for the 140 character limit?
  • What if someone uninstalls Gwibber?
  • Where does the default set come from?
  • How do we show that a text status is being sent? (a spinner is not visible if the menu is immediately removed; maybe a notification?)
  • Can we try to make the text entry field show the the text on the currently selected service (or services, if they're the same, or 'multiple' if there is different text set for each service)
  • Can we try to make the status selection list show the status of the currently selected service?
  • If multiple services are selected, can we do the semi-highlighted selections for both services?

irc.canonical.com, irc.freenode.com - what do we use for icons?

  • Relationship between Messaging Menu and Me Menu.
  • During multi-selection can we show only the inputs appropriate to all selected services

e.g: if twitter+facebook+anything else, limit statuses to those that make sense to twitter (online and offline to turn notification on/off)

  • Status vs chat
  • Application preferences: configure gwibber, configure skype...
  • what do we use for icons?