SessionMenu

Differences between revisions 3 and 4
Revision 3 as of 2010-02-01 20:32:06
Size: 5508
Editor: unassigned
Comment: handles desktop/gnome/lockdown/disable_lock_screen
Revision 4 as of 2010-02-01 20:42:54
Size: 5670
Editor: unassigned
Comment: handles desktop/gnome/lockdown/disable_user_switching
Deletions are marked like this. Additions are marked like this.
Line 30: Line 30:
 1. An item for locking the screen and/or starting the screensaver. If the “desktop/gnome/lockdown/disable_lock_screen” `gconf` key is true, or if the Screensaver Preferences setting “Lock screen when the screensaver is active” is unchecked, the item should be “Start Screensaver”. Otherwise, it should be “Lock”. (We deliberately do not vary this based on whether the account logs in automatically.)  1. An item for locking the screen and/or starting the screensaver. If the `gconf` key “desktop/gnome/lockdown/disable_lock_screen” is true, or if the Screensaver Preferences setting “Lock screen when the screensaver is active” is unchecked, the item should be “Start Screensaver”. Otherwise, it should be “Lock”. (We deliberately do not vary this based on whether the account logs in automatically.)
Line 36: Line 36:
 1. “Switch From {your account display name}…”, which locks your session and then displays the login screen. If your account name is wider than 20 em, only the first characters up to 20 em should be displayed, with no extra ellipsis added to the one that is already there. If blocked by your system administrator or unsupported by the computer’s video driver, this item should not be present at all.  1. User account switching items, displayed only if (a) the `gconf` key “desktop/gnome/lockdown/disable_user_switching” is not true and (b) account switching is supported by the video driver:
Line 38: Line 38:
 1. Alphabetically sorted items for up to the ''n'' user accounts (6 by default, with a `gconf` key for adjusting it) who were logged in to this system most recently. These items should be present only if (a) the login screen is set to display user accounts, because the same security consideration applies, (b) account switching is supported by the video driver, and (c) account switching is allowed by the system administrator. (Except in the last case, you can still switch to any account, provided you know its name, using the “Switch From…” item.)   a. “Switch From {your account display name}…”, which locks your session and then displays the login screen. If your account name is wider than 20 em, only the first characters up to 20 em should be displayed, with no extra ellipsis added to the one that is already there.
