SystemSettings

Differences between revisions 1 and 78 (spanning 77 versions)
Revision 1 as of 2013-03-14 18:56:15
Size: 1934
Editor: mpt
Comment: initial overview
Revision 78 as of 2015-11-08 22:35:10
Size: 8664
Editor: mpt
Comment: - "Tablet" (mostly same categories as phone); + "General behavior and navigation"
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
''MatthewPaulThomas, Canonical Design'' ''[[MatthewPaulThomas|Matthew Paul Thomas]], Canonical Design''
Line 3: Line 3:
Ubuntu contains System Settings on PC (`gnome-control-center`), based on [[https://live.gnome.org/SystemSettings|my original design in 2008]]. It will soon include some form of system settings interface on phone and tablet. Ubuntu contains System Settings on PC (`gnome-control-center`), based on my original design from 2008, and on phone and tablet. (For a summary of the design process on phone, see [[http://design.canonical.com/2013/05/phone-settings/|my 2013 article on the subject]].)
Line 5: Line 5:
In line with the goal of [[http://www.ubuntu.com/devices/phone/operators-and-oems|a convergence device]] — not to mention, ordinary learnability and efficiency — these settings will be shared across form factors whenever practical. However, some settings will only ever make sense on one or two form factors. == Categories and panels ==
Line 7: Line 7:
This is an incomplete index of Ubuntu designs for System Settings — some of them implemented, some not. It includes other things, such as version information, that for want of a better position, are presented inside the System Settings UI in at least one form factor. In line with the goal of [[http://www.ubuntu.com/phone/operators-and-oems|a convergence device]] — not to mention, ordinary learnability and efficiency — these settings, and their categories, should be shared across form factors whenever practical. However, some settings should be present only when relevant hardware or software is, or could be, present; and some should be grouped or named differently depending on their frequency of use.
Line 9: Line 9:
||'''PC'''||'''Phone'''||
||[[https://docs.google.com/a/canonical.com/document/d/1aHvJ-iIw-59bXTYBmIhQqEx0za2h9jpFE_RhZ2VOvJc/edit?authkey=CJO5wPkH&hl=en_GB|Display]]||''TBD''||
||[[Power#settings|Power]]||''TBD''||
||[[Networking#settings-window|Network]]||''TBD''||
||[[TimeAndDate#settings|Time & Date]]||''TBD''||
||'''PC'''||'''Phone/Tablet'''||
||[[AboutThisDevice#PC|About This Computer]]||[[AboutThisDevice#Phone_and_tablet|About This Device]], including [[AboutThisDevice#phone-storage|Storage]] and [[AboutThisDevice#developer-mode|Developer Mode]]||
||[[https://docs.google.com/a/canonical.com/document/d/1ILTJDiDCd25Npt2AmgzF8aOnZZECxTfM0hvsbWT2BxA/edit#|Universal Access]]||Accessibility||
||[[Appearance#PC|Appearance]]||[[Appearance#Phone_and_tablet|Background]]||
||[[Bluetooth]]||[[Bluetooth#phone|Bluetooth]]||
||[[BrightnessAndDisplays#Displays|Displays]]||[[Brightness#Phone|Brightness]]||
||[[Power#PC|Power]]||[[Power#Phone|Battery]]||
||[[Keyboard]]||—||
||[[LanguageAndText|Language & Text]]||[[LanguageAndText#phone|Language & Text]]||
||[[MouseAndTouchpad|Mouse & Touchpad]]||[[MouseAndTouchpad|Mouse & Touchpad]]||
||[[Networking#settings-window|Network]]||[[Networking#flight-mode-phone|Flight Mode]], [[Networking#phone-cellular|Cellular]], [[Networking#phone-wifi|Wi-Fi]]||
Line 15: Line 21:
||[[SoftwareAndUpdatesSettings|Software & Updates]]||''TBD''||
||[[Printing#settings|Printing]]||''TBD''||
||[[SecurityPrivacySettings|Security & Privacy]], including [[ErrorTracker#settings|Diagnostics]]||''TBD''||
||[[https://docs.google.com/a/canonical.com/document/d/1Vb1jUVLoHXBK9drley6Vd5bYGguBbCTEWVcZz7R-LFI/edit?authkey=CNmT_aoF|Sound]]||''TBD''||
||[[https://docs.google.com/a/canonical.com/document/d/1UwAQTXgEyZSD3di6fAUS0W18rKxh8TXb1TwsmkgbGG0/edit|Online Accounts]]||[[OnlineAccounts#phone-settings|Accounts]]||
|| - ||[[Notification|Notifications]]||
|| - ||[[PhoneApp#Settings|Phone]], including SIM services||
||[[Printing#settings|Printing]]|| - ||
||[[SecurityAndPrivacySettings#PC|Security & Privacy]]||[[SecurityAndPrivacySettings#Phone|Security & Privacy]], including [[Location#Phone|Location]]||
||[[SoftwareAndUpdatesSettings|Software & Updates]]||[[SoftwareUpdates#Phone|Updates]]||
||[[https://docs.google.com/a/canonical.com/document/d/1Vb1jUVLoHXBK9drley6Vd5bYGguBbCTEWVcZz7R-LFI/edit?authkey=CNmT_aoF|Sound]]||[[Sound#Phone|Sound]]||
Line 20: Line 29:
||[[TextEntry#settings|Text Entry]]|| ||[[TimeAndDate#PC|Time & Date]]||[[TimeAndDate#Phone_and_tablet|Time & Date]]||
Line 22: Line 31:
||[[https://docs.google.com/a/canonical.com/document/d/1ILTJDiDCd25Npt2AmgzF8aOnZZECxTfM0hvsbWT2BxA/edit#|Universal Access]]||''TBD''||
||[[UserAccounts|User Accounts]]||''TBD''||
||[[UserAccounts|User Accounts]]|| - ||

This index does not yet include all settings panels included on the PC. It does include other things — such as version information — that, for want of better placement, are presented inside the System Settings UI in some situations.

<<TableOfContents()>>

<<Anchor(navigation-feedback)>>
== General behavior and navigation ==

The '''“System Settings” app''' should be unremovable, and should be in the Launcher by default.

Unless specifically noted, all interface elements in System Settings should update live to reflect settings whenever they are changed elsewhere.

The appearance of the '''navigation controls''' should depend on the width of the surface:
 * If narrower than 100 grid units, it should be only a Back button.
 * If 100 grid units or wider, it should take advantage of that space by adding Forward and “All Settings” buttons.

Regardless, the behavior of the '''Back button''' should be:
 * If you came to the current screen from its parent screen, it should return to that parent screen.
 * Otherwise, if you came to the current screen any other way (for example from a “deep link” in a different app), it should navigate to the screen you were most recently on.
 * If neither is true, the button should be disabled.

The '''Forward button''' should return to the most recent screen, if any, that you came Back from and have not since gone Forward to. Whenever there is no such screen, the button should be disabled.

The appearance of the '''search function''' should depend on the width of the surface:
 * If narrower than 100 grid units, it should be a button in the header, which enters [[https://design.ubuntu.com/apps/building-blocks/header#modes|search mode]].
 * If 100 grid units or wider, it should take advantage of that space by having a non-modal search field always present.

Either way, whenever the '''search field''' is not empty, the rest of the System Settings main screen should consist only of those items matching the contents of the field. For example, if the search field contains “wallpa”, only the “Backgrounds” panel should remain. The search field should empty itself if you had switched to other apps for at least five minutes (because you have likely forgotten that you searched for anything).

Any word in the '''search string''' that is followed by a space or punctuation should be treated as a a complete word, while any word that is not should be treated as if it might be either a complete word or the beginning of a word (bug Bug:1446086). (This is [[SoftwareCenter#Interpreting_search_text|the behavior devised for Ubuntu Software Center]].)

=== Navigation feedback ===

(bug Bug:1488005)

{{attachment:navigation-feedback.png}}

At every level of System Settings, all page stack items — whether standard list items, or the grid items on the main screen — should have the same feedback for maximum responsiveness:
 1. If you navigate directly by choosing an item, that item should highlight until the screen is loaded or two seconds have elapsed, whichever is greater.
 1. If the screen has not loaded within two seconds, a placeholder screen should appear with an empty header and an optically centered spinner.
 1. If the actual screen still has not loaded after another two seconds, following standard toolkit behavior, the spinner should actually appear.

<<Anchor(phone)>>
== Main screen ==

||<tablestyle="float:left;margin:0 1em 1em 0" style="border:none">{{attachment:system-settings-main.phone.png}}||

||<tablestyle="float:left;margin:0 1em 1em 0" style="border:none">{{attachment:system-settings-main.pc.png}}||

Regardless of screen size or mode, the main screen layout should show a grid of panel names separated by category labels.

<<Anchor(phone-quick-access)>><<Anchor(phone-flight-mode)>>
=== Quick access area ===

The '''quick access area''' is a group of list items at the top of the overview screen. It will be phased out if/when indicators are greatly simplified. In the meantime, it should contain items for:
 * “[[StatusBar#rotation-lock|Rotation Lock]]”, if the device has an orientation sensor
 * “[[Networking#flight-mode-phone|Flight Mode]]”, if the device does not have a mouse connected (in which case choosing Flight Mode from the network indicator is much easier).

Following those, it may also contain other items, in order:
 * “[[SoftwareUpdates#Prompting|Updates available]]”, if the entire UI is not visible (otherwise it is redundant with the “Updates” category).

All other items in the main screen should act as [[http://design.ubuntu.com/apps/building-blocks/page-stack|page stacks]], regardless of whether they are list items (like “About This Phone”) or grid items (like “Sound”).

||<tablestyle="clear:both" style="border:none">||

<<Anchor(reset)>><<Anchor(phone-reset)>>
=== “Reset Phone” ===

||<tablestyle="float:left;margin:0 1em 1em 0" style="border:none">{{attachment:reset.phone.png}}||

The “Reset Phone” screen should begin with the text: “If you reset the phone, all files, saved games, settings, and other items will be deleted permanently.”

If you use any [[SecurityAndPrivacySettings#Phone|phone locking]] scheme, choosing “Erase & Reset Everything…” should first prompt you to unlock (bug Bug:1388942).

Regardless, it should then display a confirmation alert (so that someone can’t confirm the reset and then leave the phone on the passcode/password prompt waiting for you to return, not realizing what the prompt is for). The alert should have text “Are you sure you want to reset your phone?”, and “Cancel” and red “Reset” buttons.

After the reset, you should be returned to the phone welcome screen.

||<tablestyle="clear:both" style="border:none">||

Matthew Paul Thomas, Canonical Design

Ubuntu contains System Settings on PC (gnome-control-center), based on my original design from 2008, and on phone and tablet. (For a summary of the design process on phone, see my 2013 article on the subject.)

Categories and panels

In line with the goal of a convergence device — not to mention, ordinary learnability and efficiency — these settings, and their categories, should be shared across form factors whenever practical. However, some settings should be present only when relevant hardware or software is, or could be, present; and some should be grouped or named differently depending on their frequency of use.

This index does not yet include all settings panels included on the PC. It does include other things — such as version information — that, for want of better placement, are presented inside the System Settings UI in some situations.

General behavior and navigation

The “System Settings” app should be unremovable, and should be in the Launcher by default.

Unless specifically noted, all interface elements in System Settings should update live to reflect settings whenever they are changed elsewhere.

The appearance of the navigation controls should depend on the width of the surface:

  • If narrower than 100 grid units, it should be only a Back button.
  • If 100 grid units or wider, it should take advantage of that space by adding Forward and “All Settings” buttons.

Regardless, the behavior of the Back button should be:

  • If you came to the current screen from its parent screen, it should return to that parent screen.
  • Otherwise, if you came to the current screen any other way (for example from a “deep link” in a different app), it should navigate to the screen you were most recently on.
  • If neither is true, the button should be disabled.

The Forward button should return to the most recent screen, if any, that you came Back from and have not since gone Forward to. Whenever there is no such screen, the button should be disabled.

The appearance of the search function should depend on the width of the surface:

  • If narrower than 100 grid units, it should be a button in the header, which enters search mode.

  • If 100 grid units or wider, it should take advantage of that space by having a non-modal search field always present.

Either way, whenever the search field is not empty, the rest of the System Settings main screen should consist only of those items matching the contents of the field. For example, if the search field contains “wallpa”, only the “Backgrounds” panel should remain. The search field should empty itself if you had switched to other apps for at least five minutes (because you have likely forgotten that you searched for anything).

Any word in the search string that is followed by a space or punctuation should be treated as a a complete word, while any word that is not should be treated as if it might be either a complete word or the beginning of a word (bug 1446086). (This is the behavior devised for Ubuntu Software Center.)

(bug 1488005)

At every level of System Settings, all page stack items — whether standard list items, or the grid items on the main screen — should have the same feedback for maximum responsiveness:

  1. If you navigate directly by choosing an item, that item should highlight until the screen is loaded or two seconds have elapsed, whichever is greater.
  2. If the screen has not loaded within two seconds, a placeholder screen should appear with an empty header and an optically centered spinner.
  3. If the actual screen still has not loaded after another two seconds, following standard toolkit behavior, the spinner should actually appear.

Main screen

system-settings-main.phone.png

system-settings-main.pc.png

Regardless of screen size or mode, the main screen layout should show a grid of panel names separated by category labels.

Quick access area

The quick access area is a group of list items at the top of the overview screen. It will be phased out if/when indicators are greatly simplified. In the meantime, it should contain items for:

  • Rotation Lock”, if the device has an orientation sensor

  • Flight Mode”, if the device does not have a mouse connected (in which case choosing Flight Mode from the network indicator is much easier).

Following those, it may also contain other items, in order:

  • Updates available”, if the entire UI is not visible (otherwise it is redundant with the “Updates” category).

All other items in the main screen should act as page stacks, regardless of whether they are list items (like “About This Phone”) or grid items (like “Sound”).

“Reset Phone”

reset.phone.png

The “Reset Phone” screen should begin with the text: “If you reset the phone, all files, saved games, settings, and other items will be deleted permanently.”

If you use any phone locking scheme, choosing “Erase & Reset Everything…” should first prompt you to unlock (bug 1388942).

Regardless, it should then display a confirmation alert (so that someone can’t confirm the reset and then leave the phone on the passcode/password prompt waiting for you to return, not realizing what the prompt is for). The alert should have text “Are you sure you want to reset your phone?”, and “Cancel” and red “Reset” buttons.

After the reset, you should be returned to the phone welcome screen.

SystemSettings (last edited 2016-10-18 10:13:02 by mpt)