UserAccounts

Revision 18 as of 2016-03-10 15:21:40

Clear message

This is an incomplete design for how user accounts should be presented in Ubuntu.

Settings

user-accounts-access.png

System Settings “System” section should include a “User Accounts” item. When these settings are implemented, the previous “Accounts” panel should be distinguished by being renamed to “Internet Accounts” with an obviously distinct icon (bug 1289401).

UI structure

Whenever the window width is less than 90 GU (“narrow”), “My account” and each of the “Other accounts” should be page stack items. Whenever the window is at least 90 GU (“wide”), to reduce modality, the accounts should instead be in a listbox alongside the settings for the selected account.

user-accounts.narrow.png

name-and-passcode.wide.png

If the screen changes from wide to narrow, which screen becomes shown should depend on what is focused:

  • If any of the controls for configuring an individual account is focused, the screen containing the equivalent control should be shown.
  • Otherwise, the top-level “User accounts” screen should be shown.

Conversely, if the screen changes from narrow to wide, the appropriate tab should be shown such that the focused control remains visible.

Account and group list

TBD

Configuring an individual account

user-account.narrow.png

name-and-passcode.wide.png

On a wide screen, the controls for the selected account should be split across four tabs: “Name & Passcode”, “Security”, “Permissions”, and (when implemented) “Open at Login”.

On a narrow screen, to reduce navigation, the elements on the “Name & Passcode” tabs should be on an account’s top-level screen instead (since they are the settings you’re most likely to want to change). The other tabs, and “History”, should be page stack items instead.

“Name & Passcode”

TBD

“Security”

security.png

If your own account is selected, the heading for the first column in the “Security” tab should be “To identify me, I can use any of:”, and for the second column “To authenticate me, require all of:”. Otherwise, the headings should be “This account can identify with any of:” and “Authenticating requires all of:” respectively.

The various options for identification and authentication may be implemented in any order. When they are implemented, they should appear only when hardware is present that can use them.

Options may be insensitive, in checked or unchecked state, as defined by an administrator. In addition, whenever an identification option is checked, the equivalent authentication option should be unchecked and insensitive, and vice versa, because you can’t use the same option for both.

If an option is currently unregistered (for example, if you have not registered your fingerprints), checking either checkbox for that option should act as if you also clicked the relevant “Register” button.

Fingerprints

For comparison: Fingerprint GUI, Fingerprint authentication in Fedora, Microsoft Fingerprint Reader, Lenovo ThinkVantage, Authentec TrueSuite

Choosing “Register Fingerprints…” should open a “Register Fingerprints” dialog.

If the reader reports a percentage complete, the gauge should reflect that percentage. Otherwise, if the reader reports an exact numbers of swipes required for registration, the gauge should move to the appropriate fraction with each swipe. Otherwise, it should move asymptotically — to 1/2 with the first swipe, 2/3 with the second, 3/4 with the third, etc — until registration is complete.

Smart card

Choosing “Register Smart Card…” should open a “Register Smart Card” dialog.

smart-card-1.png smart-card-2.png

Before the smart card has been read successfully, “Register” should be insensitive, and the “Scanning…” graphic should animate slowly just like its equivalent in the PolicyKit prompt. After the smart card has been read, the graphic should change to the “Scanned” checkmark, and “Register” should become sensitive.

“Permissions”

permissions.wide.png

In the “Permissions” tab, the “Account type:” menu should contain items for “Standard” and “Administrator”. Whenever the selected account’s access privileges do not match either of those two types, the menu should also contain a selected “Custom” item until you exit the tab/screen.

The “This account:” list should contain checkbox items for all the configurable privileges.

Whenever “Has mandatory Launcher items” is checked, the “Choose…” button at its trailing end should be sensitive. Choosing it should open a dialog containing a desktop, including a non-auto-hide Launcher containing only the current mandatory items.

mandatory-launcher-items.png

“Launching” an application inside this dialog should not actually launch it, but should add it to the Launcher as a mandatory item. Each configurable Launcher item should have a Delete button overlaid in its top right corner as a badge, with accessible label “Remove From Mandatory Items”. Choosing “Revert” should return the Launcher to the state when the dialog was opened, without closing the dialog. “Change” should be sensitive only when the current state is different from when the dialog was opened.

Back in the “This account:” list, whenever “Has mandatory Launcher items” is unchecked, the indented “Can add other Launcher items” item should be both insensitive and checked.

See also SecurityPermissions.

“Open at Login”

Originally proposed on the Gnome wiki in 2012.

open-at-login.png

The final tab for any user account, including the guest account, should be “Open at Login”. (Other names that were considered: “Login Items”, “Start at Login”, and “Launch at Login”. “Open” best covers both apps and documents.)

The tab should begin with an explanatory sentence: “Apps, bookmarks, and other files can be opened automatically each time this account logs in.”.

This should be followed by a listbox with two columns, “Open” and “Name”. The list should be empty for a new user account, and if it is not empty no item should be selected by default. If an item is in the list, and its “Open” checkbox is checked, it should open at every future login until either of those things changes.

Below the listbox should be three buttons: an Add menubutton (keyboard equivalent “+”), a Remove button (“-”), and a Change button (Enter).

Choosing “Add Application…” from the Add menu should open an “Add Application” application picker. (This should be the same dialog as used for any file manager’s “Open With Other Application…” command.)

Choosing “Add File…” should open an “Add File” file picker, defaulting to the previous folder if it exists, or the home folder if not.

Choosing “Add Custom Command…” should open an “Add Custom Command” dialog. The “Command:” field in the dialog should auto-complete pathnames. The file button should open a file picker that replaces the current field contents. “Add” should be disabled whenever the field is empty.

add-command.png

The Remove and Change buttons should be enabled whenever an item is selected. Activating the Remove button should remove that item. Choosing Change button should open the relevant dialog for the type of item — a “Change Application” application picker, a “Change File” file picker, or a “Change Custom Command” dialog — with the current value pre-selected or pre-filled.

Dragging an application, bookmark, or file from any other app into the listbox should add it to the list. Dragging any item out of the list should remove it.

Future enhancement: For apps, have an extra checkbox for whether they should open minimized. [idea from “tommy”]

Future enhancement: When adding an item as an administrator to someone else’s account, have a checkbox for whether that person can remove it. [idea from “tommy”]

Future enhancement: Automatically stagger launches to avoid disk contention. [idea from Evan Huus]

Configuring the guest account

The UI for configuring a guest account should be the same as for any other account, with the following exceptions.

TBD

Adding an account

Removing an account

The remove account function should be enabled if you are authenticated as an administrator, and the Guest account is not selected.

If you select the only remaining administrator account, the remove account function should not be disabled, because the reason would not be obvious. Instead, if you choose it, a confirmation alert should appear: ‘“{login name}” is the only administrator account. You must create a new administrator account before removing this one.” It should have “Cancel” and “Create Admin Account…” buttons, where “Create Admin Account…” switches to the “Add Account” UI with “Account type:” preset to “Administrator”.

Otherwise, if you choose to remove your own account, a confirmation alert should appear: “Deleting your own account will log you out immediately.” It should have “Cancel” and “Delete Anyway” buttons, where “Cancel” is the default.

Logging in

See also “User Selector and Welcome Screen (tbc)

Locking the session

Logging out

Switching accounts

Seeing who else is logged in

Restarting or shutting down when others are logged in