Line 40: Line 40:
 Each item should consist of:
  1. At its leading end, the user account icon.
  2. The account display name, ellipsized in the middle if it is wider than 20 em. (Ideally we would use [[https://bugzilla.gnome.org/show_bug.cgi?id=549729|set-based ellipsis]] instead.)
  3. At the trailing side of the menu, a logged-in symbol if that account is currently logged in. (For the same reason as for a guest session, we must not use a normal checkmark item here.)
  a. Alphabetically sorted items for up to the ''n'' user accounts (6 by default, with a `gconf` key for adjusting it) who were logged in to this system most recently. These items should be present only if the login screen is set to display user accounts, because the same security consideration applies. (Except in the last case, you can still switch to any account, provided you know its name, using the “Switch From…” item.)

 
Each item should consist of:
   1. At its leading end, the user account icon.
  2. The account display name, ellipsized in the middle if it is wider than 20 em. (Ideally we would use [[https://bugzilla.gnome.org/show_bug.cgi?id=549729|set-based ellipsis]] instead.) If there happen to be at least two accounts in the recent set with the same real name, each of those should be followed by a space and then the login name in brackets, ''e.g.'' “Robert Smith (robertjsmith)”.
  3. At the trailing side of the menu, a logged-in symbol if that account is currently logged in. (For the same reason as for a guest session, we must not use a normal checkmark item here.)

For Ubuntu Lucid, the session menu should contain items for locking the session, switching to guest sessions and other user accounts, logging out, sleeping, restarting, and shutting down.

Rationale

The session menu is for when you want to stop using the computer, either temporarily or indefinitely.

The menu’s most prominent items aim for convenient security: locking the session, using a guest session, switching user accounts, and logging out.

The less prominent items are fallbacks for functions that generally have a more visible interface on most computers: Suspend/Hibernate (vs. closing a notebook’s lid), Restart (vs. being prompted when it is actually required), and Shut Down (vs. pressing the power button).

Artwork requirements

  • The power icon for the menu title.
  • A classy-looking symbol for logged-in user accounts (visually distinct from the normal checkmark for boolean menu items).

Design

session-menu.jpg

Title

The title of the menu should be a power icon. title.jpg

Contents

For the purpose of displaying in the session menu, an account display name consists of the full name (e.g. “Iain Farrell”), unless there is more than one account with that full name, in which case it should be the full name followed by a space and then the login name in brackets (e.g. “Iain Farrell (iain2)”).

The contents of the menu should be, in order:

  1. An item for locking the screen and/or starting the screensaver. If the gconf key “desktop/gnome/lockdown/disable_lock_screen” is true, or if the Screensaver Preferences setting “Lock screen when the screensaver is active” is unchecked, the item should be “Start Screensaver”. Otherwise, it should be “Lock”. (We deliberately do not vary this based on whether the account logs in automatically.)

  2. A separator.
  3. “Guest Session”, which switches immediately to the guest session. If the guest session is already in use, there should be a logged-in symbol at the trailing side of the menu. (We must not use a normal checkmark item for this, because that would wrongly suggest we can “turn off” the session merely by deselecting the item.) This item should always be present, but if the session you are using is already a guest one, it should be insensitive. (It is not a security risk for the item to always to be present, because you need to log in to another account before accessing it.)
  4. User account switching items, displayed only if (a) the gconf key “desktop/gnome/lockdown/disable_user_switching” is not true and (b) account switching is supported by the video driver:

    1. “Switch From {your account display name}…”, which locks your session and then displays the login screen. If your account name is wider than 20 em, only the first characters up to 20 em should be displayed, with no extra ellipsis added to the one that is already there.
    2. Alphabetically sorted items for up to the n user accounts (6 by default, with a gconf key for adjusting it) who were logged in to this system most recently. These items should be present only if the login screen is set to display user accounts, because the same security consideration applies. (Except in the last case, you can still switch to any account, provided you know its name, using the “Switch From…” item.) Each item should consist of:

      1. At its leading end, the user account icon.
      2. The account display name, ellipsized in the middle if it is wider than 20 em. (Ideally we would use set-based ellipsis instead.) If there happen to be at least two accounts in the recent set with the same real name, each of those should be followed by a space and then the login name in brackets, e.g. “Robert Smith (robertjsmith)”.

      3. At the trailing side of the menu, a logged-in symbol if that account is currently logged in. (For the same reason as for a guest session, we must not use a normal checkmark item here.)
  5. A separator.
  6. “Log Out…”, which opens the confirmation alert for logging out.
  7. “Suspend”, which suspends the computer to memory.
  8. “Hibernate”, which suspends the computer to disk.
  9. “Restart…”, which opens the confirmation alert for restarting the computer. If software updates that require a restart have been partially installed, this item should instead say “Restart Required…”, and have a Warning /!\ icon alongside it.

  10. “Shut Down…”, which opens the confirmation alert for shutting down.

Fading of background

When the confirmation alert for logging out, restarting, or shutting down is open, the rest of the screen should linearly take 1 second to desaturate completely.

If you click “Cancel”, or if any application interrupts session exit, the desaturation should reverse instantly.

Behavior if you confirm the logout/restart/shutdown is covered by DesktopTeam/Specs/Lucid/ShutdownAndRestartExperience.

Handling upgrades

When first running gnome-panel in a version of Ubuntu that includes the session menu, the top panel (if any) should automatically acquire the session menu at its trailing end.

Future work

  • Investigate visual treatments for highlighting menu items in general, so that perhaps the “Restart…” item (and the menu title) could be highlighted when updates require a restart to complete.

Unresolved issues

  • Ctrl Alt L is the keyboard equivalent for Lock. This should be shown in the menu.

SessionMenu (last edited 2013-12-19 13:22:44 by mpt)